bash:最後に変更されたサブディレクトリにCDを移動します。

bash:最後に変更されたサブディレクトリにCDを移動します。

「最近変更されたサブディレクトリに変更」を意味する簡単で移植可能な方法があるかどうか疑問に思います。使用できますが、lsよりawk良い方法がある可能性があります。

cd $( ls -ltrd */ | tail -1 | awk '{ print $8 }' )

何百ものサブディレクトリを含む「出力ファイル」ディレクトリからコマンドを実行する必要があり、99%の場合は、最近変更されたディレクトリに移動しようとします。ディレクトリ名が何であるかを事前に知ることはできません。

ベストアンサー1

ディレクトリに印刷できない文字が含まれていないとします。

cd  "$(\ls -1dt ./*/ | head -n 1)"

(ディレクトリへのシンボリックリンクも考慮します。)

zshに切り替えても大丈夫なら:

cd ./*(/om[1])

または、最初の例のようにディレクトリへのシンボリックリンクを含めます。

cd ./*(-/om[1])

おすすめ記事