我可以在Linux中为长控制台命令创建快捷方式吗?

时间:2011-11-18 06:04:22

标签: linux bash command-line

我经常有一些非常长的控制台命令,如:

python /var/www/closure-library/closure/bin/calcdeps.py \
-i myJSFile.js \
-p ../closure-library/closure/goog/ \
-o compiled \
-c /var/www//closure-compiler/build/compiler.jar \
-f "--compilation_level=ADVANCED_OPTIMIZATIONS" \
-f "--define=goog.LOCALE='de'" > myOutputFile.js

我想简单地使用:

closure -i myJSFile.js -o myOutputFile.js

或类似的东西。我怎么能这样做?

2 个答案:

答案 0 :(得分:9)

在shell的联机帮助页中查找aliases

也许是这样的:

alias closure='python /var/www/closure-library/closure/bin/calcdeps.py -p ../closure-library/closure/goog/ -c /var/www//closure-compiler/build/compiler.jar -f "--compilation_level=ADVANCED_OPTIMIZATIONS" -o compiled'

然后你可以做

$ closure -i myJSFile.js > myOutputFile.js

答案 1 :(得分:2)

您也可以编写脚本并处理-o myOutputFile.js选项。

#!/bin/bash
if [ $# -ne 2 ]; then
   echo "Usage: closure InputFile OutputFile"
   exit 1
fi

python /var/www/closure-library/closure/bin/calcdeps.py \
-i "$1" \
-p ../closure-library/closure/goog/ \
-o compiled \
-c /var/www//closure-compiler/build/compiler.jar \
-f "--compilation_level=ADVANCED_OPTIMIZATIONS" \
-f "--define=goog.LOCALE='de'" > "$2"

你可以做closure myJSFile.js myOutputFile.js

相关问题