Мышь, прокручивающая и лифты, будут работать, если Вы включите им в Вашем .screenrc.
Q: Моя xterm полоса прокрутки не работает с экраном.
A: Проблема состоит в том, что xterm не позволит прокручивать, если буфер дополнительного текста будет выбран. Стандартные определения termcap инициализируют возможности ti, и te переключаются на и от буфера дополнительного текста. (Полоса прокрутки также не работает, когда Вы запускаете, например, 'vi'). Можно сказать экрану не использовать эти инициализации путем добавления строки termcapinfo xterm ti @:te к ~/.screenrc файл.
Таким образом в моем .screenrc, я имею:
termcapinfo xterm* ti@:te@
В tmux это было бы что-то как (.tmux.conf):
set -g terminal-overrides 'xterm*:smcup@:rmcup@'
xargs
ожидает вход в формате, который не производит никакая другая команда, таким образом, трудно использовать эффективно. Что идет не так, как надо, вот то, что у Вас есть файл, имя которого должно быть заключено в кавычки на входе к xargs
(вероятно, содержащий a '
).
Если Ваш grep поддерживает -r
или -R
опция для рекурсивного поиска, используйте его.
grep -r word .
Иначе используйте -exec
основной из find
. Это - обычный способ достигнуть того же эффекта как xargs
, кроме без ограничений на имена файлов. Довольно последние версии find
позвольте Вам группировать несколько файлов в единственном вызове к вспомогательной команде. Передача /dev/null
кому: grep
гарантирует, что это покажет имя файла перед каждым соответствием, даже если это, окажется, назовут на единственном файле.
find . -type f -exec grep word /dev/null {} +
Более старые версии find
(в более старых системах или OpenBSD или уменьшенных утилитах, таких как BusyBox), может только назвать вспомогательную команду на одном файле за один раз.
find . -type f -exec grep word /dev/null {} \;
Некоторые версии find
и xargs
имейте расширения, которые позволяют им связаться правильно, с помощью нулевых символов для разделения имен файлов так, чтобы никакое заключение в кавычки не требовалось. В эти дни только OpenBSD имеет эту функцию без наличия -exec … {} +
.
find . -type f -print0 | xargs -0 grep word /dev/null
Я предполагаю, что Вы имеете в виду первую опцию
рекурсивный grep, для поиска содержания в файлах
grep -R "content_to_search" /path/to/directory
рекурсивный ls, для поиска файлов то соответствие
ls -lR | grep "your_search"
Если у Вас есть инструменты GNU (который Вы делаете, если тег Linux точен), затем, можно использовать -print0
и -0
обойти обычные проблемы заключения в кавычки:
find . -type f -print0 | xargs -0 grep word
Я думаю, что Вы хотите найти строку в файлах
Попробовать find . -name "*" | xargs grep -l "string"
/dev/null
. Это - неприятность, когда выходной формат может варьироваться, в зависимости от того, сколько файлов подобрано... спасибо. – Peter.O 22.09.2011, 06:00