技術メモのかけら

内容はもとより調べたことすら忘れてしまうので個人的な技術メモを残しているブログです。Qiitaの記事にするほどでもない細かいネタを投稿します。

SQL中のVALUES

SELECT句が使える場所ならどこでもVALUESが使えるとのこと。 -- select 1,'one' union select 2,'two' union select 3,'three'と等価 postgres=# VALUES (1, 'one'), (2, 'two'), (3, 'three'); column1 | column2 ---------+--------- 1 | one 2 | two 3 | …

Re:dashのユーザ削除

GUIで操作できないので、コマンドから行う必要がある。 自分の場合はDockerでインストールしたので、下記コマンドを実行して削除。 画面で操作できるようにならないかな。 docker exec -it {コンテナID} ./manage.py users delete {メアド}

botからのアクセスを拒否する

拒否してるのにbeingbotがしつこくアクセスしてくるのでユーザエージェント指定で弾くApacheの設定を入れた。 httpd.confあたりに書いておく。 BrowserMatch "beingbot" bot <Directory /> order allow,deny allow from all deny from env=bot </Directory>

readlineが7にバージョンアップされてgradleとpsqlが動かなくなった

何もした覚えがないのだが、ある日急にgradleとpsqlが動かなくなった。 $ gradle tasks dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib Referenced from: /usr/local/bin/bash Reason: image not found [1] 52259 abort gradle…

RedmineでSVNの差分を見ようとすると「リポジトリに、エントリ/リビジョンが存在しません。」エラーになる

Passenger+ApacheでRedmineを運用しているが、SVNのコミットの差分を見ようとすると「リポジトリに、エントリ/リビジョンが存在しません。」とエラーが表示されるようになった。 コミットメッセージなどは取得出来ているので、リビジョンが存在しないと言わ…

nkfコマンドでファイルの文字コードと改行コードを調べる

nkf –guess filename.txt 改行コードが混在してたらどうなるんだろう。後で調べよう。

xargsコマンドで変数を使う

-i変数名 でパイプで渡された値を変数に格納して処理できる。 gitのタグ一覧を取得してまとめて処理する実行例はこんな感じ。 git branch -r | egrep --text "tags/" | cut -d / -f3|xargs -iVAR git tag svn/VAR svn/tags/VAR

grepでマッチした箇所をハイライトする

grep --color=auto yamada /etc/passwd grepの--colorオプションを付けるとヒットした文字がハイライトされる。 どこがヒットしたか目で追うのはしんどいので大変便利です。 リダイレクトやパイプ使用時にはハイライトしないようにしてくれるので、基本 auto…

シェルの$括弧

$(コマンド) バッククォートで括ったのと同様にコマンドを実行できる。 ネストできたり開始終了が分かりやすいので、こっちを使ったほうが良い $((演算)) exprでやったような演算ができる。$(expr 1 + 1) とやるよりスマート

シェルスクリプトのオプション

set -u 未定義の変数を参照するとエラー・メッセージを表示する set -e コマンドが0以外のステータスで終了した場合,一部の場合を除いて即座に終了する set -C 存在するファイルに対して、>でリダイレクトしたらエラーにする

viでコマンドの実行結果を挿入する

vim

:r!コマンド と入力する。 :r!date :r!ls

jconsoleでリモートのTomcatを監視する

毎度忘れるのでメモしておく。 事前準備としてTomcat起動のjavaオプションに以下を追加しておく。 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7900 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.aut…

portの使用状況を確認する

すぐ忘れるのでメモ。以下のコマンドで一覧を表示できる。 lsof -i ポートを指定して調べることもできる。 lsof -i:<port_not></port_not>

コンフリクト時に共通の祖先の情報を書き出す

git

あらかじめgit configしておく。 git config --global merge.conflictstyle diff3 そうすると、コンフリクト時に 共通の祖先の内容も書き出される。 func main() { <<<<<<< HEAD fmt.Println("h2") ||||||| merged common ancestors fmt.Println("Hello") ==…

マージ済みのブランチを一括削除するワンライナー

git

git branch --merged | grep -v '*' | xargs -I % git branch -d %

Macで古いバージョンのJavaをアンインストールする

インストールされているJavaのバージョンを確認する $ /usr/libexec/java_home -V Matching Java Virtual Machines (2): 1.8.0_40, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home 1.8.0_05, x86_64: "Java SE 8" /L…

psqlのバックスラッシュコマンドで実行されているSQLを確認する

-Eオプション付きでpsql を起動すると、バックスラッシュコマンドの裏で実行されるSQLを確認できる。 $ psql -E psql (9.1.14) "help" でヘルプを表示します. bill=# \dn ********* クエリー ********** SELECT n.nspname AS "Name", pg_catalog.pg_get_user…

第3回 日本Seleniumユーザーコミュニティ勉強会に行ってきた

2016/02/06 第3回 日本Seleniumユーザーコミュニティ勉強会 昨年のテスト自動化カンファレンスに続き、テスト系のカンファレンスに行ってきました。 第3回日本seleniumユーザーコミュニティ勉強会 from Nozomi Ito tgtr.ListWidget({id:'935012',url:'http…

systemctlの超基本コマンド

ランレベルがなくなり、ターゲットやらユニットになったりしたそうだが、 詳細はさておき、ぱっと出てこないのよく使うコメンドをメモ。 # サービスを起動させる(service httpd startの代わり) systemctl start httpd # サービスを停止させる(service htt…

ファイルをgrep置換する

sed -i "s/abc/123/g" hoge.txt Macでやるとsed: 1: "hoge.txt": extra characters at the end of commandとか怒られた挙句、ターミナルをクリックすると変な記号がコマンドラインに挿入されるようになったのでターミナルを一度落とす羽目になったけど原因は…

ヒアドキュメントの出力をファイルに書き出す

ヒアドキュメント自体たまにしか使わないし、ファイルの出力の仕方も直感的に出てこないのでメモ。 cat <<EOF > php_info.php heredoc> phpinfo(); heredoc> EOF</eof>

改行コードをCRLFからLFへ変換する

trコマンドでCRを削除すれば良い。 tr -d \\r < hoge.txt > huga.txt

CentOSのバージョン確認

メモ:CentOSのバージョン確認 # cat /etc/redhat-release CentOS release 6.5 (Final)

nilを判定する

type Point struct { x, y int } func main() { point := Point{x: 20, y: 50} if point == nil { fmt.Println("point is nil") } } こんな感じにpoint == nilと比較するとエラーなります。 cannot convert nil to type Point 要は値とnilを比較するのがダメ…

ファイルの文字コードを調べる

nkf --guess test.txt

Subversionのパスワードを変更

毎回パスワードを入力するのは面倒なのでTortoiseSVNを使うときパスワードを保存するようにしているのだが、Subversionアカウントのパスワードを変更したら問題が発生した。 SVN Updateするとパスワードを聞かれたので新しいパスワードを入力。 パスワード保…

Textareaをリサイズできないようにする

Chrome、Fire Foxはテキストエリアがリサイズできてしまう。 あいうえお かきくけこ さしすせそ 可能なのは良いけど、デフォルトがリサイズ可能なのは困るケースが結構ある。 調べたら、こんな感じにCSSで制御可能なようだ。 textarea { resize: none; } あ…

SafariでOsakaフォントでBold表示すると直後に変な余白ができる

ネットで調べても分からなかったが、MacOSのSafariでOsakaとかOsaka-Monoをfont-weight:boldで表示すると直後に変な余白が空いてしまう。 ここのフォントは`Osaka`です。ここは太字でけど、MacのSafariで見るとこの後に変な余白が開いてしまうのですよ。ここ…

IE9でoverflow:autoしたボックス内のテーブルでhoverするとレイアウトが崩れる

テーブルにhoverするとテーブルの下にある要素がどんどん下に下がっていく変なバグがあった。 IE7、8、10、11は大丈夫なのになぜかIE9だけで起きる。 結果的にはIE9のバグっぽい。 問題のテーブルは横長になるので、overflow-x:auto;にしたdivで括っているの…

Webkitで罫線が正しく表示されない

border-collapse:collapse;とcolspanを組み合わせると罫線がおかしくなるバグがあるようです。 自分が出くわした事象はtableの4辺に罫線を指定しているのに、colspanした直後のcolspanしていない行のborder-rightが表示されていないというものでした。 sepa…