Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

Batch bestand: Output van FINDSTR verbergen?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo allemaal,

Ik ben bezig met een batch bestand die de inhoud van een bepaald tekstbestand moet controleren op een waarde. Nu is mij dit wel gelukt, alleen geeft hij in het command prompt wel het resultaat weer van findstr. Is het mogelijk dit te verbergen?

Dus wat hij nu doet:
findstr /m "Lic=2" "C:\test.txt"
if %errorlevel%==0 (
echo U gebruikt op het moment lic 2.
)

Maar wat hij laat zien is:
Lic=2
U gebruikt op het moment lic 2.

Wat ik wil:
U gebruikt op het moment lic 2.

Is dit mogelijk? Alvast bedankt.

Edit: Ik heb nog een vraagje, is het mogelijk om in het batch bestand een bepaalde waarde te onthouden? Ik wil de versie van Windows laten controleren en verder in het batch bestand deze waarde gebruiken om de juiste commando's uit te voeren. Bijv dat hij bij Windows XP (via ver | find "XP") de waarde OS=1 bewaard, zodat ik later hiermee iets kan uitvoeren. Is dit mogelijk?

[ Voor 27% gewijzigd door Verwijderd op 01-12-2010 11:23 ]


  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 28-03-2023

YellowOnline

BEATI PAVPERES SPIRITV

Batch? :s Tegenwoordig gebruiken we Powershell in Windows hé.

PowerShell:
1
2
3
$var = Get-Content test.txt | Select-String "Lic=2" -Quiet
If ($var -EQ $true){Write-Host "U gebruikt op het moment lic 2."}
Else {Write-Host "U gebruikt op het moment lic 1."}


Als je het echt wil doen in Batch, stuur je output naar null:

Batchfile:
1
findstr /m "Lic=2" "C:\test.txt" > nul


Je laatste vraag gaat ook wel, maar Batch is hier allesbehalve ideaal voor. PoSh is what you need.

[ Voor 29% gewijzigd door YellowOnline op 01-12-2010 11:28 ]


Verwijderd

Topicstarter
Hmm nja het script is bijna af, dat is eigenlijk het enige wat er nog mist.
Om dan gelijk naar Powershell over te gaan ;) En het is maar een klein project. Hoe zou dit mogelijk zijn in een batch bestand? Bedankt voor de null output trouwens!

[ Voor 16% gewijzigd door Verwijderd op 01-12-2010 11:56 ]


  • jmzeeman
  • Registratie: April 2007
  • Laatst online: 21-11 08:42
Je kan SET gebruiken om een variable te setten. ss64 is uberhaupt wel een mooie reference voor batch commandos.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Waar hoort mijn topic?

PRG>>WOS

Wat je andere vraag betreft: [google=variables in batch]? :?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
Thanks allemaal!

Nog 1 vraagje, ik wil de gebruiker zelf een path name in laten vullen naar een bepaald bestand. Maar nu wil ik dat als ze deze eindigen op \, dat deze weggehaald word. Is dit mogelijk in een batch bestand, of word het dan te lastig?

  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 28-03-2023

YellowOnline

BEATI PAVPERES SPIRITV

code:
1
Set String=%String:\=%

Verwijderd

Topicstarter
Bedankt, het enige lastige is, als ze C:\test\ invoeren, wordt het C:test :/
Pagina: 1