我想知道以下命令之间有什么区别:
ssh vagrant@someipaddress
cd /home/vagrant/
grep -i "something" data.txt
和
ssh vagrant@someipaddress 'cd /home/vagrant; cat data.txt' | grep -i "something"
从它提到的website,您可以向远程服务器发送多个命令。第二个选项是否实际登录到服务器?第二种方法有什么好处?
答案 0 :(得分:0)
严格说话:
第一个命令:
第二个命令在远程计算机上运行一半,从远程计算机注销,然后在一台命令行中将输出通过管道传输到本地计算机上的grep
。 / p>
ssh vagrant@someipaddress 'cd /home/vagrant; cat data.txt' | grep -i "something"
根据ssh
会话
'
引号“包含”整个命令块
"
引号“包含”命令块中的各个参数。您可能打算这样做:
ssh vagrant@someipaddress 'cd /home/vagrant; cat data.txt' | grep -i "something"
或者您可能故意这样做:
ssh vagrant@someipaddress 'cd /home/vagrant/ | grep -i "something" data.txt'