linux 远程读取文件是否存在,关于linux:使用ssh检查远程主机上是否存在文件

这篇博客介绍了如何使用SSH命令在远程主机上检查文件是否存在。内容包括使用不同的条件测试操作符,如`-f`,并展示了如何在脚本中实现无密码SSH认证,以自动化文件存在性的检查过程。
摘要由CSDN通过智能技术生成

我想检查远程主机上是否存在某个文件。我试过这个:

$ if [ ssh user@localhost -p 19999 -e /home/user/Dropbox/path/Research_and_Development/Puffer_and_Traps/Repeaters_Network/UBC_LOGS/log1349544129.tar.bz2 ] then echo"okidoke"; else"not okay!" fi

-sh: syntax error: unexpected"else" (expecting"then")

您正在尝试执行该文件…

一般来说,在then之前需要一个分号:if cmd; then cmd; else cmd; fi。

除了上面的答案,还有一种速记方法:

ssh -q $HOST [[ -f $FILE_PATH ]] && echo"File exists" || echo"File does not exist";

-q是安静模式,它将抑制警告和消息。

正如@mat所提到的,这种测试的一个优点是,您可以很容易地将-f换成您喜欢的任何测试操作员:-nt、-d、-s等。

测试操作员:http://tldp.org/ldp/abs/html/fto.html

+1,但这假定接收主机具有bash,并且它是用户的默认shell。

我真的很喜欢你的解决方案。对于像我这样的新生来说,如果是其他版本:如果ssh-q$host[-f$file];那么echo"file exists";否则"fil

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值