0

HCIVR5、HCIVR6、HCIVR7、HCIVR8、IVR5、IVR6、IVR7、IVR8という8つのフォルダーがあります。最初にこのコードを書き留めました

ls -d IVR* > temporary.txt

このコードを run というファイルに保存しました。次に、./run を使用して実行しました。ファイルを開こうとすると(catとクリックによる通常の開き方を使用)、「temporary.txtにアクセスできません。

これは私のコード全体です

ls -d IVR* > temporary.txt
while read ivr_line;do echo $ivr_line;cd $ivr_line;./ivr_alarm;cd ..;done < temporary.txt
ls -d HCIVR* > temporary.txt
while read hcivr_line;do echo $hcivr_line;cd $hcivr_line;./hcivr_alarm;cd ..;done < temporary.txt

現在、このプログラムは IVR5、6、7、8 で機能します。その後、エラー ./run: line 4: temporary.txt: No such file or directory でも、最初の 2 行をコメントしても、同じエラーが発生します。

ivr_alarm のコードはこれです

mkdir TEMP
day=`date +%d-%m-%Y`
read ip<ip.txt
read ivr_number<ivr_number.txt
while read line;do scp -i ivr"$ivr_number"_key -r root@$ip:${line%?} ./TEMP/ ;done < files_needed.txt
mv ./TEMP/.bash_history ./LOGS/.bash_history_"$day"
cd TEMP
for file in *;do 
    mv $file ../LOGS/${file%.*}_"$day".${file##*.}
done
cd ..
rmdir TEMP

hcivr_alarm のコードはこれです

day=`date +%m-%d-%Y`
read ip<ip.txt
read ivr_number<ivr_number.txt
rm alarmtest
rm ./LOGS/HEALTH_CHECK_$day.log
while read line;do
echo "ssh -i hcivr"$ivr_number"_key root@$ip '${line%?}'>>./LOGS/HEALTH_CHECK_$day.log" >> alarmtest
done < commands.txt
chmod 700 alarmtest
./alarmtest

そしてalarmtestの場合(HCIVR5の場合、HCIVR6のhcivr6_keyへのキーの変更など)はこれです

ssh -i hcivr5_key root@172.19.66.137 'ocstatus'>>./LOGS/HEALTH_CHECK_04-25-2012.log
ssh -i hcivr5_key root@172.19.66.137 'ocmp-bre status'>>./LOGS/HEALTH_CHECK_04-25-2012.log

現在、このプログラムは IVR5、6、7、8 で機能します。その後、エラー ./run: line 4: temporary.txt: No such file or directory が表示されます 最初の 2 行をコメントしても、同じエラーが表示されます。どこが間違っていますか。すべての HCIVR フォルダーを手動で開いて ./hcivr_alarm を実行すると、すべて正常に動作するためです。

4

1 に答える 1

0

これを試して:

ls -d IVR* > temporary.txt
while read ivr_line;do echo $ivr_line;pushd $ivr_line;./ivr_alarm;popd;done < temporary.txt
ls -d HCIVR* > temporary.txt
while read hcivr_line;do echo $hcivr_line;pushd $hcivr_line;./hcivr_alarm;popd;done < temporary.txt

方法はわかりませんが、現在のディレクトリを何らかの形で台無しにしていると思います。

于 2012-04-25T15:38:22.553 に答える