我在下面在Ubuntu Linaro(在Parallella上)看到的奇怪行为刻意挠头。这scp命令正常工作本身:TCSH脚本和scp命令
$ scp [email protected]:~/myMPI/filename [email protected]:~/myMPI/
但是,一旦我把它包装成一个脚本:
#!/bin/tcsh -f
scp [email protected]:~/myMPI/$1 [email protected]:~/myMPI/
,并发出它,我得到这个:
$ thescript filename
user: invalid user name
没有空格或用户名中的句点,而且在命令行上也会失败,而不仅仅是在脚本中。不过,tcsh以某种方式改变了scp命令。
帮助?
脚本以'#!/ bin/sh -f'开头,所以它是Bourne shell脚本,而不是tcsh脚本。 tcsh脚本需要'#!/ bin/tcsh -f',其中'-f'告诉shell不要加载启动文件。 '/ bin/sh'的'-f'选项完全不同(它禁用了路径名扩展),并且在这里你不需要它。 –
我的部分出现复制粘贴错误,现在已修复。不幸的是,问题依然存在。 – Urhixidur
我无法重现该问题。这是你的tcsh脚本的* exact *内容,还是你修改了它的发布? (用户名真的是'用户',主机名是'UNIT1'和'UNIT2'?) –