регулярное выражение для победы!
использование find - лучший способ, который я могу придумать, за исключением использования регулярного выражения, которое может уже существовать в вашей конкретной оболочке или в приложении, которое вы используете сами. Сначала я попробовал:
touch one&touch two &touch three&find -name "one|two|three" -exec chown -644 {} \;
Но вы обнаружите, что труба не работает в этом случае. Еще одна печальная вещь для изучения ... как изучение chmod, chown, chgrp, et. и др. не поддерживает выбор / исключение нескольких файлов / регулярных выражений ...
Решение, которое я нашел:
/programming/19111067/regex-match-either-string-in-linux-find-command
find \( -name one -o -name two -o -name three \) -exec chown -644 {} \;
Итак, не так уж много регулярных выражений для выигрыша, но, по крайней мере, у нас есть способ внедрить список файлов в аргументы программы в один слой.
вы заметите, что вам нужно экранировать метасимволы () и добавить параметр -o для каждого дополнительного имени ...
другие ссылки и контент от меня, которые могут вас заинтересовать во время ваших путешествий:
Различные лакомые кусочки - заметки Корн Борна и его друзей. - Сайт Дэйва Хорнера
Приветствия.
--dave
Если файлы, которые вы хотите изменить, находятся в одном каталоге, вы можете использовать их с нужным шаблоном.
например, мне нужно, чтобы все загруженные файлы .run в pwd были изменены на исполняемые:
источник