Странное поведение “ls-a | grep ^\\”.

На FreeBSD Вы могли использовать pw user add user_name добавить нового пользователя

Или adduser сценарий

10
05.04.2015, 19:36
3 ответа

Вам нужно поставить Grep Regex внутри цитаты.

ls -a | grep '^\.'

Примечание: Не анализируйте вывод команды LS .

11
27.01.2020, 19:59

Если вы выполняете CMD LS -A | grep ^ \. Тогда Греп не считает «\» как особый характер и значение «». не сбежать.

Когда мы используем CMD LS -A | grep "^ \." затем Greep считает «\» как особый характер и значение «». сбежается. Это даст вам результат, как и ожидалось.

Если вы хотите использовать GREP CMD без кавычек, то вам следует избежать символа «\». Вы можете ожидать результата без двойных кавычек следующую команду. LS -A | grep ^ \\.

Для получения подробной информации о значении специальных символов в Regex, обратитесь к следующей ссылке. http://www.regular-expressions.info/quickstart.html

0
27.01.2020, 19:59

Процитируйте аргумент к grep, таким образом ls -a | grep '^\.'

Причина в том, что оболочка обрабатывает \. и превращает ее обратно в обычную . , которая grep затем воспринимается как односимвольный спецсимвол. В случае сомнений, всегда цитируйте строку, которая содержит (или может содержать) символ, характерный для оболочки.

20
27.01.2020, 19:59

Теги

Похожие вопросы