Греп – ^ (\ s * $) vs ^ \ s * $

Я хочу найти поле, в котором есть только пробелы. Считая, что эти две команды дали мне разные результаты:

grep "^\s*$" -E -c grep "^(\s*$)" -E -c 

Еще одна вещь. Каков правильный способ сказать «пространства только или что-то другое»:

 grep "^(\s*$|STRING)" -E -c 

или

 grep "(^\s*$|^STRING)" -E -c 

Или они эквивалентны?

  • Как создать загрузочную флешку для «efi-shell»
  • Ключ удаления не работает должным образом в интерактивной оболочке PHP
  • Сортировка вывода «find»?
  • Время вилки против поточной системы
  • как выбрать одну звуковую дорожку, если в медиафайле есть несколько звуковых дорожек с использованием mpv?
  • Если я нахожу «sudo» в начале одного лайнера, применим ли он к остальным командам?
  • Как создать цепочку команд?
  • Мне очень нравится меркуриальный гейгорный стиль. Есть ли оболочка Linux, которая ее поддерживает?
  • One Solution collect form web for “Греп – ^ (\ s * $) vs ^ \ s * $”

    Обычный grep не понимает \s или круглые скобки. (*) Вы хотите, чтобы grep -P доступен, или grep -E / egrep и write \s out как [ ^I] (где ^ITab , grep без -P doesn Не понимаю. Кроме того, с двойными кавычками некоторые оболочки будут обрабатывать \s и оставлять только s ; вы всегда должны использовать одинарные кавычки с регулярными выражениями из оболочки, за исключением случаев, когда вам действительно нужно интерполировать переменную (например, что-то вроде '^\s*'"$foo"'\s+\(' , переключение цитирования в среднем параметре) ,

    Альтернативы в вашем втором примере (опять же, с -P и одинарным цитированием вместо double) делают то же самое. Первое технически лучше, потому что grep не будет отступать так же сильно, но практически это не имеет значения.

    (*) педантизм: спин-шрамы-парсеры будут работать, снова требуя одинарного цитирования, чтобы оболочка не ест обратную косую черту. egrep обычно проще.

    Interesting Posts

    Лучший способ архивирования вложений?

    Выполнение команды оболочки из PHP с помощью shell_exec

    Могу ли я сделать так, чтобы все новые пользователи, созданные в будущем, по умолчанию имели истекший пароль?

    Войдите через ssh без пароля, удалив файл authorized_keys после первой попытки входа в систему

    Обновление Apple Keyboard с помощью Linux Mint

    Является ли Pidgin интегрированным с Gnome Shell?

    Эквивалент обновления-grub для систем RHEL / Fedora / CentOS?

    Возможность подключения двух удаленных Linux-машин

    Как монтировать `img`, созданный с / bin / dd на жестком диске?

    Является ли ssh-agent хранить мою кодовую фразу?

    Настройка двойного монитора с различными разрешениями с использованием драйвера open source ati

    Как была определена геометрия диска (C / H / S) в таблице разделов флэш-памяти?

    Сравнение каждого файла в двух каталогах и копирование его на другой, если он отличается от его аналога

    Maldetect + clamAV не распознает скрытые вредоносные программы base64

    Считать файлы в дереве каталогов

    Linux и Unix - лучшая ОС в мире.