Hvordan kan jeg skrive rørkommandoen Linux i Windows-batch?

Indlæg af Hanne Mølgaard Plasc

Problem



Hvordan kan jeg skrive kommandoen | (Linux) i en Windows cmd (batch-fil)?


Jeg ved ikke, hvordan man skriver dette lille Linux-script i Windows:


find -r * |grep *.fd | open


I Windows:


dir /S ???  open

Bedste reference


Jeg ved ikke rigtigt, hvad open gør. Hvis det bare starter en tilknyttet applikation med den respektive fil, skal følgende gøre det:


for /r \%f in (*.fd) do (start "" "\%f")


I PowerShell kan du gøre det samme med:


Get-ChildItem -Recurse -Filter *.fd | Invoke-Item


eller kortere:


gci -rec -fi *.fd | ii

Andre referencer 1


Den almindelige kommando skal i Windows mangler i kraft og funktioner. Men Windows Power Shell har mulighed for at køre mange ninja-kommandoer svarende til * nix-skaller.


Du kan få flere oplysninger om power shell på MSDN - http://msdn.microsoft.com/en-us/library/aa973757\%28v=vs.85\%29.aspx[8]


Her er et eksempel, jeg googled fra Powershell hjælper sig selv:



  -------------------------- EKSEMPEL 4 ---------------------- ----

  
  C: \ PS> get-childitem
  c: \ windows \ system32 * -indbefatte * .txt
  -konsulenter | select-string -pattern 'Microsoft' -casesensitive

  
  Denne kommando undersøger alle filer i
  underkataloger af C: \ Windows \ System32
  med .txt filudvidelsen, for
  streng 'Microsoft'. The Case Sensitive
  parameter indikerer at 'M' i
  'Microsoft' skal aktiveres og
  resten af ​​tegnene skal være
  små bogstaver for en kamp at forekomme.