Cisco SX20 システムでは、Web インターフェイスにアクセスして、設定のバックアップを .txt ファイルにダウンロードできます。ファイルを開いて手動で設定を変更し、問題なくファイルを再アップロードできます。これで、バックアップ ファイル内の特定の設定を変更し、それを新しい .txt として保存する Powershell スクリプトができました。この新しいファイルをアップロードしようとすると、次のエラーが表示されます。
「無効なファイルがアップロードされました。」
スクリプトがファイル内の他の情報を誤って変更していないこと、およびすべての情報が必要なものであることを確認しました。唯一の違いは、元のバックアップ ファイル (Cisco Web インターフェイスからダウンロードしたもの) は読みやすくするために UNIX (LF) 形式を使用しているように見えるのに対し、Powershell によって生成されたバックアップ コピーは Windows (CR/LF) 形式を使用していることです。私のスクリプトが Web インターフェイスとの互換性の問題を引き起こしている可能性はありますか?
$name = Read-Host 'What is the SX20 name?'
if ($name -notlike "SX20NAME[a-z , 0-9]*")
{
Read-Host 'Please begin naming conventions with "SX20NAME".'
}
else {
$description = Read-Host 'What is the SX20 alias?'
(Get-Content C:\Users\SX20_Backup.txt)|
Foreach-Object {$_-replace 'SX20NAME[a-z , 0-9]*' , $name}|
Foreach-Object {$_-replace 'SetAlias' , $description}|
Out-file $env:USERPROFILE\Desktop\$name.txt}