bash スクリプトの bomb チェック

2011-4-28 21:35
このエントリーをはてなブックマークに追加

Red Hat Enterprise Linux 4.x では UTF-8 の bash スクリプトの先頭に Unicode の bomb が付加されている状態だと実行時にエラーとなります。RHEL5.x ではエラーとなりません。

この違いにはまりました。5.x でテストした時はエラーが出ませんから。

そこで、OSバージョン互換性のために bomb が先頭に付与されているかどうかチェックする bash スクリプトをつくりました。

#!/bin/bash
TARGET_DIR=/usr/local/bin
find ${TARGET_DIR} -type f | while read line
do
  xxd $line | head -n 1 | grep 'efbb bf'
  if [ $? = 0 ]; then
    echo "$line に bombが含まれている可能性があります。"
  fi
done

もっといい方法があるかもしれまんが、とりあえずはこれで見つかります。

  • ブックマーク : アクセス: 7,512回
  • カテゴリー : Linux
  • キーワード : , ,

コメントはまだありません

No comments yet.

Sorry, the comment form is closed at this time.

33 queries. HTML convert time: 0.087 sec. Powered by WordPress. Valid XHTML
Copyright © 2003-2017 @ futuremix.org ログイン