curlコマンドでAPIをGET, POSTする方法

GET

curl -H "Accept: application/json" -H "Content-type: application/json" -X GET [URL]

POST

curl -H "Accept: application/json" -H "Content-type: application/json" -X POST -d [data] [URL]

Sample: GET

curl -H "Accept: application/json" -H "Content-type: application/json" -X GET http://127.0.0.1:8000/api/tables/

Sample: POST

curl -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{"name":"sample table"}' http://127.0.0.1:8000/api/tables/

シェルスクリプトでmailコマンドによるメール送信

シェルスクリプトでメールを送る方法

#!/bin/sh

address="user@domain"
subject="題名"
contents="本文"
echo "$contents" | mail -s "$subject" "$address"

【応用】複数メールアドレスにメールを送る

#!/bin/sh

address=("user1@domain" "user2@domain")
subject="題名"
contents="本文"

for i in ${address[@]}
do
    echo "$contents" | mail -s "$subject" "$i"
done

convertコマンドで解像度を指定する

gnuplotで出力されるepsファイルをpngファイルに変換するために使っているconvertコマンドで解像度を指定する方法です。

調べるたびにqualityが出てきて、あれなんか違う。。ってなるので備忘録として

convert -density 800 graph.eps graph.png

densityオプションを使う
数字は大きければ大きいほど解像度が良くなるみたい

WordPressのサーバを移行する(同一ドメイン)

自宅のサーバから某VPSにブログを移行したときのログです

移行するデータは次の2つ

  • ドキュメントルート内にあるWordPress用のディレクトリ
  • WordPressのデータベース(MySQL)

まずは上記の2つをhomeにコピー

cp -a /var/www/html/blog .
mysqldump -u root -p wordress > wordpress.dump

(-pはコマンドを打った後にパスワードを入力するオプション)

次はデータをtarで固めてデータを移行

移行元サーバで以下のコマンドを実行

tar zcvf blog-data.tar.gz blog wordpress.dump

移行先のサーバで以下のコマンドを実行

tar zxvf blog-data.tar.gz

あとは、WordPressディレクトリをドキュメントルート内に移動し、データベースを新規作成し、復元

$ mysql -u root -p

MariaDB [(none)]> CREATE DATABASE wordpress CHARACTER SET utf8;
Query OK, 1 row affected (0.001 sec)

MariaDB [(none)]> GRANT ALL ON wordpress.* TO wordpress@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.002 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> \q
Bye

$ cp -a blog /var/www/html/
$ mysql -u root -p wordpress < wordpress.dump

ここまでの作業が終わると
http://(移行先のIPアドレス)/blog/
にアクセスするとブログを確認できる

最後にDNSサーバにてAレコードを変更すれば完了