●テキストファイル内の文字列を置換(複数ファイル非対応版)
<●概要>
・このスクリプトファイルをダブルクリックすることにより実行する。
  ※もしくは、コマンドプロンプト画面で、
   「CScript.exe このスクリプトファイル名」という書式で実行する。
・置換対象文字、置換後文字 は、このスクリプトファイル内に直書き。
・置換対象ファイル、置換後ファイル は、このスクリプトファイル内に直書き。


<●特殊記号についての検証結果>
※Windows8.1Proにて検証。
記号全角表記名称対象ファイル内にあった場合置換前文字列に指定した場合置換後文字列に指定した場合
 半角空白問題なし問題なし問題なし
!エクスクラメーション、感嘆符、びっくり問題なし問題なし問題なし
"ダブルコーテション問題なし"記号を前置する必要あり"記号を前置する必要あり
#シャープ問題なし問題なし問題なし
$ドル問題なし問題なし問題なし
%パーセント問題なし問題なし問題なし
&アンド、アンパサンド(ampersands)問題なし問題なし問題なし
'シングルコーテション問題なし問題なし問題なし
(右向きカッコ問題なし問題なし問題なし
)左向きカッコ問題なし問題なし問題なし
-ハイフン、マイナス問題なし問題なし問題なし
=イコール、等号問題なし問題なし問題なし
^ハット、サーカムフレックス問題なし問題なし問題なし
~チルダ、波記号問題なし問題なし問題なし
\問題なし問題なし問題なし
|パイプ、縦線問題なし問題なし問題なし
@アットマーク問題なし問題なし問題なし
`バックスラッシュ、アポストロフィ問題なし問題なし問題なし
[右向き角カッコ(bracket)問題なし問題なし問題なし
{中カッコ問題なし問題なし問題なし
;セミコロン問題なし問題なし問題なし
+プラス、足す、加算問題なし問題なし問題なし
:コロン問題なし問題なし問題なし
*アスタリスク、米問題なし問題なし問題なし
]左向き角カッコ問題なし問題なし問題なし
}左向き中カッコ問題なし問題なし問題なし
,カンマ、コンマ問題なし問題なし問題なし
<右向き山形カッコ、右大不等号、小なり問題なし問題なし問題なし
.ドット問題なし問題なし問題なし
>左向き山形カッコ、左大不等号、大なり問題なし問題なし問題なし
/スラッシュ問題なし問題なし問題なし
?クエスチョン、はてな問題なし問題なし問題なし
__アンダーバー、アンダースコア問題なし問題なし問題なし


<●参考HP>
http://homepage2.nifty.com/pasocon/wsh/ancopy.html
https://gallery.technet.microsoft.com/scriptcenter...


<●スクリプトファイル内容>
※拡張子は、.vbsとして保存する。

Option Explicit

'変数を宣言
Dim objFSO
Dim objFile
Dim strOldFile_FullPath
Dim strNewFile_FullPath
Dim strOldString
Dim strNewString
Dim strOldText
Dim strNewText

'置換前文字列、置換後文字列を設定。
strOldString = "おれ"
strNewString = "わたし"

'置換対象ファイル、置換後ファイルを設定。
strOldFile_FullPath = "C:\Users\user1\Desktop\0000-temp_IE\20150518\aaa.txt"
strNewFile_FullPath = "C:\Users\user1\Desktop\0000-temp_IE\20150518\aaa_after.txt"

'オブジェクト作成
Set objFSO = CreateObject("Scripting.FileSystemObject")


'--------------------------------------------------------------------------------
'ファイルコピー処理
'--------------------------------------------------------------------------------
'置換処理対象ファイルを、置換後ファイルとしてコピー。
'※コピー先ファイルが、存在した場合、かつ、「ReadOnly」だとエラーとなる。
objFSO.CopyFile strOldFile_FullPath, strNewFile_FullPath, True

'--------------------------------------------------------------------------------
'テキストファイル内容置換処理
'--------------------------------------------------------------------------------
'テキストファイルを開き、ファイル内容を全て読み込んで変数にセットし、ファイルを閉じる。
Set objFile = objFSO.OpenTextFile(strNewFile_FullPath, 1)
strOldText = objFile.ReadAll
objFile.Close

'文字列置換処理
strNewText = Replace(strOldText, strOldString, strNewString)

'テキストファイルを開き、ファイル内容に書き込み、ファイルを閉じる。
Set objFile = objFSO.OpenTextFile(strNewFile_FullPath, 2)
objFile.WriteLine (strNewText)
objFile.Close

'msgbox "完了"



●テキストファイル内の文字列を置換(複数ファイル対応版)
<●概要>
・このスクリプトファイルに、処理対象のファイルをD&Dすることにより実行する。
  ※もしくは、コマンドプロンプト画面で、
   「CScript.exe このスクリプトファイル名 処理対象ファイル名」という書式で実行する。
・置換対象文字列: このスクリプトファイル内で、直書きで指定。
・置換後文字列: このスクリプトファイル内で、直書きで指定。
・置換対象ファイル: 下記のいずれかにより指定。
  1.ドラッグアンドドロップで指定する。
    例>このスクリプトファイルに、処理対象のファイルをD&Dする。
      ※このスクリプトファイルに、複数ファイルをD&Dして、一括処理させることも可能。
  2.DOSコマンドプロンプトやBATファイルにて、このスクリプトファイルの引数として指定する。
     例>CScript.exe xxxxx.vbs yyyy.txt
      ※ワイルドカードを利用して、複数ファイルを一括処理させることも可能。
      例>CScript.exe xxxxx.vbs *.txt
・置換処理後ファイル: このスクリプトファイル内で、直書きで指定。


<●特殊記号についての検証結果>
※Windows8.1Proにて検証。
記号全角表記名称対象ファイル内にあった場合置換前文字列に指定した場合置換後文字列に指定した場合
 半角空白問題なし未検証未検証
!エクスクラメーション、感嘆符、びっくり問題なし未検証未検証
"ダブルコーテション問題なし未検証未検証
#シャープ問題なし未検証未検証
$ドル問題なし未検証未検証
%パーセント問題なし未検証未検証
&アンド、アンパサンド(ampersands)問題なし未検証未検証
'シングルコーテション問題なし未検証未検証
(右向きカッコ問題なし未検証未検証
)左向きカッコ問題なし未検証未検証
-ハイフン、マイナス問題なし未検証未検証
=イコール、等号問題なし未検証未検証
^ハット、サーカムフレックス問題なし未検証未検証
~チルダ、波記号問題なし未検証未検証
\問題なし未検証未検証
|パイプ、縦線問題なし未検証未検証
@アットマーク問題なし未検証未検証
`バックスラッシュ、アポストロフィ問題なし未検証未検証
[右向き角カッコ(bracket)問題なし未検証未検証
{中カッコ問題なし未検証未検証
;セミコロン問題なし未検証未検証
+プラス、足す、加算問題なし未検証未検証
:コロン問題なし未検証未検証
*アスタリスク、米問題なし未検証未検証
]左向き角カッコ問題なし未検証未検証
,カンマ、コンマ問題なし未検証未検証
<右向き山形カッコ、右大不等号、小なり問題なし未検証未検証
.ドット問題なし未検証未検証
>左向き山形カッコ、左大不等号、大なり問題なし未検証未検証
/スラッシュ問題なし未検証未検証
?クエスチョン、はてな問題なし未検証未検証
__アンダーバー、アンダースコア問題なし未検証未検証


<●参考HP>


<●スクリプトファイル内容> ※拡張子は、.vbsとして保存する。


Option Explicit

'変数を宣言
Dim objFSO
Dim objFile
Dim strOldFile_FullPath
Dim strNewFile_FullPath
Dim strOldString
Dim strNewString
Dim strOldText
Dim strNewText

'置換前文字列、置換後文字列を設定。
strOldString = "おれ"
strNewString = "わたし"

Dim arg
Dim args
Set args = WScript.Arguments

' 引数で指定された複数のファイルをFor文でそれぞれ個別に処理
For Each arg In args

'オブジェクト作成
Set objFSO = CreateObject("Scripting.FileSystemObject")

strOldFile_FullPath = arg

Dim strFileName
Dim strFileName_noExt
Dim strFileExt

'ファイル名のみ取得
strFileName = objFSO.GetFileName(arg)

'ファイル名取得(拡張子なし)
strFileName_noExt = objFSO.GetBaseName(arg)

'ファイルの拡張子取得
strFileExt = objFSO.GetExtensionName(arg)

'ファイルパス取得
Set objFile = objFSO.GetFile(arg)

'置換対象ファイル、置換後ファイルを設定。
strOldFile_FullPath = objFile.Path
strNewFile_FullPath = objFile.ParentFolder & "\" & strFileName_noExt & "_old" & "." & strFileExt

'--------------------------------------------------------------------------------
'ファイルコピー処理
'--------------------------------------------------------------------------------
'置換処理対象ファイルを、置換後ファイルとしてコピー。
'※コピー先ファイルが、存在した場合、かつ、「ReadOnly」だとエラーとなる。
objFSO.CopyFile strOldFile_FullPath, strNewFile_FullPath, True

'--------------------------------------------------------------------------------
'テキストファイル内容置換処理
'--------------------------------------------------------------------------------
'テキストファイルを開き、ファイル内容を全て読み込んで変数にセットし、ファイルを閉じる。
Set objFile = objFSO.OpenTextFile(strNewFile_FullPath, 1)
strOldText = objFile.ReadAll
objFile.Close

'文字列置換処理
strNewText = Replace(strOldText, strOldString, strNewString)

'テキストファイルを開き、ファイル内容に書き込み、ファイルを閉じる。
Set objFile = objFSO.OpenTextFile(strNewFile_FullPath, 2)
objFile.WriteLine (strNewText)
objFile.Close

'msgbox "完了"
'WScript.Echo "完了"

Next

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

▼当HP内検索▼

▼メインメニュー▼



管理者用リンク
書籍(技術書)
・利用ソフト一覧
・Ethereal/Wireshark

転送速度




・powershell

・VBA










・Microsoft SQLserver








●CentOS6.9


▼動画サーバ関係

MP3について
DVDからのMP3変換について?
DVDからの動画変換について



▼自転車関係
・Panasonic CRAZY BOY

▼自動車関係
・SUZUKI エブリワゴンDA62W


▼Linux/Unix関係
・Linux基礎(パッケージ)
・Linux基礎(システム構成)
・Linux(Debian)基本コマンド
・Linuxコマンド(テキスト処理)
・Linuxコマンド(未整理)
・Linuxコマンド(ネットワーク系)
・FedoraCore OS メモ
・Debian Linux OS メモ
・Vine Linux OS メモ
・xPUD メモ

・CentOS6.4(minimal)


・solaris9 メモ
・solaris10 メモ

▼CCNA関係


▼ノートPC関連

液晶パネル

Fujitsu FMV-820MT
・Compaq Evo Notebook N110
・Panasonic Let's note CF-S51R
・Toshiba Dynabook Satellite 1800


▼デスクトップPC関連
・AOpen AX3S Pro-U
・ASUS CUSL2
・ASUS CUSL2-M


▼携帯電話
・NTT DoCoMo FOMA M1000
・FOMA P704iμ


▼モデム関連
▼ADSLモデム
・NTT ADSLモデム-NV
・NEC PA-WD605CV
・NEC PA-WD701CV
▼アナログモデム
・GVC F-1156IV/R9

▼ルータ関連
▼ルータ
・OMRON MR504DV
・FON La Fonera FON2100E
・Cisco Cisco2620
・Cisco4500M
・Cisco1601
  Cisco1603-R
  Cisco1605

・Cisco 共通メモ

・BUFFALO BLR3-TX4L
・I・O DATA NP-BBR
・NEC PA-WB7000/B (AtermWB7000H)
・マイクロ総研 NetGenesis OPT
・Persol PBR001

・YAMAHA NetVolante RTA54i
・FUJITSU NetVehicle-I

▼イーサネットコンバータ関連
・LINKSYS WET11

▼TA関連
・NEC AtermIT60D1L(S)

▼ハブ関連
・Cisco Catalyst 2924-XL-EN
・AlliedTelesis CentreCOM8216XL2
・BUFFALO LSW10/100-8
・corega FSW-5PM
・corega HUB-5PM
・CONTEC RT-1216S

▼NIC関連
・BUFFALO WLI-U2-SG54HP
・PLANEX GW-NS54GMX
・NTT-ME MN SS-LAN CARD 11 HQ

▼プリンタサーバ関連
・corega Pserver
・I・O DATA PLANT ET-FPS1E

▼デジカメ関連
・MINOLTA DiMAGE F100

▼携帯電話ケーブル関連
・BUFFALO IGM-UPDC
・OMRON ME64KTID
・OMRON ME96KTI
・SOURCENEXT SUS-USB-02 REV.1
・UP12 USB-PDC Converter
・DAISO D106

▼その他PC周辺機器
●キーボード
・Bluetoothキーボード BK3001BA
●ハンディターミナル
・ENSO BHT-6500
●ダウンスキャンコンバータ
・SC-TVEX
●CD-ROMドライブ
・NEC CD-2800D
・BUFFALO CDN-D24EX
・BUFFALO DVM-RDM16IU2
●MOドライブ
・ELECOM LMO-230-S
・FUJITSU MCF3064SS
・FUJITSU SMB-640WL2
●スピーカー
・Justy JSP-10W
●MP3プレーヤ
・SanDisk sansa e130
・NHJ V@mp VP-415
●インタフェースカード
・玄人志向 USB2.0+1394a-CB
・nbj IDE-3525
・Notebook Power Sharing
●ACアダプタ
・Universal AC Adaptor
●マウス
・Logitec Marble Mouse
・needs progres TN-30RFMOSG
●タブレット
・WACOM FAVO(ET-0405-U)
●その他
・IDEAL ME-320X(ME-320U2F)
・KY-05046S-12-H
・LifeView USB CapView
・ハードウェア(その他)
●シリアルレベルコンバータ
・シリアルレベルコンバータ


▼Windows系メモ
・DOS起動ディスク
・Microsoft OS メモ
・Microsoft 系ソフト メモ
・その他 ソフトウェアメモ
・Network Notepad
・Packet Tracerメモ
・パノラマ写真作成ソフト
・トラブル対処履歴


▼プログラミング関連
・言語比較
・VBS
・卒研事前メモ
・卒研メモ
・Windowsプログラミング
・JANコード・ISBNコード相互変換
●C言語
・文字列
・ファイル操作
●アルゴリズム
・再帰アルゴリズム
●JAVA
・Javaプログラミング
●その他
・初心者プログラミング
・ソフトウェア未整理メモ



▼家電関連
●テレビ
・SHARP AQUOS LC-20D10
・FUNAI TV-14CP
・BLUEDOT BTV-900K
・AKART AK-FTV913
・REAL LIFE JAPAN IQ-191LEDTV
AQUOS DZ3シリーズのDLNA機能
Viera V1シリーズのDLNA機能
●プロジェクタ
・crenova XPE470
●AVセレクタ
・DataSystem AVS430
●ビデオ
・FUNAI TV-14CP
●HDD&DVDレコーダ
・Toshiba RD-XS46
・NEC PK-AX10
●DVDプレーヤー
・GREEN HOUSER GH-PDV9AT
・情熱価格 DVDJ-DQ03
●メディアプレーヤー
・MINI HD MEDIA BOX 1080P
・1080P FULL HD Media Player
・1080P HD Media Player Mini 1080
・HD media player

●チューナー
・COMTEC DTW700
・HUMAX CI-S1

●アンテナ
・ADDZEST ZCP107
・マルハマ AGS-590

●ヘッドマウントディスプレイ
・VIRTUAL i/O i-glasses
●電動歯ブラシ
・ブラウン電動歯ブラシ
●電話機
・SHARP DA-C5-B
●コードレス電動ドリル、ドライバ
・BLACK&DECKER CSD300T
・RELIEF 30946?

▼カーナビ関係
Panasonic CN-GP510VD
Panasonic CN-G1100VD
▼カーステレオ関係
Kenwood U585SD

▼おもちゃ関連
●ラジコン
・ラジコンのプロポ改造


▼カー用品関連
●インダッシュTV
・ADDZEST TVS6250


▼DIY関連
・懸垂スタンド
・蓄光塗料


▼電子工作関係
・コネクタピンアサイン
・LANケーブルをAVケーブル化
・LANケーブルをRGBケーブル化
・地上デジタル放送アンテナ
・電子工作 メモ
・乾電池を充電


▼デザイン関連
●腕時計
・腕時計


▼その他

・HP製作関連メモ
・アイデアメモ

・コラム・メモ
・趣味・興味


・ToDo
・ネットインフラ?


▼資格・履歴書・マナー
・資格取得メモ
・工事担任者対策メモ
・履歴書・職務経歴書
・答辞


▼修学旅行 フランス(パリ)


▼掲示板
●掲示板
 意見・苦情・質問用に仮設置。

▼フリーエリア▼

▼おしらせ▼

管理人/副管理人のみ編集できます