日付と時刻をキャプチャするためにファイルリストの後にls -ltrをパイプする方法

日付と時刻をキャプチャするためにファイルリストの後にls -ltrをパイプする方法

すべての無効なwspファイルを印刷するスクリプトがあります。

 ./print_bad_wsp_files.sh



./aaaa/rrr/aaaa/fff/ooo/min.wsp
./aaaa/rrr/aaaa/fff/ooo/p50.wsp
./aaaa/rrr/aaaa/fff/ooo/min.wsp
./aaaa/rrr/aaaa/fff/ooo/p50.wsp

# ls -ltr

drwxr-xr-x  5 root root   36 Aug 14 14:58 aaaa

ls -ltr結果を得るためにスクリプトをパイプできますか?ファイルごとに?

それが私が今までやってきたことです。

 ./print_bad_wsp_files.sh | ls -ltr 

しかし、それはただ提供しています

 drwxr-xr-x  5 root root   36 Aug 14 14:58 aaaa

そして予想される結果は次のとおりです。

 -rw-r--r-- 1 graphite mo 17308 Oct 11  2017 ./aaaa/rrr/aaaa/fff/ooo/min.wsp
 -rw-r--r-- 1 graphite mo 13508 Oct 11  2017 ./aaaa/rrr/aaaa/fff/ooo/p50.wsp
 -rw-r--r-- 1 graphite mo 27208 Oct 11  2017 ./aaaa/rrr/aaaa/fff/ooo/min.wsp
 -rw-r--r-- 1 graphite mo 19208 Oct 11  2017 ./aaaa/rrr/aaaa/fff/ooo/p50.wsp

答え1

ここで必要なものは次のとおりですxargs

./print_bad_wsp_files.sh | xargs ls -ltr

xargsはスクリプトの出力を読み取り、ls -ltrすべて実行します(各呼び出しに合わせてグループ化できますls)。

複数回呼び出すと、ls各呼び出しはls独自のファイルリストを別々に(逆順に)ソートします。

関連情報