Created
April 20, 2024 10:53
-
-
Save sasasin/ede74bb51aef815d6bbb579a4c50367c to your computer and use it in GitHub Desktop.
Windows版KindleアプリのXMLから購入年月日順にASINを抜き出すやつ
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash -e | |
# Windows版Kindleアプリは、購入済みKindle蔵書一覧をXMLファイルとしてローカルに置く。 | |
# XML から JSON に簡易に変換できる CLI ツールとして dasel を利用している。 | |
# https://daseldocs.tomwright.me/ | |
# dasel は凝ったクエリは未だ jq ほどには記述できないので、 dasel からの出を jq で加工している。 | |
# 依存ツールは scoop でインストールできる。 | |
# sort,tr,awk,tailなどUNIXコマンドは Git Bash で入れることにしている。趣味に合わせて好きにしたらよい。 | |
# scoop install main/git | |
# scoop install extras/dasel | |
# scoop install main/jq | |
# この作例では、購入年月日順にASINを取り出している。 | |
dasel select \ | |
-f ~/AppData/Local/Amazon/Kindle/Cache/KindleSyncMetadataCache.xml \ | |
-r xml -w json -s '.' \ | |
| jq -r '.response.add_update_list.meta_data[] | select(.purchase_date !="") | [.purchase_date, .ASIN] | @csv' \ | |
| sort \ | |
| tr -d '"' \ | |
| awk 'BEGIN{FS="T"}{print $1 "," $0}' \ | |
| awk 'BEGIN{FS=","}{print $1 "," $3}' \ | |
| awk 'BEGIN{FS=","}{print $2}' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment