Как я могу написать конвейерную команду Linux в Windows Batch? - PullRequest
0 голосов
/ 14 апреля 2011

Как мне написать команду | (Linux) в Windows cmd (командный файл)?

Я не знаю, как написать этот маленький скрипт Linux в Windows:

find -r * |grep *.fd | open

В Windows:

dir /S ???  open

Ответы [ 2 ]

2 голосов
/ 14 апреля 2011

Я действительно не знаю, что делает open. Если он просто запускает ассоциированное приложение с соответствующим файлом, то это должно сделать следующее:

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

В PowerShell вы можете сделать то же самое с:

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

или короче:

gci -rec -fi *.fd | ii
0 голосов
/ 14 апреля 2011

Обычной командной оболочке в windows не хватает мощности и возможностей. Однако оболочка Windows Power позволяет запускать множество команд ниндзя, подобных * оболочкам nix.

Вы можете получить больше информации о силовой оболочке на MSDN - http://msdn.microsoft.com/en-us/library/aa973757%28v=vs.85%29.aspx

Вот пример, который я нашел в Google Powershell:

-------------------------- ПРИМЕР 4 ------------------- -------

C: \ PS> Get-ChildItem c: \ windows \ system32 * -include * .txt -ресурс | select-string -pattern "Microsoft" -чувствительный к регистру

Эта команда проверяет все файлы в подкаталоги C: \ Windows \ System32 с расширением .txt, для Строка "Microsoft". CaseSensitive параметр указывает, что «М» в «Microsoft» должен быть написан с большой буквы и остальные персонажи должны быть строчные буквы для совпадения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...