現在のディレクトリ以外のディレクトリに移動する方法
これはうまくいきませんでした。
gunzip *.gz /putthemhere/
gunzip
に標準出力への出力とそのディレクトリ内のファイルへのリダイレクトを依頼します。
gunzip -c file.gz > /THERE/file
zcat
はgunzip -c
のショートカットです。
複数のファイルをすべてのファイルで繰り返し圧縮する場合は、次の手順を実行します。
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とは異なり、単一のファイルに対してのみ機能することに注意してください。)
>を使って結果を好きな場所にリダイレクトすることができます。