我想做一個循環(for file in *)
只有5次(所以它不是一個真正的循環了,但是)但是有無論如何做到這一點?做一個循環只有5次
回答
將文件放在數組中,然後對數組進行切片。
$ files=(*)
$ for file in "${files[@]::5}" ; do echo "$file" ; done
あいうえお
0000000000-11-005978.txt
0000000000-11-020832.txt
1
,123
這隻會看看目錄的第一個五個品:如果
for file in $(ls | head -5)
正如伊格納西奧巴斯克斯 - 艾布拉姆斯點出,這僅適用於您的文件名不包含任何空格。 (他們可能不會,但事情要記住。)
除非其中一個在文件名中有空格。 – 2011-12-31 22:45:29
@ IgnacioVazquez-Abrams嗯,這是非常罕見的,雖然你是正確的。 – chrisaycock 2011-12-31 22:53:05
@chrisaycock:文件名中的空白不是非常罕見。 '用於$(ls -1 | head -5)中的文件「;做回聲「$文件」;完成'做它應該做的事情。 – Dennis 2011-12-31 23:05:51
假設變量i未定義或0,當你進入循環,在循環中不使用,只需添加一行:
test $((++i)) -ge 5 && break
在循環體中。循環將在第5次迭代期間爆發,因此如果將該行放在循環體的末尾,那麼您的命令將執行5次。如果你的外殼支持的話,你也可以使用更少的便攜式
((++i >= 5)) && break
這裏是另一種解決方案,只使用bash和沒有外部工具:
let COUNT=0
for FILENAME in *
do
echo do something to $FILENAME
let COUNT=COUNT+1
if (($COUNT == "5")); then
break
fi
done
- 1. Foreach循環只有一次
- 2. Javascript for循環應循環兩次,爲什麼只有一次?
- 3. while循環只循環一次
- 4. 如何只循環一次循環?
- 5. SQL中while循環只循環一次
- 6. Netlogo while while循環只有一次
- 7. PHP循環:重複只有一次
- 8. ScheduledExecutorService只循環一次
- 9. 循環只運行一次
- 10. Java while循環跳過行,每2個循環做一次
- 11. PHP while while循環,第二個循環只運行一次
- 12. 雖然循環只打印一次而不是整個循環
- 13. 循環數據 - 循環兩次只加載一個數據
- 14. Perl while while循環只在for循環中循環一次
- 15. 如何循環一個對象一次給我5個項目?
- 16. Youtube的iframe循環只循環2次
- 17. 遍歷循環在HTML和JavaScript只執行一次 - 應該在做循環中的每一次
- 18. 做一個循環ViewPager
- 19. 只觸發一個循環,連續5個文件
- 20. 做while循環:在循環內執行一次
- 21. 時間數組只有一個循環
- 22. 在for循環中只打印一次
- 23. Tensorflow while while循環只運行一次
- 24. MySQL查詢只循環一次
- 25. 只使用while循環一次
- 26. 嵌套while循環只迭代一次
- 27. Java循環只運行一次
- 28. 我的循環只經過一次
- 29. Python for循環只執行一次?
- 30. 嵌套for循環只迭代一次
以何種方式不限制環路5迭代使其「不是真正的循環」? – 2011-12-31 22:58:49
還有'seq'命令。 – fge 2012-01-01 12:50:21