GOL @Wiki

sedとawkメモ

最終更新:

divadiva

- view
管理者のみ編集可


sedとawkスクリプトの備忘録です。

現在(eth0)のIPアドレスを取得する。

IFCFG=`/sbin/ifconfig eth0`
echo ${IFCFG} | sed -e 's/.*inet addr:\([0-9\.]\+\).*/\1/' 

findで全文検索して、ヒットしたファイルの内容をsedで置換するbashスクリプト


BASE_DIR=__AAAAA__
 
file_ary=$(find $BASE_DIR -name '__BBBBB__' -exec fgrep '__KEY__' '{}' \; -print | grep '__CCCCC__')
 
for fp in ${file_ary[@]}; do
    sed -i 's/__DDDDD__/__EEEEE__/g' ${fp}
done

上記スクリプトは適宜修正する必要があります。
  1. __AAAAA__: 処理対象ファイルが存在するディレクトリ
  2. __BBBBB__: 処理対象ファイル名をあらわす正規表現
  3. __KEY__: 全文検索する際のキー文字列
  4. __CCCCC__: findの結果文字列からファイル名だけを抜き出すためのgrepキー
  5. __DDDDD__: 置換対象文字列
  6. __EEEEE__: 置換文字列
ウィキ募集バナー