Intereting Posts
Проверьте содержимое файла, ищущего повреждение, размер файла указывает размер «ноль» Загрузка Iso с grub2 архив git, включая незафиксированные измененные файлы yum-list настроить флаги / параметры, используемые для компиляции пакета Подстановочный знак для пути к местоположению на удаленном хосте Возможные проблемы при перемещении Linux-дисков с одного оборудования на другое Может ли Yum или любой другой RPM-интерфейс работать с dm-verity? Как искать все подкаталоги для поиска одного с определенным именем? Вымытые цвета с помощью программного обеспечения screencast, но не скриншот на Ubuntu (все версии) Почему shell globs пропускает файлы точек по умолчанию? Обоснование статистики NIC (ethtool -S eth1) Найдите то, что занимает много памяти и не видно в `ps` или аналогичном Как рассчитывается использование памяти JVM? Linux ls для отображения только даты и размера имени файла Как я могу определить, включен ли no_root_squash из клиента NFS без установки общего ресурса?

Аргументы псевдонимов Bash

Возможный дубликат:
Как передать параметры псевдониму?

Я пытаюсь создать псевдоним bash, который позволит мне быстро создать архив текущего git-репо.

Мой текущий псевдоним:

alias gitarch="git archive master --format=tar | gzip >$@"

Это отлично работает, если я gitarch ~/Desktop/MyArchive.tar.gz файл назначения точно так же, как gitarch ~/Desktop/MyArchive.tar.gz но я хочу иметь возможность просто набирать имя файла, и он всегда будет сохраняться на рабочем столе с расширением tar.gz. Я пробовал делать:

alias gitarch="git archive master --format=tar | gzip >~/Desktop/$@.tar.gz"

Но, похоже, он работает неправильно.

Может ли кто-нибудь сказать мне секрет, чтобы это работало?

Секрет просто создает функцию bash псевдонимы не поддерживают замещение позиционного параметра:

 gitarch() { git archive master --format=tar | gzip >"$1"; }