いくつかのファイルにいくつかのデータを出力しようとしています。ファイル名は変数の最初の文字です。私はそれが最後の部分式の問題だと思う。部分表現のエラー
$var = 123,456,789
echo abc > "$($env:userprofile)\dir\$($var[0].substring(0,1)).txt"
これは私が読んだところに従ってフォーマットしましたが、エラーを投げかけています。
いくつかのファイルにいくつかのデータを出力しようとしています。ファイル名は変数の最初の文字です。私はそれが最後の部分式の問題だと思う。部分表現のエラー
$var = 123,456,789
echo abc > "$($env:userprofile)\dir\$($var[0].substring(0,1)).txt"
これは私が読んだところに従ってフォーマットしましたが、エラーを投げかけています。
ターゲットディレクトリが存在しない場合、リダイレクト演算子>
を使用すると失敗します。
$var = 123,456,789 #this is an array of ints
$Path = $env:UserProfile + "\dir\$($var[0].ToString().Substring(0,1)).txt"
If (-not (Test-Path -Path $Path)) {New-Item -Path $Path -ItemType 'File' -Force}
'abc' > $Path
(Test-Path -Path $ Path)が$の前に存在しないのはなぜですか? – Lumify
@Lumifyあなたは何を意味するか分かりますか?文字列を必要としないケースをテストする場合、文字列の部分式は必要ありません。 – TheIncorrigible1
ああ、テストカッコです。 – Lumify
実際のエラーを投稿してください。 FWIWでは、整数に対して '.Substring()'を呼び出すことはできません。最初に文字列に変換する必要があります –