我试图合并多个linux命令在一行执行部署操作。 例如
cd /my_folder
rm *.jar
svn co path to repo
mvn compile package install
我试图合并多个linux命令在一行执行部署操作。 例如
cd /my_folder
rm *.jar
svn co path to repo
mvn compile package install
当前回答
如果需要同时执行所有命令,可以用“;”分隔,不管上一条命令是否执行。
cd /my_folder; rm *.jar; svn co path to repo; mvn compile package install
如果希望在上一条命令执行成功后才执行下一条命令,可以使用&&分隔。
cd /my_folder && rm *.jar && svn co path to repo && mvn compile package install
在你的例子中,连续命令的执行似乎依赖于前面的命令,所以使用第二个例子,即使用&&来连接命令。
其他回答
你可以用分号分隔命令:
cd /my_folder;rm *.jar;svn co path to repo;mvn compile package install
你是这个意思吗?
如果需要同时执行所有命令,可以用“;”分隔,不管上一条命令是否执行。
cd /my_folder; rm *.jar; svn co path to repo; mvn compile package install
如果希望在上一条命令执行成功后才执行下一条命令,可以使用&&分隔。
cd /my_folder && rm *.jar && svn co path to repo && mvn compile package install
在你的例子中,连续命令的执行似乎依赖于前面的命令,所以使用第二个例子,即使用&&来连接命令。
您可以使用如下代码;
cd /my_folder && \
rm *.jar && \
svn co path to repo && \
mvn compile package install
它的工作原理……
使用;
不管第一个命令cmd1是否成功运行,总是运行第二个命令cmd2: $ CD myfolder;不管CD到我的文件夹是否成功,运行Ls
使用& &
当第一个命令cmd1执行成功后,再执行第二个命令cmd2: $ CD myfolder && ls #只在CD到myfolder后运行ls
使用| |
当第一个命令cmd1执行失败时,执行第二个命令cmd2: $ CD myfolder || ls #如果CD到myfolder失败,' ls '将运行
cd /my_folder && rm *.jar && svn co path to repo && mvn compile package install