2012/01/19

Linuxユーザーに送る便利な10コマンド(訳)

Linuxユーザーに送る便利な10コマンド(訳)なる記事を眺めてたら、
確かに使う機会があれば便利そうだった。
とりあえず、意訳しつつ一部抜粋。

1. manページをpdf出力
man -t apt | ps2pdf - apt.pdf
別にmanページでなくてもいいけど、テキストファイルをPDF化するのに便利そう。

2. 他の同じディストロマシンへパッケージインストールを同期する
CentOSなどのRedHat系向け
ssh root@remote.centos "rpm -qa" | xargs yum -y install
UbuntuなどのDebian系向け(未検証)
ssh root@remote.debian "dpkg-query --showformat='${Package}\t${Status}\n' --show | grep 'install ok installed' | sed 's/install ok installed//g'" | xargs apt-get -y install
稼働している仮想ゲストOSのミドルウェアの都合でスナップショットを作成できないけど、
とりあえずパッケージとコンフィグを同期して同等環境を構築したい場合に使えそう。

3. PDFの各ページの先頭に指定テキストをスタンプ出力する
echo "ほげほげ" | enscript -B -f Courier-Bold16 -o- | ps2pdf - | pdftk input.pdf stamp - output output.pdf
ウォーターマーク的なものを挿し込みたい場合に使えそう。
pdftkを使い込めば、他にも色々できそう。

4. MySQLのコネクション数を出力する
mysql -u root -p -BNe "SELECT host,count(host) FROM processlist GROUP BY host;" information_schema
開発時や運用監視で使いそう。
MySQLなどのDBMSには、こうした1linerを使いたいシーンが多い。
ツールセットとして覚えておきたい。

5. リモートホストでTAR圧縮した内容をローカルホストに保存する1liner
ssh user@host "tar -zcf - /path/to/dir" > dir.tar.gz
考えれば当たり前のコトだけど、意外にやらない方法。
リモートホストを汚さずに済むし、転送も圧縮しながらされるなどのメリットがある。

9. 強度の高いパスワードを生成する(16文字)
dd if=/dev/urandom bs=1 count=32 2>/dev/null | md5sum | base64 | cut -c -16
本家内容では動作しないので、/dev/urandomを入力ソース指定した。

0 件のコメント: