Ярлык для некоторых обычно используемых команд с переменными
Я использую эти команды ежедневно:
mkdir ______ && rar a -m0 -v200M ______/______.rar "XXXXXXXX" && rm -rf "XXXXXXXX" &&
par2 c -r10 -l ______/______.par2 ______/* && ~/newsmangler/mangler.py -c
~/.newsmangler.conf ______ && rm -rf ______
Где "XXXXXXXX" и "______" - две переменные.
Есть ли способ использовать ярлык, чтобы сделать это проще, так как изменяются только "XXXXXXXX" и "______"? Я ищу что-то похожее на:
mycommands _____ XXXXX
Пара вещей, которые вы можете знать:
- Я использую терминал GNOME.
- У меня нет root-доступа.
1 ответ
Решение
Просто напишите функцию, которая принимает два аргумента:
function just_do_it (){
( [ -z "$1" ] || [ -z "$2" ] ) && echo "No arguments given" && return 1
echo "do stuff with $1 and $2"
# notice to use double quotes, when processing the varibales
ls -l "$1"
}
Первая строка проверяет, заданы ли два аргумента. Аргумент может быть доступен $1
(первый) и $2
(Второй).
Редактировать: функция в вашем случае будет, например, выглядеть так (немного более читабельно отформатированная):
function just_do_it (){
( [ -z "$1" ] || [ -z "$2" ] ) && echo "No arguments given" && return 1
mkdir "$1" && \
rar a -m0 -v200M "$1/$1.rar" "$2" && \
rm -rf "$2" && \
par2 c -r10 -l "$1/$1.par2" "$1/*" && \
~/newsmangler/mangler.py -c ~/.newsmangler.conf "$1" && \
rm -rf "$1"
}