2015-11-18 9 views
7

Я пытаюсь очистить кеш IISExpress от powershell. Используя этот код, он жалуется на список.очистка кеша IISExpress

"C:\Program Files (x86)\IIS Express\appcmd.exe" list site /xml | appcmd delete site /in

Как очистить сайты и кэш IIS Express?

At line:1 char:50 
+ "C:\Program Files (x86)\IIS Express\appcmd.exe" list site /xml | app ... 
+             ~~~~ 
Unexpected token 'list' in expression or statement. 
    + CategoryInfo   : ParserError: (:) [], ParentContainsErrorRecordException 
    + FullyQualifiedErrorId : UnexpectedToken 

ответ

13

Открыть CMD быстрой & Перейдите в IIS экспресс - , введя следующую

cd "C:\Program Files (x86)\IIS Express\" 

запустить этот appcmd.exe list site /xml | appcmd delete site /in

Это удалит все сайты, наслаждайтесь!

3

В PowerShell, вам нужно использовать оператор вызова (&) передать параметры/аргументы для исполняемого файла.

Взятые с этой страницы: Cleaning up IIS Express Sites

$appCmd = "C:\Program Files (x86)\IIS Express\appcmd.exe" 

$result = Invoke-Command -Command { & $appCmd 'list' 'sites' '/text:SITE.NAME' } 

for ($i = 0; $i -lt $result.length; $i++) { 
    Invoke-Command -Command { & $appCmd 'delete' 'site' $result[$i] } 
} 

Вариация из комментария на this page:

Set-Alias appcmd "$env:ProgramFiles\IIS Express\appcmd.exe" 

appcmd list site /text:SITE.NAME | % { appcmd delete site $_ } 
+0

Спасибо за сообщение, для меня это получает только первый сайт, а не все сайты. У меня IIS выражается на Wn10, и хотя этот предыдущий фрагмент использовался для работы с wn8.1, он не возвращал мне такой же результат на wn10. Что я могу сделать, чтобы проверить? – aggie

+0

Оба примера ведут себя одинаково? – sodawillow