システム レポートに個人用の RSS フィードを使用することを考えているので、その $1 を RSS フィード ala に送信するスクリプトを作成できないかと考えていますself_test_command > rss_report.sh
。私も現在 RSS フィードをセットアップしていません。Linux ボックスから実行する RSS フィードをセットアップする最も簡単な方法は何でしょうか?
質問する
1322 次
2 に答える
6
xmlstarletを使用した別のソリューションがあります。
最初の RSS フィード ファイル feed.xml を作成します。
<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
<channel>
<title>My RSS Feed</title>
<description>This is my RSS Feed</description>
</channel>
</rss>
xmlstarletを使用して項目を追加するシェル スクリプトを作成します。
#!/bin/sh
TITLE="My RSS entry"
LINK="http://example.com/entry4711"
DATE="`date`"
DESC="Good news"
GUID="http://example.com/entry4711"
xmlstarlet ed -L -a "//channel" -t elem -n item -v "" \
-s "//item[1]" -t elem -n title -v "$TITLE" \
-s "//item[1]" -t elem -n link -v "$LINK" \
-s "//item[1]" -t elem -n pubDate -v "$DATE" \
-s "//item[1]" -t elem -n description -v "$DESC" \
-s "//item[1]" -t elem -n guid -v "$GUID" \
-d "//item[position()>10]" feed.xml ;
もちろん、一般的な解決策を得るには、コマンドラインからパラメーターを渡すことをお勧めします。
-d コマンドは、フィードが無限に大きくならないようにしますが、最大で 10 個のアイテムを持つようにします。
于 2013-01-18T10:53:27.097 に答える
3
に適切な解決策がありますcommand line
。バックグラウンドでPerl Template::Toolkitモジュールを使用する (今すぐ Perl を学ぶ必要はありません) :
最初にパッケージperl-template-toolkit
をインストールしてから、テンプレート ファイルを作成しますrss.tpl
。
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>[% title %]</title>
<description>[% desc %]</description>
</channel>
<!-- rest of the RSS -->
</rss>
そして、コマンドを実行します:
tpage --define title=foobar --define desc=description --interpolate rss.tpl
出力は次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>foobar</title>
<description>description</description>
</channel>
<!-- rest of the RSS -->
</rss>
ここで変更する完全なテンプレートを見つけることができます
于 2012-10-10T20:21:13.123 に答える