Shell腳本while 循環僅執行了一次就退出,神坑


主要內容:Shell 腳本中while循環僅執行一次直接結束循環,問題分析及解決方案

========================================================

學習過Shell腳本的都很清楚,while循環非常適合處理文件的,其自帶一種光環就是可以逐行讀取文件處理。

在學習Shell腳本編程的時候,發現了while循環逐行處理文件時有時會出現執行一次循環后直接退出的情況。

 

經過多次腳本測試發現,有這樣兩種情況(以批量查看磁盤空間使用率為例):

第一種:腳本執行主機到目標主機未建立互信【如下腳本是可以正常執行】

第二種:腳本執行主機到目標主機建立互信【如下腳本是不能正常執行,會出現執行一次循環直接退出的情況】

注意:以上的ip.conf文件中為IP地址列表 

 

while循環執行一次直接退出解決方案:

 使用for循環代替while循環,如下代碼片段既可以避免出現循環執行一次直接退出的問題。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM