タグ 技術メモ帳
人気順 5 users 10 users 50 users 500 users 1000 users技術メモ帳 - 漢のzshに乗り換えた時にアッーってなるコト
男のbashユーザーが、バラ色の紳士こと漢のzshに乗り換えたときにアッーってなるコト事を先ほどいくつか思いついたので共有する。 !!とかの履歴実行はrコマンドでzshには、r というシェル組み込みコマンドがあって履歴からの実行が簡単に行える。たとえば、一番最後に実行したviコマンドを実行したいときなどだ。 bashなんかだと !vi で出来るのだが、rコマンドだったら % r vi でよい。 直... 続きを読む
技術メモ帳 - 単語抽出するちょっとしたテクニック
shell のちょっとしたテクニック - odz bufferodzさんのところで単語の出現頻度を調べるためのワンライナーが紹介されている。 単語抽出についてはいくつかやり方があるので紹介する。特に egrep -o は非常に実用的。もちろん、この話はリンク先において主題ではない。俺のただの自己満足。 tr -cs で単語抽出 $ tr -cs 'a-zA-Z' '\n' 上記コマンドで、a-zA... 続きを読む
技術メモ帳 - 二つのファイルに共通する行をエレガントに抽出
id:parasporospa さんの uniq -d と uniq -u についての記事を見た。それぞれ、重複する行、ユニークな行を抽出するオプションなのだが、それらを利用したおもろいTipsが紹介されている。 uniq の -d と -u - メモ帳 # a, b に共通な行を抜き出す cat a b | sort | uniq -d > common # a にだけ含まれる行を抜き出す ca... 続きを読む
技術メモ帳 - xargsコマンドを使って指定したコマンドを並列実行させる
あまり知られていないが、GNUのxargsコマンドには、プロセスの最大数を設定できるオプションというのが用意されている。コレを使って、プロセスを並列実行させてみよう。 xargs --max-procs=MAX-PROCS -P MAX-PROCS command MAX-PROCSに数字を指定すると、最大で、その数だけ command プロセスを生成する。デフォルトは、1プロセスだけになっている... 続きを読む
技術メモ帳 - ssh-copy-idコマンドで公開鍵をリモートホストに登録する
http://www.t-dori.net/k-way/?date=20061218こんなコマンドがあったのか。常識?ssh-copy-id username@hostname.example.jpか。パスワード認証のパスワードが求められる。あああ、こんな便利なコマンドあったのか。いわゆる authorized_keys に登録する処理が簡単に行える。ただ、ほとんどの環境に入ってない。最近のOpe... 続きを読む
技術メモ帳 - zshで出来ている新感覚エディタzed
zshのZLE Editorを使って作られたzedというテキストエディタがカッコいいうえに非常に便利。zshの補完がそのまま使えたりする。 % autoload zed % zed ./test.txt 操作方法は、 変更を保存するときは、Ctrl+X Ctrl+W または Ctrl+J と入力。破棄して終了したいときは Ctrl+C を入力すればいい。あとはどんな bindkey をしているかに... 続きを読む
技術メモ帳: [unix]複数のファイルの名前をまとめて変更する
複数のファイルの名前を変更する際に、便利なコマンドというものがある。いくつかご紹介させていただこう。 カレントディレクトリにあるファイルの名前を、たとえば、*.html を *.htm と名前を変更するという課題に対しどのぐらいエレガントに書けるかというのを比較してみる。 まず、普通にやったらどうだろう。おそらく、for文 をつかうことだろう。 for file in *.html do base... 続きを読む
技術メモ帳 - zshのzptyを使って端末が必要な処理を自動化する
■[unix]zshのzptyを使って端末が必要な処理を自動化する 17:13 zsh のモジュールに zpty というのがあるのを最近発見した。 どうもコレを利用すれば指定したコマンドを 仮想端末上で実行することが出来るらしい。 具体的にどういったことが出来るようになるのかというと、 端末が必要なプログラムを自動化することが出来る。 たとえば、パスワード入力処理などだ。 パスワード文字列を標準入... 続きを読む
技術メモ帳 - 拡張子ごとにコマンドを対応づける
拡張子ごとにコマンドを対応づける事が出来るSuffix Alias という機能が zsh 4.2系から実装されていたらしい。知らなかった。 どんな事が出来るのかというとたとえば、 alias -s txt=cat とした場合、 以下のようにするだけで、 % ./file.txt 先ほど設定したコマンドが自動で実行されるようになる。 % cat ./file.txt あとはもうアイデアしだいだが、拡... 続きを読む
技術メモ帳 - 定期的にコマンドを実行しその出力の変化を監視する
以前に、watch コマンドという指定されたコマンドを定期的に実行し、フルスクリーンで表示してくれるコマンドがあるという事を書いた。http://d.hatena.ne.jp/lurker/20060716/1153056030 実は、--differences とオプションを付加する事によって、直前の出力結果との差分をハイライト表示してくれるらしい。知らなかった。コレは便利だ。正直 grep -... 続きを読む
技術メモ帳 - pgrep, pkill を使用してプロセスを殺す
最近、会社でシェルの操作方法について教えているのだが、pgrep / pkill / skill / pidof といった便利なプロセス操作系コマンドを知らない人が実に多い。プロセスを殺すというのは、よくある作業なので今回はコレについて書いてみる。 たとえば、これらのコマンドを知らない人が、指定した名前のプロセスを kill する手順はだいたい以下のようなものになることだろう。 $ ps aux ... 続きを読む
技術メモ帳 - Firebugの便利な組み込み関数
id:brazil さんのブックマークで知ったのだが、Firebugには、便利な組み込み関数が定義されているようだ。一通りさわってみたのだが、$x() で 任意のXPath要素が取得できるのとかに感動した。そして、やっぱりちゃんとドキュメント読むべきだなぁと思った。 XPathから要素を取得する。 $x("/html/body/h1"); -> 要素の配列が返ってくる。 selector名から要素... 続きを読む
技術メモ帳 - sshで指定したコマンドしか実行できない公開鍵を作る
自動バックアップ処理をさせたいがシェル権限を与えたくないときとかに使える技。 やり方は簡単で $HOME/.ssh/authorized_keys の"コマンドを制限したい公開鍵" の行の先頭に実行させたいコマンドを記述すればよい。 そのときのフォーマットはだいたい以下のようになる。 command="実行させたいコマンド",sshのオプションをカンマ区切りで書く command=hoge という... 続きを読む