最近ちょこちょこ使うLinuxのコマンドメモ

Linuxをちょこちょこいじるなかでメモがてら使うコマンドをさらっと書いてみます。

【追記】

*.logは実際はsample.log等のファイルに置き換えてください。

ログファイルの確認

リアルタイムでのログの確認

[text]

tail -F *.log

[/text]

リアルタイムでのログを( | )パイプでつなげて絞込み

[text]

tail -F *.log | grep debug

[/text]

ログからユニークな数を絞込みログに出力

[text]

cat *.log | grep 'debug' | uniq > result.log

[/text]

ログからユニークな数を絞込みつつ、結果を表示させながらログに出力

[text]

cat *.log | grep 'debug' | uniq | tea > result.log

[/text]

SQLコマンドラインからいじる

コマンドラインからSQLを実行

[text]

echo 'select id from test;' | mysql -uroot -ppassword > user.list;

[/text]

吐き出したテキストの中身を使って、SQLを実行

[text]

awk '{printf("select * from data where id = %d;\n",$1);}' user.list | mysql -uroot -ppassword > user_detail.list

[/text]

スクリプトを動かしている裏で確認したいとき

ファイル行数のみを表示(最初に書いたtailを使ってもいいけど、中身が重要じゃなく、動いてることの確認をしたいときに)

[text]

wc -l *.log

[/text]

3秒間隔でファイルの行数を表示

[text]

watch -n 3 “wc -l *.log"

[/text]

今から実行及び表示されるコマンドラインの結果をリアルタイムにログに出力する

別のユーザーが実行したコマンドとその出力結果が表示されるので、漏れがないか確認できる。

[text]

script -f *.log

tail -F *.log(別ユーザーが実行)

[/text]

独り言

最近書いてないので、さらっと書いた。

awkは使いこなせるとほんとすごいので、覚えていきたい