' '{for ...">

GMail-コマンドラインから新しいメッセージを確認する

猫を尾で引っ張らないようにしましょう。 まっすぐに



curl -u username:password --silent "https://mail.google.com/mail/feed/atom" | tr -d '\n' | awk -F '<entry>' '{for (i=2; i<=NF; i++) {print $i}}' | wc -l





結果は、受信ボックス内の新しい文字の数になります。







更新:コマンドは次のように簡略化できます

curl -u username:password --silent "https://mail.google.com/mail/feed/atom" | awk -F '<fullcount>|</fullcount>' '{for (i=2; i<=NF; i++) {print $i}}'



ウルヴァリンの ヒントをありがとう



更新:さらに簡単

curl -u username:password --silent "https://mail.google.com/mail/feed/atom" | grep -c "<entry>"



ヒント onix74



使用するコマンドは、洗練されたLinuxユーザーに完全に馴染みのあるものでなければなりません。 経験の浅い人のために、この行の各部が何をするかについての簡単な説明。

curl-ここでは、指定されたアドレスのページを取得します。 この場合、それはRSSフィードです

tr -d '\ n'-改行を削除します

awk-必要な部分を「噛む」(awk言語は通常 、さまざまな種類の文字列解析で特別です。 通常の文字列のこのような置換)

wc -l-行数を数えます



また、コマンドがもう少し複雑で、出力が解析される場合は、送信者と手紙の件名など、より多くの情報を取得できます。



curl -u username:password --silent "https://mail.google.com/mail/feed/atom" | tr -d '\n' | awk -F '<entry>' '{for (i=2; i<=NF; i++) {print $i}}' | perl -pe 's/^<title>(.*)<\/title>.*<name>(.*)<\/name>.*$/$2 - $1/'







commandlinefu






All Articles