2
的未註釋的線抱怨「畝」文件不不存在,而註釋行的行爲與預期並給我的行數在「畝」文件遠程SSH和變量替換
vr=$(ssh $1 "cd $2; count=`cat mus | wc -l`; echo $count")
#vr=$(ssh $1 "cd $2; cat mus | wc -l")
echo $vr
的未註釋的線抱怨「畝」文件不不存在,而註釋行的行爲與預期並給我的行數在「畝」文件遠程SSH和變量替換
vr=$(ssh $1 "cd $2; count=`cat mus | wc -l`; echo $count")
#vr=$(ssh $1 "cd $2; cat mus | wc -l")
echo $vr
您會收到此錯誤:
cat: mus: No such file or directory
原因是該命令
count=`cat mus | wc -l`
正在本地執行,而不是在遠程主機上執行。
要執行遠程主機上利用這裏-doc的多個命令:
ssh -t -t "$1"<<EOF
cd "$2"
c=\$(wc -l < mus)
echo \$c
exit
EOF
未註釋的行在您的本地系統上查找文件mus
,而註釋的行在遠程系統上查找。你需要躲避反引號,並在此count
變量$
工作:
vr=$(ssh $1 "cd $2; count=\`cat mus | wc -l\`; echo \$count")
echo $vr