比較的単純なスクリプトだと思うものを実行しています。
$txtPath = "c:\users\xxxxxx\desktop\cgc\tx\"
$srcfiles = Get-ChildItem $txtPath -filter "*.txt*"
ForEach($txtfile in $srcfiles) {
Write-Host $txtfile
Get-Content $txtfile
}
次の出力が得られます。
Automatic_Post-Call_Survey_-_BC,_CC.txt
Get-Content : Cannot find path 'C:\users\x46332\desktop\cgc\Automatic_Post-Call_Survey_-_BC,_CC.txt' because it does no
t exist.
At C:\users\x46332\desktop\cgc\testcount2.ps1:34 char:13
+ Get-Content <<<< $txtfile
+ CategoryInfo : ObjectNotFound: (C:\users\x46332...ey_-_BC,_CC.txt:String) [Get-Content], ItemNotFoundEx
ception
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand
Write-Host $txtfile
これはすぐに続くからの出力でGet-Content $txtfile
ありget-content
、私の問題の中心のようです。
行をコメントアウトするGet-Content
と、スクリプトはファイル名のリストをコンソールに生成します。$txtPath
これは、が適切に定義されていることを示唆しています。Get-Content
ただし、同じファイル/同じ変数を追加すると、何らかの理由で\tx
パスの部分が検索文字列から消えます。私のファイルGet-Content
名は印刷されますが、ファイル名のパスが印刷されただけで見つかりません。
「ディレクトリが存在しません」というエラーは、実際にはディレクトリが存在しないということではないと思います。では、何を見ればよいのでしょうか?私のコードにはエラーを隠すためのスペースがあまりありませんが、それを見つけることができません...どう思いますか?