現在のディレクトリ以外の宛先ディレクトリにgunzipするにはどうすればよいですか?
これは機能しませんでした:
gunzip *.gz /putthemhere/
現在のディレクトリ以外の宛先ディレクトリにgunzipするにはどうすればよいですか?
これは機能しませんでした:
gunzip *.gz /putthemhere/
回答:
掲載しgunzip
、標準出力に出力すると、そのディレクトリ内のファイルにリダイレクトします。
gunzip -c file.gz > /THERE/file
zcat
はのショートカットですgunzip -c
。
複数のファイルをgunzipですべてのファイルを反復処理する場合:
for f in *.gz; do
STEM=$(basename "${f}" .gz)
gunzip -c "${f}" > /THERE/"${STEM}"
done
(ここでbasename
は、拡張子のないファイル名の一部を取得するために使用されます)
あなたは、単一のファイルを抽出する必要がある場合やルート所有のディレクトリに書き込み、その後、使用sudo dd
:
zcat filename.conf.gz | sudo tee /etc/filename.conf >/dev/null
ファイルがリモートソース(つまり、ssh、curl httpsなど)から来ている場合、次のようにできます。
ssh remoteserver cat filename.conf.gz | zcat | sudo tee /etc/filename.conf >/dev/null
(これらの例は、ディレクトリ内のすべてのgzip圧縮ファイルである* .gzの例とは異なり、単一のファイルに対してのみ機能することに注意してください。)
sudo tee $filename >/dev/null
場合、を使用するよりも少し慣用的ですdd
。
>で試して、目的の場所に結果をリダイレクトできます。