如何编写在终端上执行某些命令的脚本?

如何编写在终端上执行某些命令的脚本?

我通常在控制台中一个接一个地输入某些命令序列,例如

adb devices
adb uninstall com.package.abc
cd myProjectDir
meteor reset
rm -f -r .meteor/local
meteor run android-device

如何编写一个脚本,让我在一行中执行所有(或至少一部分)这些命令(例如./batchRunMeteor)?

答案1

三种方式:

A)在一行中运行一些命令,用分号链接

adb devices; adb uninstall com.package.abc; cd myProjectDir; meteor reset; rm -f -r .meteor/local; meteor run android-device

在这里,我保留了简单顺序执行的原始“意图”。一种建议是仅在前面的命令成功时才运行后续命令;这是通过以下方式完成的&&

adb devices && adb uninstall com.package.abc && cd myProjectDir && meteor reset && rm -f -r .meteor/local && meteor run android-device

B) 创建别名

alias batchRunMeteor='adb devices; adb uninstall com.package.abc; cd myProjectDir; meteor reset; rm -f -r .meteor/local; meteor run android-device'
# or use the && method:
alias batchRunMeteor='adb devices && adb uninstall com.package.abc && cd myProjectDir && meteor reset && rm -f -r .meteor/local && meteor run android-device'
batchRunMeteor

C) 创建 shell 脚本

cat > batchRunMeteor << EOF
adb devices
adb uninstall com.package.abc
cd myProjectDir
meteor reset
rm -f -r .meteor/local
meteor run android-device
EOF

chmod u+x batchRunMeteor 
./batchRunMeteor 

shell脚本也可以&&根据需要使用。

相关内容