Как передать все файлы из папки в качестве параметра в PowerShell? - PullRequest
0 голосов
/ 02 февраля 2012

Как можно динамически загрузить все файлы в папке и передать их в качестве аргумента программе?

Теперь я должен сделать

coffee --bare --join app.js -c utils.coffee app.coffee forum.coffee items.coffee models.coffee activate.coffee chat.coffee

while, все файлы .coffee должны загружаться автоматически, поэтому при добавлении нового файла мне не нужно редактировать сценарий.

Спасибо

Ответы [ 3 ]

1 голос
/ 02 февраля 2012
$arguments = [string]::join(" ",(get-item *.coffee | foreach { $_.Name }))
Invoke-Expression (".\program.exe {0}" -f ($arguments))
1 голос
/ 02 февраля 2012

Вы можете выполнить вашу команду так:

& coffee --bare --join app.js -c $ (gci * .coffee)

0 голосов
/ 02 февраля 2012

Вы можете объединить все файлы в строку, используя следующую команду:

get-childitem *.coffee | Join-String -Separator " "

Затем используйте start-process , чтобы вызвать команду

EDIT

Если у вас нет расширения сообщества powershell, вы можете использовать

[string]::join(" ",(gci))  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...