Windows 10 Ubuntu WSL не отображает имена выходных файлов grep

я использую

grep -rnl "./" -e "search_string"

для поиска в содержимом файла папки «search_string», но не отображает имена файлов. Параметр «-H» (принудительное имя файла в выводе) не меняет вывод. Параметр "-l" (возвращать в выводе только имена файлов) печатает несколько пустых строк, пропорциональных количеству файлов, содержащих "строку_поиска" (у меня есть смутное представление о том, сколько файлов содержит ее), т.е. кажется, что grep возвращает имена файлов, но WSL не может их распечатать.


person Sean S    schedule 24.11.2018    source источник
comment
Я думаю, что этот ответ может быть связан с символом возврата каретки, который может вызывать пробелы.   -  person ellemenno    schedule 02.02.2019


Ответы (3)


Можете ли вы поделиться скриншотом того, что вы видите?

Я запустил ваш сценарий в папке, содержащей файл с именем hello.txt, который содержит слово «мир», и я ДЕЙСТВИТЕЛЬНО вижу имена файлов, содержащих «мир»:

введите здесь описание изображения

person Rich Turner    schedule 29.11.2018

У меня та же проблема, и я не знаю почему, но в качестве обходного пути использование Git Bash вместо WSL работает отлично.

person ShaunOfTheLive    schedule 08.12.2018

Используйте Windows CMD вместо PowerShell.

Я столкнулся с той же проблемой при использовании PowerShell. Переключение на обычное окно CMD позволило мне снова увидеть имена файлов.

person Joe    schedule 29.03.2019