Предположим, что мне нужно отфильтровать имена всех моих файлов, которые не включают специальные символы.
ASDA123fasf - would pass
asasdasd*dasd - wouldn't pass
одна из многих альтернатив будет find . -maxdepth 1 -iregex '.*/[a-z0-9.]*' -ls
если вы думаете, вам может понадобиться использовать это часто, Вы могли бы даже создать псевдоним, чтобы сократить команду:
Примечание: ниже псевдонима будет работать только в текущей директории, хотя вы могли бы легко создать скрипт, который будет парсить аргумент командной строки каталог..
alias myls="find . -maxdepth 1 -iregex '.*/[a-z0-9.]*' -ls"
если вы были, чтобы сделать это, каждый раз, когда вы выдаете команду myls, вы получите желаемый результат без дополнительного ввода. Ленивый или эффективнее, решать вам.
источники: командир байт комментарий здесь!д5]
байт Командор комментарий здесь!д6] - конкретно этот ответ man find
Один из многих альтернатив был бы find . -maxdepth 1 -iregex '.*/[a-z0-9.]*' -ls
. Если вы считаете, что вам может понадобиться использовать это часто, вы даже можете создать псевдоним, чтобы сократить команду:
Примечание: Следующий псевдоним будет работать только в текущем каталоге, хотя вы можете легко создать скрипт, который будет анализировать аргумент командной строки для каталога.
alias myls="find . -maxdepth 1 -iregex '.*/[a-z0-9.]*' -ls"
Если вы должны это сделать, каждый раз, когда вы выдает команду myls, вы получите желаемый результат без дополнительной записи.
Источники: комментарий байтового коммандера здесь
Комментарий байтового коммандера здесь - в частности, этот ответ
man find