ファイルを取得できるターミナルコマンドを見つけたいのですが http://api.twitter.com/1/statuses/user_timeline.xml?screen_name=SOMEUSERNAME&count=1これを解析して、ユーザーの Twitter ステータスを見つけます。ステータスは、ツリーの「ステータス -> ステータス -> テキスト」の場所内にあります。
libxmlとxmllintを調べました。xmllintについては正しい方向に進んでいると思いますが、確信はありません。xmllintでは、xmllint --shell file.xml
と を実行できることはわかっていますcat //statuses/status/text
。しかし、次のようなコマンドを実行できるとよいと思います。カール|XMLLINT|翻訳これにより、ファイルをダウンロードし、解析し、ステータスを一挙に返すことができます。
答え1
Perl の XML::Twig には以下が付属しています...
xml_grep --nowrap --text_only /statuses/status/text
XML::XPath では次のことができます:
perl -MXML::XPath -E 'my $xp = XML::XPath->new(ioref => \*STDIN); say $xp->getNodeText("/statuses/status/text");'
または
perl -MXML::XPath -E 'my $xp = XML::XPath->new(ioref => \*STDIN); for my $node ($xp->find("/statuses/status/text")->get_nodelist) { say $node->string_value; }'
(もちろん、ネット::ツイッターあまりにも。)