私はbashスクリプトで行われたすべての操作をログファイルに書き込みます。cd
出力をログに記録できるように、ディレクトリを詳細に変更したいと思います。
このような:
iMac:~ leetbacoon$ cd -v /new\ path
cd: /Users/leetbacoon -> /new path
iMac:new path leetbacoon$
残念ながら、cd
詳細な表示がありません。このようなことをする方法についてのアイデアはありますか?
答え1
$OLDPWD
POSIXで定義したシェル変数も役に立ちます。たとえば、オーバーライドするシェル関数を定義できます。オリジナル cd
注文する:
cd() { command cd "$@" && printf '%s -> %s\n' "${OLDPWD}" "${PWD}"; }
Unixからの抜粋マニュアルページ読むべき内容:
上記の手順で
PWD
環境変数が設定されている場合、OLDPWD
環境変数も以前の作業ディレクトリ(つまり、呼び出し前の現在の作業ディレクトリ)の値に設定する必要がありますcd
。