我正在学习如何运行在http://wiki.fabelier.org/index.php?title=Permanent_Reverse_SSH_Tunneling找到的反向ssh隧道的教程 我遇到的问题是当我运行tunneling.sh脚本时:
a=(`ps -ef | grep 19999 | grep -v grep`)
if [ ! "$a" ]; then
ssh -fN -R 19999:localhost:22 <middle-usename>@<middle-hostname>
fi
我收到此错误:
tunnels.sh 1: tunnels.sh: Syntax error: "(" unexpected
我是linux中的shell脚本的极端新手,所以请善待。
答案 0 :(得分:1)
语法错误:
a=(`ps -ef | grep 19999 | grep -v grep`)
应该只是:
a=`ps -ef | grep 19999 | grep -v grep`
那里不需要括号,尽管有一种替代语法可以完成同样的事情:
a=$(ps -ef | grep 19999 | grep -v grep)
请注意添加$
并且不再需要反引号。