Błąd z nazwą pliku zawierającą nawiasy

10

kiedy próbowałem zmienić nazwę pliku z old.file(1).gzna new.file.gz, mówi błąd składniowy, używam Ubuntu 12.04.

mv old.file(1).gz new.file.gz
bash: syntax error near unexpected token `('
Jacek
źródło
8
Spróbować mv 'old.file(1).gz' new.file.gz.
co to jest ubuntu? Nigdy nie słyszałem o Ubuntu 12.0
mojo706,

Odpowiedzi:

21

Komentarz Yeti będzie dla ciebie działał, ale jeśli chcesz wiedzieć, dlaczego, to dlatego, że nawiasy są interpretowane jako znaki specjalne i muszą być poprzedzone znakiem ucieczki \lub cytowaną całą nazwą pliku (jak wyżej) [edycja: przepraszam, tylko (i ) należy zacytować].

Jeśli masz włączone uzupełnianie tabulatorów, po prostu wpisz kilka pierwszych znaków nazwy pliku i wciśnij tabulator. Tzn., Pisanie mv oldi klikanie, powinno się zmienić mv old.file\(1\).gz(chyba że istnieją inne potencjalne pliki, do których old*można się odwoływać).

Jangari
źródło
8
Cała nazwa pliku nie wymaga cytowania. Tylko ()do. Możesz zrobić, mv old.fil'e(1).'gz new.file.gzjeśli chcesz.
Stéphane Chazelas
5
mv 'old.file(1).gz' new.file.gz

powinien rozwiązać problem.

Satheesh K
źródło