2010-05-09 23:15:23 +0000 2010-05-09 23:15:23 +0000
83
83

Jak mogę spakować pliki gunzip do innego katalogu docelowego?

Jak zrobić gunzip do katalogu docelowego innego niż bieżący?

To nie zadziałało:

gunzip *.gz /putthemhere/

Odpowiedzi (3)

110
110
110
2010-05-09 23:23:16 +0000

Poproś gunzip o wyjście na standardowe wyjście i przekierowanie do pliku w tym katalogu:

gunzip -c file.gz > /THERE/file

zcat jest skrótem do gunzip -c.

Jeśli chcesz rozpakować wiele plików, wykonaj iterację po wszystkich plikach:

for f in *.gz; do
  STEM=$(basename "${f}" .gz)
  gunzip -c "${f}" > /THERE/"${STEM}"
done

(tutaj basename służy do uzyskania części nazwy pliku bez rozszerzenia)

2
2
2
2017-01-09 20:24:57 +0000

Jeśli musisz wyodrębnić pojedynczy plik i zapisać go do katalogu należącego do roota, użyj sudo dd:

zcat filename.conf.gz | sudo tee /etc/filename.conf >/dev/null

Jeśli plik pochodzi ze zdalnego źródła (tj. ssh, curl https, itp.), możesz to zrobić w ten sposób:

ssh remoteserver cat filename.conf.gz | zcat | sudo tee /etc/filename.conf >/dev/null

(Zauważ, że te przykłady działają tylko dla pojedynczego pliku, w przeciwieństwie do przykładu *.gz, który jest wszystkimi gzipped plikami w katalogu).

1
1
1
2010-05-09 23:21:09 +0000

Możesz spróbować z >, aby przekierować wynik do miejsca, które chcesz.