Linuxベースのルーターをリモートで構成するスクリプトを作成しています。最初のステップは、目的のデバイスのシリアル番号を取得することです。
- シリアル番号と同じ名前のフォルダを作成します。
- シリアル番号を含むテキストファイルの作成
- このシリアル番号を含む行を構成ファイルに入れます。
タスク2が最も簡単です。mnf_info -s > sn.txt
しかし、実際の名前を抽出してそれを渡すにはどうすればよいですかmkdir
?sed
そして、何の対話もせずにリモートでパスワードを変更する方法を知っていますか?そのデバイスに予想されるコマンドがないため、これを行う必要があります。どんなアイデアがありますか?
事前にありがとう
クシシュトフ
答え1
コマンドの出力を保存できますvariable=$(command)
。あなたの場合は次のとおりです。
serial="$(mnf_info -s)"
mkdir "$serial"
echo "$serial" > "$serial"/sn.txt
ローカルに保存されたスクリプトをリモートで実行するには、上記の行を(ローカルに)保存してから、次のようにmyscript
使用できます。
ssh [email protected] "bash" <myscript
答え2
ssh $i <<'EOF'
ser=$(mnf_info -s)
mkdir $ser
mnf_info -s >sn.txt
sed -i '1i $ser' configfile
EOF
Here we saving serial number in variable and later using to creating directory and add variable content in config file
This may help you