Yuya Sato さんのアバター 2views

[PHP] コマンドライン引数からオプションを取得する

自作PHPスクリプトをCLIやcronなどから実行する際、様々な追加情報のためにオプションを指定することがあるときは、 getopt()関数を使用します。 $shortopt = ""; $shortopt .= "s:" #値必須 $sh 2017年4月18日
Yuya Sato さんのアバター 7views

Macでウィンドウを右寄せ・左寄せする

Windowsにあるアプリのウィンドウを右寄せ・左寄せ・フルスクリーン化する機能はMacにはありません。 Spectacleを使用するとそれっぽいことが出来ます。 デフォルトでは、 左半分: Opt + Cmd + <- 右半分: O 2017年4月12日
Yuya Sato さんのアバター 22views

SierraでKarabinerのVi Modeによるカーソル移動を行う

KarabinerのVi Modeによって、Macでのカーソル操作をCommand + hjklによって作業していた。 OS SierraではKarabinerが対応していなく、現状Karabiner Sierra版は出ていない。 そこで、 2017年4月11日
Yuya Sato さんのアバター 10views

[Python] 余分な空白や改行文字を取り除く

Pythonではstrip()関数で指定した語を文字列から削除することができます。 このstrip()関数では引数になにも加えないと、空白及び改行文字を取り除いてくれます。 hoge = " hugahogehoge¥n" hoge.str 2017年4月5日
Yuya Sato さんのアバター 9views

[rsyslog] 特定のログを別のログファイルに記録する

rsyslogでログを取っていると、同じファシリティのログでも監視対象として重要なものとそうでないものが混在している場合がある。 そこで、監視対象をデフォルト設定のログファイルに記録し、そうでないものは別のファイルに記録する設定をする。 r 2017年3月29日
Yuya Sato さんのアバター 5views

[SSH] 鍵認証のみによる接続の設定

sshにおいて、パスワード認証をやめて鍵認証による接続のみを受け付けるには、設定ファイルである/etc/sshd/sshd_configに以下のような設定をします。 # 鍵認証の設定 RSAAuthentication yes Pubkey 2017年3月29日
Yuya Sato さんのアバター 15views

[MySQL] シェルからmysqlプロンプトに入らずにコマンド実行

シェルスクリプトなどで、mysqlの情報を知りたい時に、mysqlプロンプトに入らずにコマンドを実行するには-eオプションを使用します。 $ mysql -uroot -e "show status;" 2017年3月24日
Yuya Sato さんのアバター 12views

[Python] マルチプロセス処理

Pythonでマルチプロセス処理を行うときはmultiprocessingモジュールを使用する。 from multiprocessing import Process def childProcess(data): print "Hell 2017年3月22日
Yuya Sato さんのアバター 4views

[PHP] 歯抜けの配列のインデックスを連番にする

PHPでarray_diff()関数などを使用していると返り値の配列が歯抜けの場合がある。 このような配列は、array_merge()関数で連番のインデックスに直すことができる。 <?php $array[3] = "Rick"; 2017年3月22日
Yuya Sato さんのアバター 16views

[Python] print出力先の変更

Pythonのprint文は通常標準出力に出力されますが、これをファイルに変更します。 f = open("hoge.txt", 'w') print >> f, "hogehoge to file" f.close() 2017年3月15日
Yuya Sato さんのアバター 43views

VimでEscを使わない

vimを操作する時、インサートモードからノーマルモードに遷移する際にはEscキーを使用しますが、キーボードに置いている手の位置を大きく動かさないといけないのでなにかと億劫です。 vimではデフォルトでEscの代わりに以下のコマンドでノーマル 2017年3月8日
Yuya Sato さんのアバター 22views

SNSでメールを送信

Lambdaなどで処理を実行した後に簡易的にSNSメールを用いて通知を行う場合が多々あるので、 テンプレート用に作りました。 import boto3 def send_mail(region_name, topic_arn, subjec 2017年3月3日
Yuya Sato さんのアバター 56views

Nginxでリバースプロキシを構築する

Apacheで動かしているWEBサイトの上にNginxをリバースプロキシとして動作させます。 さらに、リクエストURLをrewrite機能を使って書き換えます。 Nginxの設定 upstreamにApacheで動作しているWEBサーバを指 2017年3月1日
Yuya Sato さんのアバター 76views

WordPressの.htaccessを編集する

WordPressでは、パーマリンクなどの設定をWordPress管理画面上から行うと.htaccessを自動で書き換えます。 管理者が独自の設定を.htaccessに行いたい場合、この自動書き換えにより独自に設定した項目が上書きされてしま 2017年2月24日
Yuya Sato さんのアバター 20views

boto3を使いdynamoDBに上書きさせずにデータを保存

boto3を用いてDynamoDBにデータを保存させる時、put_item()関数を使用すると既存のデータが存在した場合上書きを行ってしまう。 # {key: "hoge", value: "hoge"}がすでにDynamoDB上に存在 t 2017年2月22日
Yuya Sato さんのアバター 52views

特定の行から特定の行までを抽出する

テキストファイルを操作する場合や複数行の文字列を操作する時、awkコマンドを用いることである特定の文字列が含まれる行から別の特定の文字列が含まれる行までを抽出することができます。 例えば、BEGINが含まれる行からENDが含まれる行までを抽 2017年2月15日
Yuya Sato さんのアバター 12views

tmux

ssh越しにサーバで作業をする時、複数の作業を行いたかったり何個かウィンドウを表示してコードを片方に出しておき作業したかったりする場合があります。 この場合ターミナルを複数立ち上げて都度sshアクセスする必要がありますが、tmuxを使用する 2017年2月10日
Yuya Sato さんのアバター 77views

PowerShellでdiffもどき

Linuxでは2つのファイルの差分を見たい時にdiffを使用しますが、windowsのPowerShellではdiffがありません。 そこで、Get-ContentとCompare-Objectを使ってdiffもどきをします。 > $ 2017年2月3日
Yuya Sato さんのアバター 20views

[Linux]タイムゾーンの変更

AWS EC2などでインスタンスを立ち上げると、デフォルトで時刻がUTCになっている場合があります。 そこで、UTCで設定されている時刻をJSTに合わせます。 タイムゾーンファイルの変更 $ ln -sf /usr/share/zonein 2017年2月1日
Yuya Sato さんのアバター 24views

NTPで時刻同期

AWS EC2などのクラウドでは初期状態で時刻同期ができていますが、自前で構築した場合にはntpをインストールして時刻同期を設定する必要があります。 NTPのインストール yum install ntp NTPの設定 /etc/ntp.co 2017年2月1日
Yuya Sato さんのアバター 77views

HAProxyでmysql負荷分散

master, slave構成のMySQLをHAProxyで負荷分散します。 WEBサーバにHAProxyをインストールし、別に運用しているmasterDBサーバ1(node1)、slaveDBサーバ2(node2)を負荷分散します。 イン 2017年1月27日
Yuya Sato さんのアバター 16views

AWSでmulticast

AWSのEC2-VPCでは不要な通信トラフィックを抑えるためにマルチキャスト/ブロードキャストが禁止されています。 keepalivedなどのmulticastを必要とするソフトでは特殊な設定が必要になります。 https://moomin 2017年1月25日
Yuya Sato さんのアバター 35views

【MySQL】 テーブル・カラム毎に権限を変更する

MySQLにおいて、特定のユーザに対して usersテーブルには読み込みだけ(select) postsテーブルには読み書き両方(select, insert, update, delete) と言った風にテーブル毎に権限を変更したい場合は 2016年12月28日
Yuya Sato さんのアバター 124views

sendmailバージョン確認

sendmailのバージョンは「-v」や「–version」オプションではなく以下によって確認します。 $ /usr/sbin/sendmail -d0.101 2016年12月21日
Yuya Sato さんのアバター 18views

RemoteDesktopでローカルのファイルを共有する

Microsoft Remote Desktopを使用してWindowsマシンを操作している時にローカルマシンにあるファイルを送信したい時があります。 FTPなどには専用のソフトをインストールする必要があるので、Remote Desktop 2016年12月16日
Yuya Sato さんのアバター 248views

PowerShellでcurlもどき

LinuxではCLI上でWebリクエストを送信したい時にcurlを使用しますが、windowsのPowerShellではcurlがありません。 そこで、PowerShell上でInvoke-RestMethodを使用しcurlもどきをして、 2016年12月16日
Yuya Sato さんのアバター 219views

PowerShellでtelnetもどき

Linuxではサーバのポートが開いているか確認する時にtelnetを使用しますが、windowsのPowerShellではtelnetがありません。 そこで、PowerShell上でtelnetもどきをして、ポートが開いているか確認します。 2016年12月14日
Yuya Sato さんのアバター 47views

htopコマンド

Linux環境上でCPU使用率などを確認する時にはtopコマンドを使用しますが、htopコマンドの方が見やすく、様々な設定も可能です。 yum install htop (epelリポジトリを有効にする必要あり) htopコマンドではCPU 2016年12月9日
Yuya Sato さんのアバター 42views

大量ファイルの転送

大量のファイルをリモートに転送する時に普通にscpなどで転送すると時間がかかります。 そこで一旦tarに圧縮して転送という方法も考えられますが、今度はtarの圧縮に時間がかかってしまいます。 リモートに直接ファイルを書き込み、リモートで展開 2016年11月30日
Yuya Sato さんのアバター 16views

knife soloで「Cannot find sub command for ‘solo’」というエラー

原因として2つのknifeコマンドが共存している状態にあるため、knifeからsoloサブコマンドが見えなくなってしまっているためエラーが発生します。 解決策として、 sudo /opt/chef/embedded/bin/gem inst 2016年11月9日