2017-05-31 58 views
0
#!/bin/bash 
i=1 
cat days.txt | while read days 
do 
    echo $i $days 
    let i++ 
done 

我想改變,而循環進入到循環直到外殼LOOP讀文件

#!/bin/bash 
i=1 
until conditions 
do 
    echo $i $days 
    let i++ 
done 

預期的結果

  1. 週一
  2. 週二
  3. 週三
  4. 布拉赫Blah Blah
+0

嗨,歡迎來到Stack Overflow!讀你的問題,我不清楚你想要完成什麼。請添加一段或兩段描述您的問題和用例。你提供的代碼示例在我看來也有點不完整。我需要更深入的指導,請回顧[我如何問一個好問題?](https://stackoverflow.com/help/how-to-ask) – Simon

+0

@Simon您的評論看起來很標準化(我看到它這種形式經常) - 是否有一個地方複製和粘貼這些評論? –

+0

@Simon我在Unix操作系統下運行until.sh並在同一目錄下有days.txt – Craze

回答

0

while read可以更笨拙寫成until ! read

i=1 
until ! read -r days; do 
    echo "$i $days" 
    i=$((i + 1)) 
done < file 

while command做一些事情,只要成功command退出,而until command做一些事情,直到command退出失敗。 !用於否定read的退出代碼。