SERVER:~ # zcat /var/log/wtmp-20130827.gz | last -f -
last: -: No such file or directory
SERVER:~ #
wtmpファイルを解凍せずにifの出力を表示するには、最後のコマンドをどのように使用しますか?
答え1
last
パイプからの読み取りはサポートされていません。ファイル名として使用できますが、/dev/stdin
最初にファイルからリダイレクトする場合にのみ機能するため、少し役に立ちません。
一時ファイルにファイルを解凍します。
wtmp=$(mktemp)
zcat /var/log/wtmp-20130827.gz >|"$wtmp"
last -f "$wtmp"
rm -f "$wtmp"
=(…)
Zshには、コマンド出力を一時ファイルに保存するプロセス代替形式があります。
last -f =(zcat /var/log/wtmp-20130827.gz)
答え2
絶対。
last(1) は stdin を読み取ることができるようには設計されていません。 /var/log/wtmp または -f xxx
「-」をサポートしていません。