これはgoogleカレンダーのicsファイルです。bashでICSファイルを解析する
新しいプレイイベントが追加または変更されたかどうかを確認するたびにダウンロードし、IRCに表示されます。
BEGIN:VEVENT
DTSTART:20160612T201000Z
DTEND:20160612T211000Z
DTSTAMP:20160519T200239Z
UID:[email protected]
CREATED:20160518T153226Z
DESCRIPTION:
LAST-MODIFIED:20160518T153226Z
LOCATION:OCS Choc
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Ash vs Evil Dead Saison 1 Episode 9 & 10
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Brussels:20160611T203500
DTEND;TZID=Europe/Brussels:20160611T233500
DTSTAMP:20160519T202440Z
UID:[email protected]
RECURRENCE-ID;TZID=Europe/Brussels:20160611T203500
CREATED:20160503T144152Z
DESCRIPTION:
LAST-MODIFIED:20160518T123213Z
LOCATION:RTS Un (Suisse)
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:The Mysteries Of Laura Saison 2 Episode 1 à 4
TRANSP:TRANSPARENT
END:VEVENT
New Events Created :
dim. juin 12 20:10 Ash vs Evil Dead Saison 1 Episode 9 & 10 - OCS Choc
Last Modified Event :
sam. juin 11 20:35 The Mysteries Of Laura Saison 2 Episode 1 à 4 - RTS Un (Suisse)
に私はbashスクリプトで変換する必要があります。
は、私はこのようなファイルを変換する必要があります。 私が取得する必要があります:
をDTSTART が LAST-MODIFIED LOCATION 概要
を作成し、私が作成したとLAST-MODIFIED
擬似コード比較する必要があります。
if (created = LastModified)
then
echo createdevent
else
echo lastModifiedEvent
fi
Ahh - 現地日が必要ですか?あなたのロケールは何ですか? –
@ charles-duffy今日の日付で検索したい。 私の変数のベータリリーススクリプトにこれを使用しました: 'dateOfDay = $(date +%Y%m%d)' –
あなたの出力は人間の言語で日付を表示します。それが本当にあなたの意図する出力の一部ですか、それとも今日のフィルタが重要なのですか? –