Asendage tekst tekstifailides käsurealt
Väga kasulik funktsioon, mis puudub käsurea tööriistade Windowsi raamatukogust, on võime asendada teksti lihttekstifailides. Sellist funktsiooni saab kasutada mitmesuguste praktiliste ülesannete täitmiseks, mida paljud süsteemi administraatorid täidavad, näiteks:
- Uuenda konfiguratsiooni / INI-faile UNC-teede asendamiseks.
- Massiteabe kasutaja info, mis on salvestatud INI-failidesse Terminal / Citrix serveril.
- Kasutage koos skriptidega „mallitud” andmete installimiseks ja seejärel väärtuste kopeerimiseks kopeeritud failidele.
Meie lahendus on VBScript, mis ühendab funktsiooni Visual Basic Replace. Selle skripti paigutamise oma Windows PATH muutuja asukohta on teil nüüd see funktsioon saadaval.
Kasutamine
Kui olete oma süsteemi sisse lülitanud, saate skripti helistada lihtsalt käsuga ReplaceText. Mõned näited illustreerivad, kuidas seda kasutada:
Asendage sõna „null” sõnaga “n / a” C: DataValues.csv failis:
ReplaceText “C: DataValues.csv” null n / a
Skannige kõik INI-failid kausta C: Kasutajad (+ alamkataloogid), asendades kõik „Server = Old” esinemised koos “Server = New” juhtumikindla otsinguga:
FORFILES / P “C: Kasutajad” / M * .ini / S / C “Cmd / C ReplaceText @path Server = vana server = uus / I”
Skaneerige kõik CFG-failid praeguse kasutaja profiilis asendades “p @ ssw0rd” sõnaga “PA $$ woRd”, kasutades tõstutundlikku otsingut:
FORFILES / P “% UserProfile%” / M * .cfg / S / C „Cmd / C ReplaceText @ path p @ ssw0rd PA $$ woRd”
Nagu allpool näete, on skript väga lihtne ja seda saab hõlpsasti muuta, et see sobiks teie võimalike eriliste olukordadega. Teise võimalusena võite luua skripti koopiaid, mis kodeerivad teatud väärtusi, nii et saate käsu täita topeltklõpsuga ja / või lubada teil seda teistele teistele levitada.
Skript
'Asenda tekst
"Kirjutas: Jason Faulkner
'SysadminGeek.com
„See skript tuleks paigutada kausta, mis on määratud teie süsteemi PATH muutujas.
„Kasutamine (WScript):
'ReplaceText FileName OldText NewText [/ I]
'/ I (valikuline) - teksti sobitamine ei ole tõstutundlik
Määra oArgs = WScript.Arguments
intCaseSensitive = 0
I = 3 puhul oArgs.Count-1
Kui UCase (oArgs (i)) = "/ I" Siis intCaseSensitive = 1
Järgmine
Määra oFSO = CreateObject ("Skriptimine.Faili süsteem")
Kui ei ole oFSO.FileExists (oArgs (0)) Seejärel
WScript.Echo "Määratud fail puudub."
Veel üks
Määra oFile = oFSO.OpenTextFile (oArgs (0), 1)
strText = oFile.ReadAll
oFile.Sulge
strText = Asenda (strText, oArgs (1), oArgs (2), 1, -1, intCaseSensitive)
Määra oFile = oFSO.OpenTextFile (oArgs (0), 2)
oFile.WriteLine strText
oFile.Sulge
Lõpeta kui
lisamärkmed
Vaikimisi kasutab Windows VScript-failide (VBS) täitmiseks WScript-i. Ainus probleem, mida see võib põhjustada, on skriptist ilmnevad vead ja / või sõnumid hüpikaknadena. Käsurea tööriista jaoks on parim, kui need sõnumid kuvatakse konsoolis. Selle saavutamiseks on mõned võimalused.
VBScript-failide vaikekäsitleja muutmine CScripti, käivitades käsu käsurealt (administraatori õigustega):
CScript // H: CScript
Käivita ReplaceText'i skript selgesõnaliselt käsuga CScript:
CScript “C: PathToReplaceText.vbs” // B Failinimi OldText NewText [/ I]
Erilisel juhul tähendab ReplaceTexti täitmine partiiskriptilt tavaliselt CSScript-i kui kasutatud mootorina olenemata vaikekäsitlejast. Kindlasti tahad seda enne selle funktsiooni toetamist proovida.
Laadi alla ReplaceText Script SysadminGeek.com-st