echoで連続するファイル出力
2008-07-17
シェルスクリプトの実行中にログをファイルに残そうとすると、後から見やすくするためにログをきれいに整形したくなります。しかし、わかりやすいログを書いていくと、echo での出力箇所が多くなって、何度もファイルにリダイレクトしなくてはいけません。前回、ヒアドキュメントを使ったファイルへの出力方法を書きましたが、今回は echo を使ったファイルへのログ出力が連続する場合のまとめ方です。まずは、よくある一時的な逃げ方。
$ vi saratoga.sh #!/bin/sh echo "/*----------" >> saratoga.log echo "/* START" >> saratoga.log echo "/*----------" >> saratoga.log exit 0; $ cat saratoga.log /*---------- /* START /*----------
これだと、毎回ファイルへのリダイレクト指定が必要です。そこで、echo の出力をまとめてファイルにリダイレクトします。こうすれば、少しはきれいに納まりそうです。
$ vi saratoga.sh
#!/bin/sh
{
echo "/*----------"
echo "/* START"
echo "/*----------"
} > saratoga.log
exit 0;
$ cat saratoga.log
/*----------
/* START
/*----------
関連記事
- Linuxのiptablesのサンプル
- シェルのmailコマンドでfromを設定
- Debianのバージョン確認
- tarで圧縮時に指定ファイルを除外する
- sedでhtmlのタグを除去する
- ユーザーのcrontabの設定ファイルの場所
- sshクライアントでconfig設定
- 改行コードを変更する(dos2unix編)
- sortコマンドで並び替え対象のカラムを指定する
- 標準出力と標準エラー出力をパイプに渡す
- ファイルの文字コード変換(iconv)
- シェルスクリプトで文字列操作
- kshのechoで改行を制御
- ftpコマンドで使えるオプション(chmod)
- diffでよく使うオプション
- ヒアドキュメントでファイル出力
- kshでコマンド補完とコマンド履歴
- シェルスクリプトでshiftとwhileの組み合わせ
- シェルスクリプトのshiftで引数制御
- リダイレクトとファイルディスクリプタ(2)
- vimで正しいファイルエンコード表示
- 簡易なサーバの状態表示
- sudoでroot権限のスクリプトを実行する
- Basic認証のファイル作成スクリプト
- Linux(UNIX)でHDDの増設
- 7日前のファイルを削除
- MRTGでディスクIO(FreeBSD6.2編)
- ユーザーの削除(FreeBSD編)
- リダイレクトとファイルディスクリプタ(1)
- coLinuxでFedoraCore5を動かす(2)
- coLinuxでFedoraCore5を動かす(1)
- クラスタ環境のサーバ監視(ganglia)
- daemontools(Linux)
- CentOSでnet-snmp
- screenで遠隔からコンソール共有
- MRTGでディスクIO(Linux編)
- CentOS5.0の初期設定
- VMware PlayerでCentOS
- digコマンドでDNSの問い合わせ
- tcpdumpでよく使うコマンド
- yumのキャッシュ用のファイルを削除する
- yumコマンド一覧
- ログローテートの実行結果
- Linuxのプロセス表示で実行中コマンドの最後まで見る
- snmpでデバイスの情報を取得


