Кавычки в командах - пример grep

Кавычки в командах - пример grep

Я хотел узнать, когда использовать кавычки с grep или другими инструментами. Например, следующие две команды дают одинаковые результаты.

[Jhm@localhost /]$ grep Hello ./testfile 
 Hello world

[Jhm@localhost /]$ grep "Hello" ./testfile 
 Hello world

Имеет ли значение, заключено ли слово в кавычки?

решение1

Только если слово содержит символы, имеющие особое значение для оболочки.

grep "Hello?" ./testfile

будет искать буквальную строку Hello?в файле. Однако, например,

grep Hello? ./testfile

будет искать строку , если в текущем каталоге HelloAесть файл , поскольку будет соответствовать любому отдельному символу в качестве шаблона поиска.HelloA?

Я предполагаю, что вас не удивляет, что

grep Hello World ./testfile

и

grep "Hello World" ./testfile

разные.

Связанный контент