解决使用scp命令传输文件时卡住的问题

最近,在使用scp命令传输文件到服务器上时,发生了一件捉摸不透的事情:命令输完,敲击回车之后,窗口没有任何反应,发生假死现象。后面仔细排查之后,得以解决。现在看来真的是因为很小的原因,导致出现这种问题。下面对问题进行复盘。

  1. 首先打开了iTerm,输入了scp命令:
    scp /x/xxx/xxxx/xxxxx/xxxx.jar root@:123.456.21.123:/x/xxx/jar;
  2. 问题出现,输入完命令之后,窗口无反应,强制关闭窗口,重新试了几次,无效;
  3. 使用- v参数观察scp命令的执行过程,命令如下:
    scp -v /x/xxx/xxxx/xxxxx/xxxx.jar root@:123.456.21.123:/x/xxx/jar;
  4. 出现了执行scp命令的debug步骤,观察出现结果如下之后再无反应:
    desc
  5. 大致方向确定了,可能是服务器的/etc/ssh/ssh_config配置文件出现了问题,遂排查之;
  6. 登录服务器,检查/etc/ssh/ssh_config,并无错误,再次观察提示,debug最后一行说hostname is an unrecognised address,理解意思是“主机名是一个被忽略的地址”回头再次检查语句,是否是复制粘贴ip地址时,出现了什么问题;
  7. 回头检查语句,果然发现了问题,特别隐蔽。在命令后半段,root@:123.456.21.123123.456.21.123:/x/xxx/jar:@符号后多了一个:号;
  8. 去掉:,再次尝试执行命令,顺利通过。
    scp /x/xxx/xxxx/xxxxx/xxxx.jar [email protected]:/x/xxx/jar

工作中,经常为了使用方便而保存一些命令,我认为这是非常有必要的,但是问题总是出现在使用过程中的复制粘贴上面,经常会多复制一个标点符号,或者少复制一个字母,导致命令执行出现意料之外的bug。浪费掉宝贵的时间。面对工作,“审之,慎之”,避免掉小错误,才能更快的提高效率,告别996。

发布了43 篇原创文章 · 获赞 9 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/u013243938/article/details/104277875
今日推荐