Vervang tekst in platte tekstbestanden vanaf de opdrachtregel

Een zeer nuttige functie die ontbreekt in de Windows-bibliotheek met opdrachtregelprogramma's is de mogelijkheid om tekst in platte tekstbestanden te vervangen. Een functie als deze kan worden gebruikt voor een verscheidenheid aan praktische taken die veel systeembeheerders uitvoeren, zoals:

  • Werk configuratie-/INI-bestanden bij om UNC-paden te vervangen.
  • Massa-update gebruikersinformatie opgeslagen in INI-bestanden op een Terminal/Citrix-server.
  • Gebruik in combinatie met scripts om 'sjabloongegevens' te implementeren en pas vervolgens waarden toe op de gekopieerde bestanden.

Onze oplossing is een VBScript dat een interface heeft met de Visual Basic Replace-functie. Door dit script op een locatie in uw Windows PATH-variabele te plaatsen, heeft u deze functionaliteit nu tot uw beschikking.



Toepassingen

Eenmaal op uw systeem kunt u het script aanroepen door simpelweg de opdracht ReplaceText te gebruiken. Een paar voorbeelden illustreren hoe u dit kunt gebruiken:

Vervang het woord null door nvt in het bestand C:DataValues.csv:

ReplaceText C:DataValues.csv null nvt

Scan alle INI-bestanden in de map C:Users (+ subdirectories) en vervang alle exemplaren van Server=Oud door Server=Nieuw met een hoofdletterongevoelige zoekopdracht:

FORFILES /P C:Gebruikers /M *.ini /S /C Cmd /C ReplaceText @path Server=Oude Server=Nieuw /I

Scan alle CFG-bestanden in het profiel van de huidige gebruiker en vervang p@ssw0rd door PA$$woRd met een hoofdlettergevoelige zoekopdracht:

FORFILES /P %UserProfile% /M *.cfg /S /C Cmd /C ReplaceText @path p@ssw0rd PA$$woRd

Zoals je hieronder kunt zien, is het script heel eenvoudig en kan het gemakkelijk worden aangepast aan eventuele speciale situaties. Als alternatief kunt u kopieën van het script maken waarin bepaalde waarden hard worden gecodeerd, zodat u het commando met een dubbelklik kunt uitvoeren en/of het gemakkelijk naar anderen kunt distribueren.

Het script

'Vervang tekst'
'Geschreven door: Jason Faulkner
'sysadmingeek.com'

'Dit script moet in een map worden geplaatst die is opgegeven in de PATH-variabele van uw systeem.

'Gebruik (WScript):
'Vervang Tekst Bestandsnaam Oude Tekst Nieuwe Tekst [/I]

' /I (optioneel) - Tekstovereenkomst is niet hoofdlettergevoelig

Stel oArgs = WScript.Argumenten in

intCaseSensitive = 0
Voor i = 3 tot oArgs.Count-1
Als UCase(oArgs(i)) = '/I' Dan intCaseSensitive = 1
Volgende

Stel oFSO = CreateObject('Scripting.FileSystemObject')

Indien niet oFSO.FileExists (oArgs (0)) Dan
WScript.Echo 'Opgegeven bestand bestaat niet.'
Anders
Stel oFile = oFSO.OpenTextFile in (oArgs (0), 1)
strText = oFile.ReadAll
oBestand.Sluiten

strText = Replace(strText, oArgs(1), oArgs(2), 1, -1, intCaseSensitive)

Stel oFile = oFSO.OpenTextFile in (oArgs (0), 2)
oFile.WriteLine strText
oBestand.Sluiten
Stop als

extra notities

Windows gebruikt standaard WScript om VBScript-bestanden (VBS) uit te voeren. Het enige probleem dat dit kan veroorzaken, is dat eventuele fouten en/of berichten van het script als pop-upvensters verschijnen. Voor een opdrachtregelprogramma kunnen deze berichten het beste in de console worden weergegeven. Er zijn een aantal manieren waarop u dit kunt bereiken.

Wijzig de standaardhandler van VBScript-bestanden in CScript door deze opdracht uit te voeren vanaf de opdrachtprompt (met beheerdersrechten):

CScript //H:CScript

Voer het ReplaceText-script expliciet uit met behulp van de CScript-opdracht:

CScript C:PathToReplaceText.vbs //B Bestandsnaam OudeTekst NieuweTekst [/I]

In een speciaal geval impliceert het uitvoeren van ReplaceText vanuit een batchscript doorgaans CScript als de gebruikte engine, ongeacht de standaardhandler. U zult dit echter zeker willen testen voordat u op deze functionaliteit vertrouwt.

Download ReplaceText Script van SysadminGeek.com

Meer verhalen

Verzend of ontvang e-mails in Gmail volgens uw schema met Boomerang (en we hebben uitnodigingen)

Heb je ooit een e-mail op een ander tijdstip moeten verzenden of ontvangen en wilde je deze inplannen? Boomerang is een nieuwe bèta-add-on voor Google Chrome en Firefox waarmee je Gmail rond je tijd kunt plannen en we hebben 1.000 uitnodigingen!

Vrijdagpret: Souptoys Toybox

Vrijdag is weer voorbij en nu is het tijd voor jou om een ​​pauze te nemen en plezier te hebben. Deze week hebben we een set speelgoed en speelsets voor je desktop, verpakt in een mooi, eenvoudig te installeren pakket.

Een back-up maken van uw Windows Home Server-systeemstatus

Soms kan het systeem onstabiel worden wanneer u aanpassingen maakt aan WHS of bepaalde invoegtoepassingen installeert. Hier bekijken we hoe u een back-up kunt maken van de WHS-systeemstatus en/of het register, zodat u deze kunt herstellen als er iets misgaat.

Documenten met tabbladen toevoegen aan Microsoft Word

Wilt u net als uw webbrowser kunnen schakelen tussen uw Word-documenten met tabbladen? Hier leest u hoe u van Word een documentinterface met tabbladen kunt maken, zodat u eenvoudig meerdere bestanden tegelijk kunt bewerken.

Ontvang gratis studentensoftware van Microsoft bij DreamSpark

Als je op de universiteit zit, is de kans groot dat je overweldigd wordt door stijgende collegegeld- en studiekosten. Hier leest u hoe u een kleine pauze kunt nemen met absoluut gratis ontwikkelings- en ontwerpsoftware van Microsoft via DreamSpark.

Transformeer alleen-installatie-applicaties in draagbare applicaties

Hoewel er een groot aantal nuttige toepassingen en hulpprogramma's beschikbaar zijn via draagbare distributies, blijven veel hulpprogramma's nog steeds in hun installatieformaat. Deze beperking mag u er echter niet van weerhouden om het betreffende programma als draagbare toepassing te gebruiken. Met een paar trucjes hebben we

Voicemail effectief gebruiken op het werk

Voicemail gebruiken om met collega's te communiceren is een noodzakelijk kwaad, maar voor veel mensen is het luisteren naar voicemail en het terugsturen van berichten tijdrovend en verbreekt het hun concentratie. De samenleving neigt steeds meer naar online communicatie, dus als je geen effectieve berichten achterlaat, zullen ze dat misschien nooit worden

10 geweldige skins die VLC Media Player er geweldig laten uitzien

VLC-mediaspeler is geweldig voor het afspelen van allerlei soorten mediabestanden op uw systeem, maar u geeft misschien niet om de native look. We hebben een geweldige verzameling skins om je op weg te helpen bij het verwijderen van de blah-factor en om VLC een stuk leuker te maken om naar te kijken.

Windows Media Player opnieuw installeren in Windows 7, 8 of 10 om problemen op te lossen

Als u problemen ondervindt met het afspelen van media op uw pc met Windows 7, Windows 8 of Windows 10 met behulp van Windows Media Player, of zelfs met andere toepassingen zoals Media Monkey, moet u Windows Media Player mogelijk opnieuw installeren. Maar hoe?

Een Google Talk instellen voor uw domeinaccount in Pidgin

Als je ooit hebt geprobeerd je Google Talk-account in te stellen voor je eigen domein in de Pidgin multi-protocol instant messenger-client, is het je misschien opgevallen dat de instellingen niet erg duidelijk zijn. Hier is hoe het te doen.