[room] emacs shell command = grep ?
Evgenii Terechkov
=?iso-8859-1?q?evg-krsk_=CE=C1_yandex=2Eru?=
Вт Фев 10 15:08:45 MSK 2009
Michael Bykov пишет:
> Евгений,
> попытаюсь еще раз.
> Есть последовательность команд, последняя - grep.
> Нужно ее выполнить, причем параметр - то слово, которое высвеченно.
> Например, высвеченно 'word'. Нужно сделать ls | grep word.
> В руководстве сказано, что stdin передается в command по-умолчанию.
> Да, передается. Например в cat или в gpg. Почему не передается в grep?
Читайте внимательно: "stdin". Это не command line
arguments.
> Проще всего - высветите любое слово и сделайте
> M-| ls | grep <RET>.
> вы увидите ошибку.
Никакой ошибки - читайте внимательно документацию.
> Как записать цепочку ls | grep чтобы туда попало значение word?
> Как написать такую цепочку команд?
Надо писать код, из коробки этого я не вижу. Например, вот такой:
(defun shell-command-and-grep-by (command start end)
(interactive "sCommand:\nr")
(shell-command (format "%s | grep -e %s" command
(buffer-substring-no-properties start end))))
Далее поправьте по вкусу.
P.S.: с таки лучше в xmpp://emacs@conference.jabber.ru
--
С уважением, Терешков
Евгений.
Подробная информация о списке рассылки smoke-room