117.info
人生若只如初见

shell如何判断sftp上传是否成功

在Shell中,可以使用变量$?来判断上一个命令的执行结果。如果命令执行成功,则$?的值为0;如果命令执行失败,则$?的值为非零值。

根据这个特性,可以使用以下方法判断sftp上传是否成功:

  1. 使用sftp命令上传文件,并将上传结果保存到一个临时文件中:

    sftp user@host:/path/to/destination localfile > upload.log 2>&1
    

    这里将sftp命令的输出重定向到upload.log文件中。

  2. 检查upload.log文件的内容,如果文件中包含类似"Successfully uploaded"的关键字,则表示上传成功;否则表示上传失败。

    if grep -q "Successfully uploaded" upload.log; then
        echo "Upload successful"
    else
        echo "Upload failed"
    fi
    

    这里使用grep命令来搜索upload.log文件中是否包含"Successfully uploaded"关键字,并通过if语句判断上传结果。

注意:这种方法只是判断sftp命令的执行结果,而不一定表示文件上传成功。可能存在网络中断、权限问题等导致上传失败但命令仍然执行成功的情况。如果需要更可靠的判断文件是否上传成功,可以考虑使用其他方法,如检查目标服务器上文件的存在与大小。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe254AzsLAg9QBlA.html

推荐文章

  • shell怎么获取二级目录

    要在Shell中获取一个二级目录,可以使用cd命令进入一级目录,然后使用相对路径进入二级目录。
    例如,假设你当前的工作目录是/home/user,想要进入/home/use...

  • shell怎么获取当前目录的绝对路径

    在shell中,可以使用pwd命令来获取当前目录的绝对路径。pwd代表"print working directory",它会输出当前所在的目录的绝对路径。
    例如,在终端中输入以下命...

  • shell怎么列出目录和子目录

    在Shell中,可以使用ls命令结合递归选项-R来列出目录和子目录。
    具体命令如下:
    ls -R 例如,要列出当前目录及其子目录的内容,可以使用以下命令:

  • 怎么用shell判断目录不存在则自动创建

    要用shell脚本判断目录是否存在,如果不存在则自动创建,可以使用如下的代码:
    #!/bin/bash # 指定目录路径
    directory="/path/to/directory" # 判断目...

  • c语言怎么判断字符串长度

    在C语言中,可以使用strlen()函数来判断字符串的长度,该函数定义在头文件中。它的函数原型如下:
    size_t strlen(const char *str); 其中,参数str是一个指...

  • java中怎么让用户输入数据

    要让用户在Java中输入数据,可以使用Scanner类来读取用户输入。以下是一些示例代码:
    import java.util.Scanner; public class UserInput { public static ...

  • linux创建子目录的方法是什么

    在Linux中,可以使用mkdir命令来创建子目录。以下是创建子目录的方法: 在当前目录下创建子目录:
    mkdir 其中,为子目录的名称。 在指定路径下创建子目录:...

  • mongodb连接显示ERROR错误如何解决

    要解决MongoDB连接显示ERROR错误,您可以尝试以下方法: 检查连接字符串:确保连接字符串中的主机名、端口号、数据库名称等信息正确无误。 检查网络连接:确保您...