grep. * возвращает результаты из .bash_history и жалуется на

Я новичок в Linux, и до сих пор я играл с некоторыми утилитами, в частности утилитой grep. Я решил создать новый файл (метко названный «newfile») со следующим содержимым:

Lady of the night, I hold you close to me, And everything is out of sight, I think I'll be alright. 

Когда я пытаюсь запустить его через grep, введя «grep. * Newfile», я ожидал появления только строк файла; однако он напечатал несколько результатов, начиная с:

 grep: ..: Is a directory 

И следуйте за всей .bash_history (которую я оставлю для того, чтобы сохранить этот пост коротким), а затем содержимое нового файла. Почему это так? Есть ли способ исправить это? Должен ли я изменить свое регулярное выражение?

3 Solutions collect form web for “grep. * возвращает результаты из .bash_history и жалуется на”

Сделай эксперимент! Бег

 echo grep .* newfile 

Что вы можете сделать из результата? Как результат изменяется, когда вы указываете (помещаете в одиночные или двойные кавычки) первый аргумент grep?

Если вы хотите получить прямую допинг, прочитайте спецификацию POSIX для расширения Pathname . Знание всего о различных расширениях превратит вас в гуру-оболочку в мгновение ока 🙂

Оболочка интерпретирует ваш * , не передавая его в grep как регулярное выражение. Чтобы использовать поиск в регулярном выражении с помощью grep , вам нужно передать ему параметр, указывающий, что это «это регулярное выражение» – при моей установке это -e . Попробуйте grep -e '.*' newfile .

Указав точку перед звездочкой (. *) И именем файла (newfile), вы сообщаете grep о поиске шаблона .\* В файле newfile, а оболочка расширяется .\* Для включения точечных файлов в ваш каталог.

Вы, вероятно, хотите что-то вроде:

 cat newfile 

который будет печатать строки вашего файла.

  • sed работает при вводе из эха, но не из файла
  • `cd` вверх по каноническому пути
  • Как получить строку X из строки file1 и Y из файла2 с помощью команды оболочки?
  • Сравнение файлов по строкам в awk с разделителем
  • Условный оператор Баша и присвоение
  • Как запустить скрипт после подключения к ssh
  • Получить путь здесь документа как файла
  • Список всех html-тегов в файле
  • run bash не работает команда alias в zsh
  • Команда не найдена в zsh
  • Хранение сценариев оболочки
  • Linux и Unix - лучшая ОС в мире.