Я хочу показать все файлы с расширением .bak.
kaykav@ubu2:~/Documents$ ls
cdIndex1-60 met.bak tem.bak
Я ввожу cmd: $ find . -name *.bak
Я в правильном каталоге , Я получаю следующее сообщение:
find: пути должны предшествовать выражению: tem.bak
blockquote>Что это значит? Справочные страницы не помогают.
Попробуйте поместить его в кавычки:
find . -name '*.bak'
Когда вы просто используете find . -name *.bak
в этом каталоге, оболочка расширяет его до find . -name tem.bak met.bak
(т.е. интерпретирует *
как подстановочный знак)
Попробуйте поместить его в кавычки:
find . -name '*.bak'
Когда вы просто используете find . -name *.bak
в этом каталоге, оболочка расширяет его до find . -name tem.bak met.bak
(то есть интерпретирует *
как подстановочный знак)
Попробуйте поместить его в кавычки:
find . -name '*.bak'
Когда вы просто используете find . -name *.bak
в этом каталоге, оболочка расширяет его до find . -name tem.bak met.bak
(то есть интерпретирует *
как подстановочный знак)
Попробуйте поместить его в кавычки:
find . -name '*.bak'
Когда вы просто используете find . -name *.bak
в этом каталоге, оболочка расширяет его до find . -name tem.bak met.bak
(т.е. интерпретирует *
как подстановочный знак)
Попробуйте поместить его в кавычки:
find . -name '*.bak'
Когда вы просто используете find . -name *.bak
в этом каталоге, оболочка расширяет его до find . -name tem.bak met.bak
(то есть интерпретирует *
как подстановочный знак)
Попробуйте поместить его в кавычки:
find . -name '*.bak'
Когда вы просто используете find . -name *.bak
в этом каталоге, оболочка расширяет его до find . -name tem.bak met.bak
(то есть интерпретирует *
как подстановочный знак)
Попробуйте поместить его в кавычки:
find . -name '*.bak'
Когда вы просто используете find . -name *.bak
в этом каталоге, оболочка расширяет его до find . -name tem.bak met.bak
(то есть интерпретирует *
как подстановочный знак)
find . -name *.bak
, третий аргумент командной строки, *.bak
, раскрывается i> оболочкой, прежде чем он будет передан в find
. Расширение оболочки преобразует его в разделенный пробелами список всех имен файлов в текущем каталоге, которые ему соответствуют, то есть всех файлов, имена которых состоят из нуля или более символов (*
), за которыми следует .bak
. Когда вы заключаете *.bak
в кавычки, то экранирует i> подстановочный знак *
, поэтому выражение передается без расширения. В качестве альтернативы вы можете использовать find . -name \*.bak
.
– Eliah Kagan
9 July 2012 в 08:19