前提・実現したいこと
PowerShellのInvoke-WebRequestでrawcontentを取得した時
Select-Stringでエラーが出てしまいます。
どうすればいいのでしょうか?またなぜエラーが出るのでしょうか?
該当のソースコード
PowerShell
1$url='https://www.yahoo.co.jp/' 2$response=Invoke-WebRequest $url 3$rawcontent=$response.rawcontent 4$rawcontent | Select-String -Pattern "^Content-Type:" #①
発生している問題・エラーメッセージ
out-lineoutput: startIndex cannot be larger than length of string. (Parameter 'startIndex')
試したこと
いったんファイルに出力すればエラーなく実行できました。
PowerShell
1$rawcontent | Out-File "tes.txt" 2Get-Content "tes.txt" | Select-String -Pattern "^Content-Type:" #②
ただ、ファイルに出力に使う文字コードを取得するためにSelect-Stringをしたいので
ファイルに出力してからではだめなのです。
Get-Memberでタイプを調べたところ①、②ともにSystem.Stringでした。
$response.Headersのハッシュテーブルからでも文字コードは取得できますが
rawcontentからでお願いします。
補足情報(FW/ツールのバージョンなど)
Windows 10 64bit
PowerShell 7.1.4
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/11 03:05