我有一个shell脚本,在这个脚本中,我使用下面的命令拉一个远程服务器的*.gz文件,而在scp之后,我正在执行gunzip命令。问题是,在执行scp时,连接会丢失,因此不完整的*.gz文件将保存在我的本地服务器目录中,并且当我试图在scp命令的下一行中进行持枪压缩时,它会成功地压缩文件,当我打开该文件时,它会包含垃圾值。
scp ${HostUser}@${HostServer}:$4/*$no*.gz
gunzip 当我调试时,我发现以下原因: 1.由于连接丢失而导致的文件传输不完整2。在手动执行gunzip命令时,它给出了文件not error.So的结尾,它在文件中随机创建垃圾值,我的脚本正在成功运行,这是不正确的。因此,我的问题是:
请建议
发布于 2014-08-29 16:18:33
“$?”将保存最后一个命令的退出代码,以便在scp命令之后将其分配给一个变量。然后执行一个if语句来检查退出代码是否= 0,为了成功完成,然后运行gunzip命令。
scp ${HostUser}@${HostServer}:$4/*$no*.gz
EXIT_STATUS=$?
if [ $EXIT_STATUS -eq 0 ]; then
gunzip
else
...some error handling
fihttps://stackoverflow.com/questions/25570611
复制相似问题