我想知道如何编写一个在 beaglebone 上执行命令的脚本。
我的脚本如下:
ssh [email protected]
mkdir folder1/
mkdir folder2/folder3
但它总是在第一行之后停止并将我带入 BB 的终端?
我如何让它运行另外两个命令?
提前致谢!
答案1
如果您的意思是想要在 SSH 会话中运行这两个命令192.168.7.2
,那么您只需将命令作为参数传递给ssh
命令:
ssh [email protected] 'mkdir folder1/; mkdir folder2/folder3'
注意命令周围的引号以及它们之间的分号。
但是,在这种情况下,您可以调用mkdir
一次并将两个文件夹都传递给它来创建;并且,以防万一folder2
不存在,您应该传递mkdir
开关-p
以在需要时创建它。
ssh [email protected] 'mkdir -p folder1/ folder2/folder3'
希望这可以帮助!
答案2
您可以使用 以非交互方式在远程计算机的 shell 上运行命令ssh
。语法为:
ssh user@destination 'command_1; command_2 .....'
替换;
为&&
根据前一个命令的成功来运行下一个命令。
因此,你可以这样做:
ssh [email protected] 'mkdir -p folder1/ folder2/folder3'
请注意,该目录将在用户的主目录下创建debian
。
mkdir
一旦命令返回,非交互式会话将终止。