"ls -l"出力間に新しい行を追加する方法

これは標準ls -l出力です。

user@linux:~$ ls -l
total 0
-rw-rw-r-- 1 user user 0 Nov   1 00:00 file01
-rw-rw-r-- 1 user user 0 Nov   1 00:00 file02
-rw-rw-r-- 1 user user 0 Nov   1 00:00 file03
user@linux:~$ 

このように新しい行を追加することは可能ですか?

-rw-rw-r-- 1 user user 0 Nov   1 00:00 file01

-rw-rw-r-- 1 user user 0 Nov   1 00:00 file02

-rw-rw-r-- 1 user user 0 Nov   1 00:00 file03

ベストアンサー1

ls -l | sed G

(これは一般的な慣用語です。sedよくある質問について)。

または(より速くても(おそらく短い)出力には重要ではないかもしれませんls -l):

ls -l | paste -d '\n' - /dev/null

各後ろに空白行を挿入します。ワイヤー出力ls -l

ここで説明する各ファイルの後に空白行を置くには(ls -l名前に改行文字を含むファイルがある場合は状況が異なります)、次の手順を実行する必要があります。

for f in *; do ls -ld -- "$f" && echo; done

(これもその行をスキップしますtotal。)

あるいは、ls -qlこれを使用してファイルごとに1行ずつ保証することもできます(すべての制御文字と同様に改行文字がレンダリングされます?(少なくともPOSIXロケールでは))。

おすすめ記事