less/vimで最近修正されたn個のファイルを開く方法は?

less/vimで最近修正されたn個のファイルを開く方法は?

lessディレクトリ内で最近変更された5つのファイルのみを開くか開く方法は何ですかvim

私はこれを使用して、ls -t最新のものから古いものまで出力をソートできることを知っています。だから私の本能はを使用することですが、vimは出力をファイル名ではなく生のテキストとして扱うのでls -t | head -5 | vim動作しません。ls

どうすればいいですかfind?私の問題findは、私はいつもlsディレクトリを検索することに慣れているので、使い方を知っていることです。しかし、findこの目的に使用したことはありません。

ベストアンサー1

$IFSファイル名に文字(通常はスペース、タブ、または改行文字)が含まれている場合、シェルはこれらのファイル名を選択したいと思います。 (GNU)findユーティリティにファイルを見つけ、ファイル名をNULLで区切るように要求し、(GNU)ユーティリティを使用してファイル名をlessまたはvimに戻すことでこの問題を解決できますが、以下をxargs使用する方が簡単です。だと思います。ローカルで生成できるファイル名:

zsh -c 'vim *(om[1,5])'

これは、現在のディレクトリで最後に変更された5つのファイルに展開されたzshワイルドカードを含む単一のコマンドを使用して呼び出されます。vimこれらのファイル名は個別の引数として安全に提供され、分割vimされなくなりました$IFS

より多くの例については、以下を参照してください。最新のファイルを探すコマンドライン引数で最近変更されたファイルを参照できますか?ディレクトリ内の最新のファイルにアクセスする(アルファベット順にソート)

おすすめ記事