windows dosで正規表現の置換が実行可能なツールをつくりました
こんにちは。
先日仕事でIT運用系ツールをつくりたいと言われました。
正規表現の置換を実行するバッチを組みたいようで、
powershell使えたら、1行で済むのですが、
運用制限があり使えないらしい。。。。
そこでvbsでツールを作りました。
vbsでしたらwindows dosからコマンドで実行可能だからです。
使ってみたら、そこそこ便利だったので公開しようと思い
ブログにのせてみることにしました。
ツールの配置リンク
ツールは下記にアップしています。
GitHub - defmementomori/20170307_vbs_windows_regex
使い方
簡単に使い方を紹介します。
詳しいところはサンプルも載せていますので
readmeを見てみてください。
----------------------------------------------------------------------
ツールを配置し、dosで下記のコマンドを実行します。
cscript regex.vbs "引数1" "引数2" "引数3"
引数1:置換対象ファイルのフルパス
引数2:書き換え前の文字列(正規表現可能)
引数3:書き換え後の文字列
注意 :引数は"で囲ってください
----------------------------------------------------------------------
具体例
readmeのサンプルで紹介していますが、
下記のような使い方ができます。
●上の例
IP部分を「xxx.xxx.xxx.xxx」に置換
cscript regex.vbs ".\sample\sample3.txt" "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}" "xxx.xxx.xxx.xxx"
●下の例
行頭が文字列「A」の行のIP部分を「xxx.xxx.xxx.xxx」に置換
cscript regex.vbs ".\sample\sample5.txt" "^(A\t.*?\t).*" "$1xxx.xxx.xxx.xxx"