-1

私のコンピューターでビデオを持っている友人がいます。パスは

C:\Users\Me\Videos\Tonys Videos\Dinosaur [1080p]\

Dinosaur ムービー フォルダーには、いくつかの .gif、.jpg、および .png ファイルを含む "asset" フォルダーがあります。Powershellについて少し知りたかったので、ディレクトリを変更しました...

cd "C:\Users\Me\Videos\Tonys Videos\Dinosaur ``[1080p``]\assets"

「Tonys Videos」という名前のフォルダー内の特殊な括弧文字とスペースの引用符には、(`) が必要でした。Get-ChildItem を入力すると、リスト全体が正常に読み込まれますが、除外フラグを使用しようとするとエラーが発生します (1 つまたは複数の文字列が「除外」されているかどうかにかかわらず、出力は表示されません。

「assets」フォルダーを「Tonys Videos」にコピーする別のテストを実行しました (そのため、グレイブ アクセントは省略され、すべて正常に実行されました。PS v2.0 を使用していますが、実際にはそれほど変更する必要はありません。私の質問は、「Get-ChildItem -exclude」がグラブ アクセントで機能しなかったのはなぜですか?

コメントに応えて、これは Get-ChildItem での私の試みです

Get-ChildItem "C:\Users\Me\Videos\Tonys Videos\Dinosaur ``[1080p``]\assets" -Exclude *.jpg,*png

「Tonys Videos」フォルダでこれと同じ形式 (上記と同じ) をテストしたところ、問題なく動作しました。いつもお世話になっております。

4

2 に答える 2

0

パスに特殊なキーがある場合は、 を使用しますGet-ChildItem -LiteralPath "YourPath"。( -LiteralPath`)は必要ありません。
除外で何を書きますか?

私にとってこれはうまくいきます:

Get-ChildItem -Path "C:\temp\``[TEST``]\*.*" -Exclude *.jpg,*.png


\*.*何かを除外できることが 必要です。ではGet-ChildItem -LiteralPath使用できません\*.*

これ使えますか?

Get-ChildItem -Path "C:\temp\``[TEST``]" | Where-Object -FilterScript {$_.Name -notlike "*.jpg" -and $_.Name -notlike "*.png"}


他のユーザーは、除外が機能しない理由を知っている可能性があります。

于 2014-08-23T09:10:50.823 に答える
0

文字列の内容を展開または解釈しようとしない単一引用符で文字列を含めることもできます。変数も展開されないことに 注意してください。

于 2014-08-23T18:54:08.940 に答える