Странная проблема с простой командой перенаправления - PullRequest
0 голосов
/ 05 октября 2019

Возникла странная проблема с простой командой, которая отказывается работать - я пытаюсь запустить команду 'find' и перенаправить вывод в файл

Find записывает результаты на экран, норедирект никогда не создает файл.

FYI - Запуск Ubuntu 19.10, оболочка bash

Я пробовал около полудюжины различных комбинаций этой команды, ничего не работает.

find / -name caffeine >> xxx
find / -name caffeine -print >> xxx
find / -name "caffeine" -print >> xxx
find / -name "caffeine" {} \; >> xxx   
This gives an error "find: paths must precede expression: `{}'"

none of these ever creates the file xxx

Помощь!

1 Ответ

0 голосов
/ 09 октября 2019

">>" в основном используется для добавления к существующему файлу. Обычно, если вы перенаправляете весь вывод в какой-то файл «>», вам следует выполнить эту работу.

Например:

Если вы пытаетесь найти файл, заканчивающийся на .txt, в вашем текущем каталоге и перенаправить вывод в новый файл. Следующий код должен работать:

find . -name "*.txt" > filename

.       : Specifies that the directory you are looking for is the current 
          directory.
-name   : Looking for the file with matching name
"*.txt" : Finds all the files ending with .txt extension
>       : Redirection to a file

Надеюсь, это поможет. Если вы более конкретны относительно того, что вы хотите. Я могу помочь тебе больше.

...