что означает «^ $ 1» в сценарии оболочки?

#!/bin/sh #emp3.sh: using if and else # if grep "^$1" /etc/passwd 2>dev/null then echo "pattern found - job over" else echo "pattern not found" fi 

в приведенной выше программе «^ $ 1» и то же самое, что и «s1 / *», кто-нибудь может объяснить это

One Solution collect form web for “что означает «^ $ 1» в сценарии оболочки?”

grep – это программа, которая ищет регулярные выражения. Первый аргумент для grep – это шаблон для поиска. В скриптах и ​​функциях $1 является ссылкой на первый аргумент, переданный этому скрипту или функции. Добавленный аргумент ^ является стандартным модификатором регулярных выражений, который соответствует началу строки – таким образом вы можете гарантировать, что grep только печатает строки, в которых шаблон, который вы ищете, помещается сразу в начале новой строки и игнорируется, если их найти в другом месте.

Обратите внимание, что ^ может иметь альтернативный смысл отрицания, хотя здесь и не здесь.

  • Вывод команды при передаче по другой команде
  • Удаление разрывов строк, пробелов и вкладок из каждого файла
  • Удалите начальные пробелы перед возможными shebang
  • Bash: увеличивать переменную в цикле while?
  • запустить bash в скрипте
  • компиляция оболочки nginx не выполняется
  • Переменная в команде find задана новой переменной в bash
  • Awk не дает никакого результата
  • В чем смысл $? в сценарии оболочки?
  • Как я могу использовать команды bash, если тесты и найти команды вместе?
  • Какой самый простой способ найти неиспользуемый локальный порт?
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.