Немного странно с командой grep. Когда я нахожусь в почтовой папке, всегда появляется справочный текст. Сначала я подумал, что у меня неправильный синтаксис, но он работает со своей родительской папкой. Что может быть причиной? TIA!
[xx]$ grep "abc" *.out
grep: invalid option -- '-'
Usage: grep [OPTION]... PATTERN [FILE]...
Try 'grep --help' for more information.
[xx]$ cd ..
[xx]$ grep "abc" mail/*.out
mail/0940-cron-mail.out:News 3598...h...N
У вас есть файл в этом каталоге, который начинается с символа '-'.
Когда вы вызываете grep в каталоге, * расширяет все имена файлов, а grep интерпретирует имя с ведущим - как параметр и не может его проанализировать.
Когда ваш grep включает путь к каталогу, * по-прежнему расширяет имена файлов, но теперь - находится в середине пути + имя файла, поэтому не интерпретируется как параметр командной строки