Bash
bash: cd 到最近修改的子目錄
想知道是否有一種簡單和/或可移植的方式來表示“更改為最近修改的子目錄”。我可以使用
ls
,awk
但可能有更好的方法。cd $( ls -ltrd */ | tail -1 | awk '{ print $8 }' )
我必須在具有數百個子目錄的“輸出文件”目錄中執行命令,並且 99% 的時間我都想轉到最近更改的目錄。我不知道目錄的名稱是什麼。
假設您的目錄不包含任何不可列印的字元:
cd "$(\ls -1dt ./*/ | head -n 1)"
(請注意,它還將考慮到目錄的符號連結)。
如果您不介意切換到 zsh:
cd ./*(/om[1])
或者在第一個範例中包含指向目錄的符號連結:
cd ./*(-/om[1])
試試這個簡短的版本命令
cd $(ls -t | head -n 1)