2017-07-15 64 views
0

我使用{0..4}語法好嗎創建具有間隔1的序列:形式的bash以指定的間隔的整數序列

$ for i in {0..4}; do echo $i; done 
0 
1 
2 
3 
4 

然而,當我使用常規語法{0..4..2}2設置間隔明確地,它不工作:

$ for i in {0..4..2}; do echo $i; done 
{0..4..2} 

和預期輸出應該是:

0 
2 
4 

我的bash的版本:

$ echo ${BASH_VERSION} 
3.2.25(1)-release 

任何意見表示讚賞!

回答

0
$ for i in `seq 0 2 4`; do echo $i; done 
+0

尼斯和簡單。謝謝! ...仍然想知道爲什麼'{0..4..2}'不工作。 – koch

+0

@koch沒問題!據我所知,這個大括號步驟語法只適用於zsh,ksh93,我相信bash 4+。 –

1

你可以使用語法:

$ for ((i=0; i<=4; i+=2)); do echo $i; done 
+0

感謝您的替代解決方案! – koch