我在下面在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'?) –