#contents
#br

* ファイルの文字コードを調べる [#z51c513a]

 file -i <filename>

* 複数の空白を1個にまとめる [#b2d6281c]

cut コマンドで ls 出力を加工したい場合など、区切りが不定数の空白だったりして、フィールド番号指定が難しい場合がある。そんなときに便利。

 tr -s " "

使い方の例。

 ls -l | tr -s " " | cut -f5 -d' ' | awk 'BEGIN{$S=0}{$S+=$0;}END{print $S}'

* パッチの作り方/適用 [#r0faa125]

パッチを作るとき。

 diff -u new-file old-file > patch.diff

ディレクトリを再帰的にやるには、

 diff -ur new-dir old-dir > patches.diff

パッチを当てるとき

 patch -p0 < patch[s].diff

*if文の制御文字について(csh/tcsh) [#of3c9cfb]

シェルスクリプト中の評価式で使うスイッチと意味の一覧

| -e | ファイル名で指定したファイルが存在しているか? |
| -f | ファイル名で指定した通常のファイルが存在しているか? |
| -d | ディレクトリ名で指定したディレクトリが存在しているか?|
| -z | ファイル名で指定したファイルは空か?|
| -r | ファイル名で指定したファイルは読み込みが可能か?|
| -w | ファイル名で指定したファイルは書き込みが可能か?|
| -x | ファイル名で指定したファイルは実行可能か?|

となっとります。

*コメント行以外の行を取り出す [#m5ab8751]

設定ファイルなどで、「行頭に#がある行はコメント」であるファイルについて、コメント行を除いたものを得たいとき(squid.confなんかすごいすね)

 grep -v '^#' <filename>

としますが、これだと空行もマッチして見づらいので

 grep -v '^#' <filename> | grep -v '^$'

として、空行も除きます

* Cシェルでの標準出力やエラー出力の取り扱い [#kbcf71f5]

- 標準出力をファイルに取り出す

 command > file

- エラー出力をファイルに取り出す

 command >& file

というわけで、エラーも出力も捨てたい時は

 command >& /dev/null

* Kシェル/bashでの標準出力やエラー出力の取り扱い [#n0989cac]

- 標準出力をファイルに取り出す

 command 1> file

- エラー出力をファイルに取り出す

 command 2> file

というわけで、エラーも出力も捨てたい時は

 command > /dev/null 2>&1

* 一定期間経過したファイルを削除する [#n2f199a0]

 findコマンドを使って、いまいるディレクトリ配下にある*.logファイルのうち、最終更新後に7日以上経過したファイルを削除するには、

 find . -type f -name "*.log" -mtime +7 -exec rm {} \;

* fdiskの動作 [#o964af47]

それなりによく使うfdiskについて。


1.操作対象を&color(red){ブロックデバイスとみなす};

  ブロックデバイスかどうかは問題にならない。注意。

2.パーティションテーブルを書き込む

3.対象デバイスのioctl()をキックする

  カーネルにパーティションテーブルを変更したから、~
  再読込してね、と言う操作。~
  パーティションを扱えるブロックデバイスなら、~
  ドライバに実装されているはずのioctl()。

#br

 以上のような動きのため、「fdiskをかけたからといってパーティションが必ずできているとは限らない」ということ。

 パーティションが正しく作成されたかどうかは、Linux系であれば'''/proc/partitions'''をcatしてみると良い。

 それ以外のOSの場合は… '''/dev'''の下を見るのだろうか…不明。



トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS