2015-08-17 10 views
0

Я написал простой пакетный скрипт для замены некоторого текста в файле, когда он выполняется через командную строку, но когда эти команды копируются в .bat, выполнение файла останавливается после команды powershell. Любая идея, как выполнять команды powershell в пакетном файле?Пакетный файл - Команды, которые не выполняются после команды Powershell

enter image description here

+1

Вы просто вызываете 'powershell.exe' без параметров, чтобы он запускал интерактивный сеанс. Если бы вы написали 'exit', ваш пакетный скрипт продолжился бы. Используйте переключатель '-command', чтобы выполнить все, что вы хотите. И, пожалуйста, отредактируйте (http://stackoverflow.com/posts/32048332/edit) свой вопрос и включите код – arco444

+0

Спасибо arco444 за ответ. Я тоже пробовал это. Вы можете увидеть, что есть REM-строка с -command, а затем заменить код. –

+0

При выполнении powershell.exe -command Get-Content AssemblyInfo.cs | ForEach-Object {$ _ -replace 'assembly: AssemblyVersion', 'assembly11111'} | Set-Content AssemblyInfo2.cs получена ошибка «ForEach-Object» не распознается –

ответ

0

ответ arco444 работал для меня в комментариях:

Вы просто позвоните PowerShell.exe без параметров, так что начинает интерактивный сеанс. Если бы вы написали exit, то ваш пакетный скрипт продолжился бы. Используйте переключатель -command, чтобы выполнить все, что вы хотите. И, пожалуйста, отредактируйте свой вопрос и включите там код. Также вам нужно поставить команду powershell в кавычки. то есть powershell -команда «get-content file.cs»

Смежные вопросы