Для проверки:
find /home/ -name '*.txt' -exec ls -l {} \;
Для фактического удаления:
find /home/ -name '*.txt' -exec rm -f {} \;
Конечно, замените 'txt' тем, что вам нужно.
( Использованиеset -x
(xtrace
)для просмотра выполняемой команды)
$ set -x
$ touch #a{1..10}
+ touch
touch: missing file operand
Try 'touch --help' for more information.
$ touch a{1..10}
+ touch a1 a2 a3 a4 a5 a6 a7 a8 a9 a10
Знак решетки #
в начале слова превращает остальную часть строки в комментарий. Вам нужно процитировать:
$ touch "#"a{1..10}
+ touch '#a1' '#a2' '#a3' '#a4' '#a5' '#a6' '#a7' '#a8' '#a9' '#a10'
Или в Bash вы можете использовать shopt -u interactive_comments
, чтобы полностью отключить обработку комментариев.
Проблема здесь в том, что вы хотите включить #
в имена ваших файлов, что для оболочки является индикатором «комментарий». Таким образом, весь текст после неэкранированного#
игнорируется, и ваша команда жалуется на отсутствующий операнд.
Одним из возможных решений является заключение этой части имени файла в кавычки, как в
~$ touch "#a"{1..10}