pythonでは、requestパッケージを利用することでスクリプトからhttpのリクエストを送信することができます。 requests.get()で実行したたHTTPリクエストに対する応答テキストをstringの文字列として取得したい場合は、戻り値に対してcontent.decode()を...


pythonでスクリプトを実行すると"NameError: name 'true' is not defined"エラーが発生することがあります。 エラーになる原因はpythonの真偽値はtrue, falseではなく、先頭が大文字のTrue, Falseであるためで、先頭を大文字にすれば良いです。 ## ...


WindowsのiTuneで管理していた音楽/動画/podcastなどの情報を、macOSに移行させる方法を説明します。 - 参考 - [iTunes メディアファイルを探して整理する](https://support.apple.com/ja-jp/ht204318) - [iTunes ライブラリを新しいコンピ...


pythonで,変数がNoneTypeであるかを判定したい場合、条件式の`is None`を使用すると良いです。 ## サンプルプログラム ```language-python x = None print(type(x)) if x is None: print('xはNoneTypeです') ``` ## 実行例 ```language...


MySQLを使用しているシステムで、アプリケーション側ではなくmysqldが動作しているサーバ側にて、発行されたSQLを全てロギングしたい場合は、my.cnfに下記の定義を追加します。 ファイル名はなんでも良いですが、一般的に/var/log/の下に置くことが多いで...


macOSで外部接続したディスプレイを、メインのディスプレイとして使うためには、下記の設定を行います。 ## 作業手順 右上のアップルメニューより、システム環境設定->ディスプレイを選択します。 配置タブを選びディスプレイの配置が表示されて...


pythonで、指定されたディレクトリがなければ作成するプログラムです。 下記のサンプルでは、outputというディレクトリの存在チェックを行い、なければ作成しています。 ## プログラム ```language-python import os if not os.path.exists('...


macでvagrant+NFSによるフォルダ同期を使用している時、`vagrant up`コマンドの実行時にrootパスワードを聞かれる場合があります ```language-bash $ vagrant up ... ==> default: Exporting NFS shared folders... ==> default: Preparing to edit...


JetBrainのDBツールであるDataGripでは、SQLを実行したときに最初の500のみを返してくれます。 通常はレスポンスが速くなるので500行ぐらいで十分なのですが、大量データを分析したいときにこのデフォルト値を変更したい場合があります。 結果セットの...


mongoDBからデータをcsv形式で出力したい場合、下記のようにmongoexportコマンドを使用すると良いです。 ```language-bash $ mongoexport --db DB_NAME --collection COLLECTION_NAME --csv --fields id,name,created_at > output.csv ```


PHPのfile_get_contents()では通常GETでリクエストを送信しますが、POSTでリクエストを投げたい場合があります。 このような場合はfile_get_contents()の第3引数を使えば良いです。 ```language-php


[linux]dateコマンドで日付を取得する

2018年6月16日 | カテゴリ: Linux
linuxやmacのコマンドラインから、日付を取得したい場合dateコマンドを使うと便利です。 ## YYYYMMDDHH24MISS形式で取得する 下記のコマンドで、年月日時分秒の値が取得できます。 ```language-bash date +'%Y%m%d%H%M%S' 20180616141949 ``` ...


macのsedでタブに置換できない

2018年6月6日 | カテゴリ: Mac
macのsedコマンドでカンマをタブに置換したかったのですが、\tを指定してもtに置換されてしまう問題に遭遇しました。 ```language-bash cat foo.csv | sed -e "s/,/\t/g" ``` この問題を解消するには、"\t"の代わりにターミナルやvi上でキーボードの...


bashで単発で特定のコマンド群を実行したいときは、";"で各コマンドをつなぐことが多いですが、数が多い場合はbash関数の機能を使った方が見やすい。 ## 処理を関数の形でまとめる ```language-bash function func01() { echo "==============...


下記のコマンドでVagrantfile中にある"Vagrant"から始まる行の下に、定義を追加できます。 macで作業しているので、標準で入っているsed(BSDバージョン)ではなくgnu sedを使用しました。 ```language-bash brew install gnu-sed gsed -i -e '/^Vag...


MySQLでの日付処理

2018年6月6日 | カテゴリ: MySQL | タグ:
## 日付列をYYYYMMDDHH24MISS形式で出力 ```language-sql select date_format(created_at, '%Y%m%d%H%i%s') from TABLE; ``` ## 日単位で件数をサマリーする ```language-sql select date_format(created_at, '%Y%m%d'), cou...


macでgitを使っていると、Untracked files:(バージョン管理外のファイル)として"Icon\r"が表示されることがあります。 ```language-bash $ git status Untracked files: (use "git add ..." to include in what will be committed) "Icon\r...


Google Cloud Platform (gcp)で、プロジェクトを削除するには下記の手順を取れば良いです。 - プロジェクトを選択し`IAMと管理 -> 設定`をクリック - `シャットダウン`のボタンをクリック - 確認ダイアログが出るので、プロジェクトIDを入力し`シ...


MySQLでユーザの情報を取得する方法です。 ## ユーザ一覧を取得する ```language-bash SELECT User, Host, Password FROM mysql.user; ``` ## ユーザ権限を確認する ```language-bash SHOW GRANTS FOR root@'%'; SHOW GRANTS FOR root@localh...


MySQLユーザのためのMongoDB入門

2018年5月31日 | カテゴリ: MongoDB
## Mongo DBのデータ階層 ```language-bash Database -> collection -> document ``` MySQLだと、下記の構成になる ```language-bash Database(schema) -> table -> row ``` ## 接続 - localhostにユーザ認証せずに接続 ```language-bash ...


macで`brew install git`コマンドでgitをインストースした場合、.bash_profileに下記の設定を書いておくと、コマンドの自動補完やプロンプトに作業中リポジトリのステータスが表示されるので便利です。 ## 作業手順 エディタで.bash_profileを開きま...


macOSにmecab-ipadic-NEologdをインストールしたので、インストール時の手順を書いておきます。 デフォルト設定だと、インストールした辞書は/usr/local/lib/mecab/dic/mecab-ipadic-neologd/以下に作成されます。 ## 実行した環境 今回のインス...


macOSでコマンドライン(cli)から、OSのバージョンを確認したい場合、`sw_vers`コマンドを使用します。 ```language-bash $ sw_vers ProductName: Mac OS X ProductVersion: 10.13.4 BuildVersion: 17E202 ``` 結果をシェルスクリプトなどで使い...


sedでファイルの最後の行だけを置換する

2018年5月26日 | カテゴリ: Linux, Mac | タグ:
sedでは`sed -e "s/before/after/g"`のように記載すると全ての行に対して文字列の置換を行うことがあります。 ですが、時にはファイルの最終行のみ置換したいなど処理範囲を指定したい場合があります。 このような場合はsedのアドレス指定の機能を使...


PHPでフォームに入力されたテキストを1行づつ処理させたい場合は、`str_replace()`と`explode()`関数を組み合わせると便利です ## サンプルプログラム 下記のプログラムは、GETパラメータで渡されたテキストを改行文字で区切って、1行づつ処理する...


MySQLではmysqlコマンドでDBに接続する時に、接続先DBの情報をコマンドラインのパラメータで指定することが多いです。 ですが、この他に`my.cnf`ファイルに接続情報を書いておき、記載のDBに接続する方法があります。 今回は、my.cnfファイルを作成...


Vagrantではvagrant-sshfsとういプラグインを使用することで、ホストOSとゲストOSのファイル同期にsshfsを使用することができます。 ## インストール vagrant-sshfsのインストールは、`vagrant plugin install`コマンドを使用します ```language-ba...


pythonで一定時間プログラムをスリープさせたい場合は、time.sleep()を使用します。 ## プログラム ```language-python import time print('start') time.sleep(1) print('1sec') time.sleep(0.5) print('1.5sec') ``` ## 実行結果 プ...


pythonで文字を改行せずに出力するには、sys.stdoit.write()メソッドを使用します。 write()で出力した文字は、出力バッファリングされます。直ぐに出力したい場合はflush()を使用します。 ## サンプルコード 下記のサンプルは、1秒に一回`.`を...


mac版のVisual Studio Codeを使っていてエディタ上にcliのターミナルを使いたい場合、メニューの"表示 -> 統合ターミナル"から開くことができます。 (ショートカットキーは、`ctrl + shift + @`です) 統合ターミナルを選択すると、以下のように...


 pythonでは他の言語で連想配列/ハッシュに相当するデータ構造として、辞書(Dictionary)型というものがあります。 pythonの辞書データを値の順や、キーの順でソートするサンプルコードを紹介します。 ## サンプルコード 変数`data`に入ったデー...