‘投稿ツール’ タグのついている投稿

シェルスクリプトから自動で短縮URL付きのつぶやきをTwitterに投稿。

2010年4月21日 Linux, スクリプト関連, 雑記

行けた行けた。半角スペースの入った引数つけるときは二重引用符じゃダメなのねw
何はともあれ上手く行ったので公開。制限事項は多分前回のものとほとんど変わらずURLの中に「スペース」が混じるとそこで区切られちゃう点。

使い方は簡単でスクリプトの実行時に引数として投稿内容を単引用符(Shift+7 のヤツ)で括ったものを付けて実行するだけ。一応複数のURLでも大丈夫。
URLと本文の切り分けに半角スペースを使っているので、半角スペースを含むURLには前述の通り使えない。

その辺のことは前回の記事を自分で読んだり実際に動かしてみたりして確認してくだしあ。
いま何か頭が働かないんだ。そんなわけで最終成果物。

#!/bin/bash
str=”$1″
#第一引数からURLを雑に抽出し配列へ
array=( `echo “$1” | sed -e ‘s/http/nhttp/g’ -e ‘s/ftp/nftp/g’ -e ‘s/ /n/g’ | grep tp://` )
#配列に含まれる要素の数分処理
for (( i = 0; i < ${#array[*]}; i++ ))
{
  #URLエンコード/配列2へ流し込み
  array2[i]=`echo “${array[i]}” | nkf -eMQ | tr = %`
  #goo.glで配列2のURLを短縮URLに/配列3へ流し込み
  array3[i]=`curl -G “http://ggl-shortener.appspot.com/?url=${array2[i]}” | sed ‘s/”/n/g’ | grep tp://`
  #変数strのURL部分を差し替え
  str=`echo $str | sed “s%${array[i]}%${array3[i]}%”`
}
#文字数を軽く確認してからつぶやく
if [ ${#str} -lt 141 ]
  then
    IPS=`sed -n 1p ~/working/shellscript/ips.list`
    curl -u “$IPS” -d status=”$str” http://twitter.com/statuses/update.xml
  exit 0
else
  echo ‘文字数多いみたい。’
  exit 1
fi

大まかな処理の流れはコメント行の通り。
コメント行読んでどうにかしろっていうのもアレな感じのコードなので、流れだけもうちょっと詳しく書いておく。

まずは1~4行目 変数strに第一引数の中身を代入。次に配列変数arrayにURLを抽出し抽出結果を代入。
5~13行目 for文で配列に含まれる要素の数の分だけ処理。配列変数array2にURLエンコードされたarrayの中身を代入。array2の中身をgoo.glに投げて配列変数array3に結果を代入。変数strのURL部分を差し替えて上書き。
14~23行目 文字数を軽く確認して141文字未満ならつぶやく。そうでないならエラーで終了。

こんな感じ。あ、言うほど面倒くさくなかったね。どうでも良いけどいつも通りインデントが全角なのでそこだけ注意してください。

さ、あとは仕掛かりのリスト生成をこなせば、いつも通りまったり絵を描いて過ごせるよ。

ふぉふぉふぉ、役に立ったならご褒美くらいくださってもよろしくってよ。
ホラこんな所にアマゾンのウィッシュリストが。

Twitterはじめましたお

2010年1月18日 Linux, 雑記

セカンドライフ臭がしていまいち近寄りがたかったTwitter。
”はっさく〜はっさく〜”がやりたくてちょっと登録してみた。

http://twitter.com/fyopue

ガチホモ〜♪ガチホモ〜♪じょうがのガチホモ〜♪

Twitter登録ついでに新しくGnome Blog以外の投稿ツールもテスト中。
機能が多くて若干鬱陶しいけども、タグ、カテゴリも使えるみたい。
そんなわけで投稿テストも兼ねて。

Gnome Blogを使ってみる。

2009年10月8日 Linux, 雑記

Gnome BlogっていうのはLinuxのブログ投稿アプリケーション。

エントリの投稿障壁(面倒くさいとか、飽きたとか)を少しでも下げてやろうと思って試してみたんだけど、どうやらほとんどメモ帳同然の機能しかない模様。

ただ、余計な機能が無い分操作はとっても簡単で使う前に必要ならブログの管理画面からXML-RPCプロトコルを有功にしてやらないといけないけど、それ以外はユーザー名とパスワードの入力だけでいいみたい。

対応しているブログツールは

Blogger.com/Blogspot.com、Advogato.org、Movable Type、WordPress、LiveJournal.com、Pyblosxom と bloggerAPI か MetaWeblogAPI に対応したもの。

入手は公式サイト?かapt、synapticあたりで探すといい。yumでも多分大丈夫。確認してないけど。

こんだけ楽ちんなら色々投稿しても苦にならないかも。