2016-06-13 3 views
2

私は、angle2アプリケーション用にpowershell 2を使用して自動ビルドおよびデプロイスクリプトを作成しようとしていますが、ASP.NET Web APIがapi/にある方法を見て、APIに触れずに古い角度コードをすべて削除したい。1つのサブディレクトリ以外のディレクトリ(サブディレクトリを含む)のすべてのコンテンツを削除するにはどうすればよいですか?

Get-ChildItem -Path $destination -Recurse -exclude somefile.txt | 
Select -ExpandProperty FullName | 
Where {$_ -notlike $destination+'\api*'} | 
sort length -Descending | 
Remove-Item -force -recurse 

$destinationは、アプリがインストールされるディレクトリです:

は、ここで私はこれまで持っているものです。使用して、api\

答えて

3

私はPowerShellの2しかしにアクセスすることはできませんが、私はすべてのものを削除したい場合は、上記のように

$destination 
    api\ 
    app\ 
    assets\ 
    vendor\ 
    index.html 
    main.js 
    system-config.js 

:場合

クイックフォルダツリーは、私が上に明確ではありませんでしたPowerShellの3(およびそれ以降のバージョン)、あなたはこのようなものを使用してコードを単純化することができるはずですが:

$path = "C:\test path" 
Remove-Item $path -recurse -Exclude "api" 

私はあなたがassumを指定したのと同じフォルダ構造を作成しましたそのapi,アプリ,アセット、およびベンダーはサブフォルダです。 Powershell IDEでスクリプトを実行し、apiフォルダ以外のテストパスの下にあるものはすべて削除しました。私はPowershell 2がコマンドで同じパラメータをサポートしていると仮定します。

+0

ええ、それは私にとってはうまくいかないようです。 –

関連する問題