複数ディレクトリの複数ファイルを反復して一括置換するためのVBSスクリプト
2022-01-01 22:34:57
あるディレクトリやサブディレクトリにある複数のhtmウェブファイルを一括で置換する必要がある場合がありますので、以下のコードを紹介します。
以下のコードをテキスト文書にコピーし、テキスト文書の接尾辞を.vbsに変更して、直接実行します。
Set WshShell = CreateObject("Wscript.Shell")
WshShell.Run "cmd /c dir /s/b *.htm > list.htm",vbHide
Wscript.Sleep 1000
sFile = "list.htm"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set oFile = objFSO.OpenTextFile(sFile,1)
Do While Not oFile.AtEndOfStream
strLine = oFile.
If Len(strLine) > 0 Then
Set File = objFSO.OpenTextFile(strLine, 1)
aryLines = File.ReadAll
File.Close
aryLines = Replace(aryLines, "content to be replaced", "replaced content")
Set File = objFSO.OpenTextFile(strLine, 2)
File.Write aryLines
File.Close
End If
Loop
oFile.Close
Set objFSO.DeleteFile sFile
Set objFSO = Nothing
cmd /c dir /s/b *.htm > list.htm は、サブディレクトリにある htm ファイルを list.htm ファイルに保存したリストです。
ファイルの置き換えはvbsのFileSystemObjectを使った一括置き換え、詳しくはこちらの記事を参照 記事
置換にエスケープ文字が含まれる場合は、エスケープするように注意する必要があります
追記:VBScriptの関連エスケープ文字。
"/" (バックスラッシュ)
VbCrLf (改行文字。行の再開を示すのに使用)
VbTab (水平タブ)
Chr(8) (バックスペース)
vbCr (キャリッジリターン文字)
"」"(シングルクォート)
/" - > ""(ダブルクォート)
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
vbを使用してコンピュータのアクティビティログを監視する方法
-
vbsによるテキストループの読み込み
-
管理者権限でbatファイルを自動実行(vbsとbatの2つの方法)
-
VBSの基本 - vbscriptスタック
-
ホストファイルのドメインアドレスの内容を削除するためにvbsを使用します。
-
ファイルの作成時刻、最終修正時刻、最終アクセス時刻を取得する vbscript メソッド
-
Iisext.vbsでWebサービス拡張を削除する方法
-
iisext.vbsでWebサービス拡張を無効化する
-
Iisftpdr.vbsを使用してFTP仮想ディレクトリをリストアップ(リモートおよびローカルに対応)
-
Iisftp.vbsを使ったFTPサイトのリストアップ方法