Curl って便利ですよね。でもいつも使いかたを忘れて man curl ってやってしまいます。

私が使うときは単純なことしかしないので、よく使うオプションをまとめようと思います。

オプション

オプション 長いオプション 内容
-d --data POST リクエストを送信する。"value=name" の形式で指定する
-H --header HTTP ヘッダを指定する。ユーザエージェントとかリファラとか
-L --location リダイレクトに対応する
-o --output 結果をファイルに出力する
-O --remote-name 結果をファイルで取得する。こちらは指定したファイルのまま保存される
-s --silent サイレントモードで実行する
-u <user:pass> --user <user:pass> basic 認証のユーザ名とパスワードをセットする
-X --request GET や POST を指定する

コマンド例

POST リクエスト

curl https://examples.com/hoge.json -X POST -d "user=user" -d "password=pass"

ファイル取得

curl -O https://examples.com/test.txt

Basic 認証のかかったサイトにログイン

curl -u user:pass http://examples.com

参考

Linuxコマンド集 - 【curl】ファイルのダウンロードやアップロードを行う:ITpro