Bashエイリアスパラメータ

Bashエイリアスパラメータ

重複の可能性:
エイリアスにパラメータを渡すには?

現在、gitリポジトリをすばやくアーカイブできるbashエイリアスを作成しようとしています。

私の現在のエイリアスは次のとおりです。

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

同じターゲットファイルを提供している場合はこれはうまく機能しますgitarch ~/Desktop/MyArchive.tar.gzが、ファイル名だけを入力した場合は常にtar.gz拡張子でデスクトップに保存したいと思います。私はこれを試みます:

alias gitarch="git archive master --format=tar | gzip >~/Desktop/[email protected]"

...しかしうまくいかないようです。

誰でもそれを働かせる秘訣を教えてもらえますか?

答え1

秘訣は単にbash関数を作成することです。エイリアスは位置パラメータ置換をサポートしません。

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

関連情報