テキスト文書の改行文字は3種類が使われている。
OS | 改行コード | 正規表現などでの記号 |
---|---|---|
unix | LF | \n |
Mac OS(主にMac OS X以前) | CR | \r |
Windows | CR+LF | \r\n |
最近はあまり気にしないでも問題ないことが多いが、古いシステムのシフトJISデータを扱うことがあって、きちんと精査しないとまずいかったのまとめておく。
テキスト文書の改行文字は3種類が使われている。
OS | 改行コード | 正規表現などでの記号 |
---|---|---|
unix | LF | \n |
Mac OS(主にMac OS X以前) | CR | \r |
Windows | CR+LF | \r\n |
最近はあまり気にしないでも問題ないことが多いが、古いシステムのシフトJISデータを扱うことがあって、きちんと精査しないとまずいかったのまとめておく。
ユーザー管理のファイルとして、/etc/passwdと/etc/groupがある。コマンドでユーザーやグループを管理した場合は、それぞれバックアップファイルが作成され、直前のものは/etc/passwd-、/etc/group-として保管される。パスワードについてはそれぞれ/etc/shadow、/etc/gshadowファイルに保管される。
ものすごく初歩的なところでハマって数日時間をつぶしてしまった事件。md5の値をちょっと確認したいとき、コマンドのmd5sumを使うことはよくある。たとえば以下のようなコマンドだ。
$ echo 'https://setting-tool.net/' | md5sum b64ee1b9599f3a68622abf0708fa1edd -
初期起動デーモンを整理しているとき、気になるのはatdをどうするか。atdは、cronと同じような、指定した時間にコマンドを実行するデーモンであるが、指定時間に1回だけ実行して終了する。たとえば、夜中に重い処理を実行し次の日に確認するとか、設定を変えたので夜中の利用者がいないときに再起動するといった具合である。
ページの存在チェックには、ページ全体を取得(GETリクエスト)しなくてもHTTPのHEADリクエストで確認することができる。
ページ取得でお手軽に使えるwgetでHEADリクエストを投げるには、--spiderオプションを使う
wget --spider <URL>
なお、更新チェックにHEADを使ってもきちんとはわからないので、GETリクエストで比較しなければならない。
まず、適当なファイルlistに調査したいURL一覧を羅列しておく
http://xxxx/aaa http://xxxx/bbb :
次にforループでURLを1つずつ実行し、
for i in `cat list` do echo -n "$i "; wget --spider $i 2>&1 | grep -c '404 Not Found'; done
のようなシェルスクリプトのコマンドを実行する。404であれば、grepの-cでカウント1が取れるので、上記の出力結果は、
http://xxxx/aaa 1 http://xxxx/bbb 1 :
のようになる。