манипулировать файлами с подстановочными знаками в имени файла

Я только что обнаружил, что на самом деле могу создать файл с именем *.txt в Ubuntu.

Предположим, у меня есть a.txt b.txt и *.txt в моем текущем каталоге.

Как удалить третий с помощью терминала? (rm *.txt удалит все)

1
задан 16 December 2013 в 06:23

3 ответа

Вам нужно либо убежать, либо указать кавычку:

rm '*.txt'
rm \*.txt
0
ответ дан 16 December 2013 в 06:23

В более сложных случаях иногда может помочь завершение командной строки bash или zsh:

Для файла с именем foo*.txt, нажав клавишу Tab после первых двух символов для завершения:

$ mv fo<TAB>

может завершить имя файла, включая его необычные символы, и автоматически экранировать их при необходимости:

$ mv foo\*.txt

(Командная строка после нажатия клавиши Tab)

0
ответ дан 16 December 2013 в 06:23

Просто используйте 'на нем. Этот подстановочный знак (я не знаю, действительно ли он называется так) гарантирует, что оболочка читает его как строку вместо подстановочного знака. Like:

rm '*.txt'
0
ответ дан 16 December 2013 в 06:23

Другие вопросы по тегам:

Похожие вопросы: