背景:
最近安装配置机器,需要手打很多命令。又不能使用docker,所以就使用iTerm2连接多台服务器,然后move session到一个窗口中,shift + command + i使用XSHELL类似的撰写功能,就可以一次在多台服务器命令窗口中执行相同的命令,同样简单高效!
iTerm2 是免费的(我是macOS)。它是一款开源的、专为 Mac OS 用户打造的多命令行应用和终端模拟器。你可以在其官方网站免费下载和使用。
iTerm2下载地址:
https://iterm2.com/downloads.html
一次执行多个连接截图:
1.点击要合并的窗口,2.选择Session >> Move Session >> Move Session to Split Pane 3.点击要合并到的窗口,这样就把多个session的窗口合并到一个session了。4.快捷键Shift+Command+i 5.命令行输入ls。就可以在几个窗口同时执行同样的命令了。
回到正题:
执行过程中,有时候我们需要一行输入多个命令去执行,不需要等到上个执行完再去执行下一个。
解决方法:
以下列命令行为例。
sudo make
sudo make install
1.使用&&连接
sudo make && sudo make install
2.使用分号;连接
sudo make;sudo make install
3.用()括起来(还是要用到;)
(sudo make;sudo make install)
4.使用sh -c
sh -c "sudo make; sudo make install"
5.把命令写成函数形式
在 shell 中定义一个函数,将这两条命令包含在函数体中,然后调用该函数。
install_make() {
sudo make
sudo make install
}
install_make
总结:在这些方法里,&&是最常用的,因为它能保证只有当sudo make执行成功后,才会去执行sudo make install,避免不必要的错误。