2018-01-01から1年間の記事一覧
mechanizeとは言わずとしれたRubyのスクレイピングツールである。 で、例えば以下のようにページ内のaタグからリンク先のURLを取得したいとする。 url = "https://stackoverflow.com/questions/34471102/python-nameerror-name-include-is-not-defined" agen…
環境 docker-compose やりたいこと いや、大したことじゃないんだけど、docker logでは各プロセスの標準出力が流れる。で、自前のアプリケーションのlogを流したかった話 コード image: "alpine:3.8" command: /bin/sh -c "mkdir -p /app/rails && touch /ap…
この記事はRuby on Rails Advent Calendar 2018の7日目です。 はじめに 今回は知らなくても生きていけるけど、知っておいたほうがお得で便利なRailsメソッドを紹介していく。RailsといいつつActiveSupportやんけ squish 冒頭と末尾のホワイトスペースを削除…
最近だとコマンドラインツールはGolangで書かれることが多くなっていたが、Nodejsでコマンドラインで処理を受け付けたい、ということも全然あると思う。 そのときに必ず当たる壁がコマンドライン引数の処理である。 引数のパース、必須項目の扱い、ヘルプの…
メモになってしまうが、 マシンタイプを一番安い「Light.S1」で選択 イメージをおすすめ Template ではなく、 ISOタブにある任意のISOを選択 今回はUbuntu 18.04を選択したがうまくいった ディスクを5GBにする これでマシン=200円、ディスク=100円で300円で…
Chrome拡張機能はすごくて、chrome.webRequestのイベントを駆使すると特定の条件のURLをブロックしたり、リダイレクトすることができる 以下はexample.comを含む画像を白紙にするコード 画像かどうかはtypesの「images」で見てる var pattern = "https://exa…
かなりニッチなニーズかもしれないけどメモ やりたいこと 例えば以下のようなバージョンの配列があったとして versions = ["1.1", "2.0", "1.1.4", "1.6", "2.4.1"] これを古→新順にソートしたいとする 解決策1 ライブラリを使う 探したらあった なんとGith…
md5はこういうの ~/tmp $md5 tmp.wav MD5 (tmp.wav) = a7b3e6a4865d0b5ae39db05371008c2a をNodejsで求めたい 環境 nodejs 8 けど見てる感じ4以上なら動きそう 10でも動いたし コード const crypto = require("crypto"); const fs = require("fs"); function…
結論 sedコマンドの正規表現は高級言語の正規表現と同じ感覚で使うと死ぬ 必ず動作テストをすべし 発端 例えば以下のようなテキストファイルがあったとして、 ~ $cat /tmp/sample.txt 1a 2b 3c 4a 5b 「a」を含む行を一括削除したいとする。以下のコマンドで…
環境 Mac OS たぶんLinuxでも動く 以下のコマンドを実行するとすべてアンインストールされる npm ls -gp --depth=0 | awk -F/node_modules/ '{print $2}' | grep -vE '^npm$'| xargs npm -g rm
やりたいこと yarnでnpmパッケージのインストールを行いたいのではなくyarnバイナリファイル自体をChefで自動インストールしたいって話 レシピ include_recipe 'apt::default' apt_repository 'yarn' do uri 'https://dl.yarnpkg.com/debian/' key 'https://…
環境 php 5.6 多分7以降でも動くと思う(未検証 やりたいこと 例えば以下のような画像3枚があったとして こんな感じに縦並びで1枚の画像に結合したい ImageMagickを使う方法 PHPからImageMagickを叩くことができる(imagick.soのインストールが必要) PHP:…
環境 docker Debian Jessie 原因 ubuntuとパッケージ名が違う apt-get install libjpeg62-turbo-dev でおk 参考リンク libjpeg8-dev is not available on Debian Jessie · Issue #524 · Automattic/node-canvas
やりたいこと PHPの公式ドキュメントを見て貰えればわかるように、PHPからImageMagickを通して多くの画像処理を行うことができる。が、当然サーバー上にImageMagickがインストールされてなければならない。 docker上で操作したいときに若干はハマったのでメ…
環境 rails 5.x やりたいこと ActionMailerを使ったメール送信周りのテストをしていて、 # メール1通送れているか expect(ActionMailer::Base.deliveries.size).to eq(1) mail = ActionMailer::Base.deliveries.last expect(mail.subject).to eq("たいとる"…
MessagePackと呼ばれるJSONのような、、だけど似て非なるオブジェクト形式がある。 MessagePack: It's like JSON. but fast and small. 具体的な説明は公式ドキュメントに譲るとして、phpやruby 、Pythonで扱うライブラリはあるものの、linuxのコマンドで使…
多分一番見やすい基本的な使い方まとめ 日本語対応!CSS Flexboxのチートシートを作ったので配布します | Webクリエイターボックス 応用まとめ ロゴだけ左端に、ほかは右寄せにってのがすごく役に立った(:first-child と margin-right: auto; の合わせ技) Fl…
まとめ 都内から近い 温泉きもちいい 海は広かった 日帰り温泉 ふと日帰りで温泉行きたい衝動に駆られた。駆られてしまったからには行かなければならないが、当日で箱根とか熱海に行くのは若干厳しいものがある。ってことで前にツイッターで見て気になってい…
Honokaというじゅりあん(@MITLicense)氏作のBootstrapテーマがある。 Honoka - 日本語も美しく表示できるBootstrapテーマ サンプルを見てもらうとわかるが、日本語の表示が綺麗になっている。加えて配色も標準と変わってて、Bootstrapの触り心地をキープしつ…
環境 Ubuntu 18.04 最終的に echo "本文" | mail -s "タイトル" hogehoge@example.com でメール送信ができるようにしたい 確認1 そもそもmailコマンドがインストールされているか apt install mailutils 確認2 /etc/postfix/main.cf にて mydestinationを…
環境 Rails 5 やりたいこと RailsでActiveRecordの生成するSQLではなく、生SQL実行したいときは以下のようにしてできる。 ActiveRecord::Base.connection.execute("select count(1) from users where date = '2018-10-20'") が、プレースホルダー機能を使お…
EC2でハイスペックなインスタンスを作成してAmazon Linuxを起動すればベストな設定のsysctlの値が取得できるのでは説 abi.vsyscall32 = 1 crypto.fips_enabled = 0 debug.exception-trace = 1 debug.kprobes-optimization = 1 dev.hpet.max-user-freq = 64 d…
環境 chef 14 やりたいこと chefでレシピを当てるターゲット先のサーバーでファイル内の文字列を置き換えたり削除したりと操作したい時がある。 ググるとexecute内でsedコマンド叩けとかいうのもあるが、あまりスマートなやり方ではない。 やり方 Chef::Util…
まずは登録 まずはここから登録しろ 話はここから 一覧よこせ 本家の検索フォームくっそ使いづらいが、公式が出しているサンプルアプリが100倍使いやすい 統計データベースブラウザ - 統計表の取得 こっちをデフォルトにしろ フォーマットメモ statsDataId= …
/var/lib/mysqlのib_logfile0、ib_logfile1、ibdata1は生命線になる xxxx.frmとxxxx.ibdもとっておくこと 復活手順 同一DBに同じスキーマのテーブルを作成(別テーブル名で可) ALTER TABLE example_table DISCARD TABLESPACE;を実行 example_table.ibdが消…
環境 Ubuntu 18.04 やりたいこと 通常apt install nginxのようにaptコマンド経由でパッケージのインストールを行うが、事情的に.debファイルを落としてきてインストールってパターンもある。 ただパッケージマネージャー経由じゃないだけあって先に手元で解…
環境 chrome 60 今回、なかなかいい拡張機能を見つけたのでメモ 経緯 普段Macを使っているが、Chromeでalt+Command+→を同時に押すと今閲覧しているタブを右に移動できる。(アクティブタブ?カレントタブと言うべきなのだろうか) それはそれでよく使ってい…
環境 Ubuntu 18.04 wine 1.6 症状 ubuntuのイメージを使ってdockerをbuildする。 RUN apt-get update RUN apt-get install wine1.6 xvfb -y みたいにwineインストールしようとすると、 (略) If you acquired this product in the United States, this EULA…
環境 rbenv 通常rbenvは/etc/profile.dか~/.bashrcなどの読み込み時にロードされる。 が、シェルスクリプトからだとロードされないのでrbenvが無い環境扱いになってしまう。 ので、以下のように明示的にrbenvを読み込ませる必要がある。 #!/bin/bash export …
特定のディレクトリをバックアップしたいとき、cp -r target destすればもちろんコピーできるが、とっても大切なデータの場合慎重になる。 というのもcpコマンドではパーミッションまで保持してくれないからである。 -aオプションをつけると属性を引き継いだ…