Bash関数は現在のコマンドラインを取得します

Bash関数は現在のコマンドラインを取得します

私はよく次のようなことをします:

tail -f logs/`ls -rt logs | tail -1`/debug.log

のマクロを作成したいのですls -rt <some_dir> | tail -1が、現在のコマンド ラインのコンテキスト (<some_dir>現在のコマンド ラインから取得) で動作する必要があります。それを実現する方法はありますか?

何かのようなもの:

tail -f logs/$(LAST)/debug.log

答え1

<some_dir>サブコマンド内での決定に縛られない場合は、次の方法で同じ効果を実現できます...

tail -f `ls -drt logs/* | tail -1`/debug.log

完全なパスを含める原因になりますが、末尾にパスを含める必要があり-dます。ls/*ファイルディレクトリ自体ではなく、ディレクトリ内です。

答え2

を使用すると$0、現在のコマンドと$*パラメータが取得されます。echo $0 $*それが役立つかどうか試してみてください。もちろん、必要に応じてそれらを他の変数に割り当てることもできます。

関連情報