2011-03-08 1 views
1

Можно ли захватить текст из текстового файла в сети через grep/cat/awk или someting else? (в bash)Можно захватить текст из онлайн-файла .txt через bash?

Способ, которым я сейчас это сделаю, это загрузить текстовый файл на диск и grep/cat в файл для его текста.

Curl -o "$ TMPDIR"/"text.txt" http://www.example.com/text.txt

кот/Grep "$ TMPDIR" /text.txt

гт -rf "$ TMPDIR"/"text.txt"

Является ли один из захватчиков текста (или другого) способным захватить что-то из текстового файла в Интернете? Это избавит вас от всего процесса downloadfile-readfile-deletefile и просто заменит его одной командой, значительно ускорив ситуацию, если у вас много таких строк.

Я не мог найти что-либо через страницы с man или googling, может быть, вы, ребята, что-то знаете.

+0

..на стороне примечания. Надеюсь, вы не разработали привычку просто использовать 'rm -rf' всякий раз, когда хотите что-то удалить (в таких случаях, когда достаточно простого' rm') это может стать потенциально опасным в будущем. – Asmus

+0

Почему вы делаете принудительное рекурсивное удаление одного временного файла? Просто сделайте 'rm" $ TMPDIR/text.txt "'. Обратите внимание, что вам не нужен дополнительный набор кавычек. –

ответ

4

Использование curl -o - http://www.example.com/text.txt | grep "something".

-o - сообщает curl, что он «загружает на stdout», другие утилиты, такие как wget, lynx и links, также имеют соответствующую функциональность.

+0

Спасибо, это хорошо работает. – devilhunter

0

Вы можете попробовать netcat - это именно то, для чего он был создан.

+0

netcat слишком низкоуровневый. Вы должны сами построить заголовки HTTP - завиток намного лучше для этого. –

0

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

curl … | cat/grep …