Использованиеbash
:
shopt -s globstar
grep 'pattern'./**/filename[123].ext
При включенной опции оболочки globstar
шаблон **
ведет себя как *
, но совпадает с /
в путях. Это будет работать, если шаблон не соответствует тысячам файлов, и в этом случае вы, вероятно, получите ошибку «Слишком длинный список аргументов» от оболочки. Это также не проверяет, относятся ли совпадающие пути к обычным файлам или нет, как это сделал бы find
со своим тестом -type f
. Также. если шаблон не соответствует ничему , он останется нераскрытым.
В цикле, который решает все три вышеупомянутые проблемы:
shopt -s globstar
for pathname in./**/filename[123].ext; do
[ -f "$pathname" ] && grep 'pattern' /dev/null "$pathname"
done
Команда sudo позволяет вам выполнить команду от имени другого пользователя (, такого как root ), если вы входите в группу sudo -. На самом деле вы не входите в систему как этот пользователь. Пароль, который вы используете с командой sudo
, является паролем учетной записи, в которую вы вошли в данный момент.
Вход в систему как root на tty2 (ваш первый снимок экрана )будет таким же, как выполнение команды su
на оконном терминале X -.