Nushell Example

■サブディレクトリにある特定の拡張子のファイル一覧を作成し名前とファイルサイズでを保存する(ls)

カレントディレクトリ以下のサブディレクトリにある特定の拡張子のファイル一覧を作成し保存するにはlsコマンドとsaveコマンドを組み合わせます。ls **/*.txtのようにパラメーターを指定するとカレントディレクトリとサブディレクトリが対象になります。
ファイル名単体であればget name、ファイルサイズ単体であればget sizeでも構いませんが、両方を組み合わせて出力する場合はselectコマンドを使います。select name sizeとするとファイル名とファイルサイズの順番で出力されます。select size nameならファイルサイズ、ファイル名の順番で出力されます。
selectコマンドで出力された内容をタブ区切りで保存するにはto tsvとします。ヘッダーが不要な場合は--noheadersを指定します。タブ区切りではなくカンマ区切り(コンマ区切り)にしたい場合はto csvを指定します。

以下の例では現在のディレクトリ以下にある拡張子がtxtのすべてのファイル一覧を取得しカレントディレクトリにファイル名とサイズをfilelist.txtという名前で保存します。saveコマンドではfオプションを指定しているので、すでに同名のファイルがある場合は上書きされます。
なお、lsコマンドは該当するファイルが見つからない場合、エラーになりますので注意が必要です。

Terminal
ls **/*.txt | select name size | to tsv --noheaders | save -f filelist.txt

実行結果の確認

実行すると、以下のような画面になります。

サブディレクトリにある特定の拡張子のファイル一覧を作成し名前とファイルサイズでを保存する(ls)
サブディレクトリにある特定の拡張子のファイル一覧を作成し名前とファイルサイズでを保存する(ls)