Przekierowanie Gunzip: „Brak takiego pliku lub katalogu”

1

Po wydaniu następującego polecenia:

gunzip -c /disk1/hadoop/gunzip_tmp/in/part-00006.gz>>/disk1/hadoop/gunzip_tmp/outfile.000

Dostaję następujący stderr:

gunzip: /disk1/hadoop/gunzip_tmp/in/part-00006.gz>>/disk1/hadoop/gunzip_tmp/outfile.000.gz: No such file or directory

Sprawdziłem, czy plik wejściowy i katalog wyjściowy / disk1 / hadoop / gunzip_tmp istnieją. Myślałem, że >> utworzy plik, jeśli jeszcze nie istnieje. Co ja robię źle?

MarkP
źródło

Odpowiedzi:

1

Musisz dodać spacje wokół swojego >>. Twoja powłoka myśli, że masz jedną naprawdę długą nazwę pliku /disk1/hadoop/gunzip_tmp/in/part-00006.gz>>/disk1/hadoop/gunzip_tmp/outfile.000i nie widzi >> ani drugiej nazwy pliku.

powinieneś napisać:

gunzip -c /disk1/hadoop/gunzip_tmp/in/part-00006.gz >> /disk1/hadoop/gunzip_tmp/outfile.000

Zwróć uwagę na miejsca wokół >>

Rich Homolka
źródło
Działa to z wiersza poleceń, ale kończy się niepowodzeniem jako skrypt. Następujące wiersze poleceń: UZPCMD = "gunzip -c" $ TMPDIR "/ in /" $ FILEONLY ">>" $ TMPDIR "/outfile.000" echo $ TMPDIR echo $ FILEONLY echo $ UZPCMD generuje następujące dane wyjściowe - polecenie gunzip linia wygląda tak, jak powinna: / disk1 / hadoop / gunzip_tmp part-00006.gz gunzip -c /disk1/hadoop/gunzip_tmp/in/part-00006.gz >> /disk1/hadoop/gunzip_tmp/outfile.000 Jednak wydanie wiersz polecenia ze skryptu: $ UZPCMD wysyła wiersz po wierszu rozpakowanego pliku do standardowego wyjścia (tak jakby przekierowanie było ignorowane).
MarkP
@MarkP To jest inne pytanie niż zadane. Zamknij pytanie i zadaj nowe, w którym możesz poprawnie sformatować skrypt.
Rich Homolka
Czy oprócz zaakceptowania odpowiedzi muszę coś zrobić, aby zamknąć pytanie?
MarkP
@ MarkP nie, po prostu stwórz nowe pytanie z nowym problemem.
Rich Homolka