cURL
URLを元にファイルをやりとりするコマンドラインツールです。
CURLじゃなくてcURL
Scrapbox の API を叩いてみる。
$ curl https://scrapbox.io/api/pages/scrapboxlab/
API を叩いてこのページを表示させる。
$ curl https://scrapbox.io/api/pages/scrapboxlab/cURL/text
jqと組み合わせて使うといいらしい。
$ curl https://scrapbox.io/api/pages/scrapboxlab/\?limit=50 | jq '.pages[].title'
ページタイトルが日本語の場合は、この部分をURLエンコードをする必要があるので、もうひと工夫が必要です。
/api/pages/:projectName/:pageTitle
サンプルとして、以下のようなシェルスクリプトを作成しました。
code:sbcat.sh
#!/bin/bash
ProjectName="suto3"
cmdname=basename $0
function usage()
{
echo "Usage: ${cmdname} pageTitle" 1>&2
}
# check arguments
if $# -ne 1 ; then
usage
exit 1
fi
# URLエンコード変換
PageTitle=echo -n "$1" | python2 -c 'import sys, urllib; print urllib.quote(sys.stdin.read()),'
curl -s https://scrapbox.io/api/pages/$ProjectName/$PageTitle | jq -r '.lines[].text'
exit 0
# EOF
このスクリプトは、コマンドライン上から、
$ ./sbcat.sh ページタイトル
というように、ページタイトルを指定すると、該当するページのテキストを端末上に表示します。
curl