亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標(biāo)題:
如何根據(jù)讀入的變量長度做循環(huán)?
[打印本頁]
作者:
oniziga
時(shí)間:
2012-06-15 17:41
標(biāo)題:
如何根據(jù)讀入的變量長度做循環(huán)?
本帖最后由 oniziga 于 2012-06-18 11:07 編輯
請教一個(gè)問題:
讀入變量
read start
如果start是1,則從1開始循環(huán),可以做1-9的循環(huán),比如打印D1-D9;
如果start是01,則從01開始循環(huán),可以做01-99的循環(huán),比如打印D01-99;
如果start是001,則從001開始循環(huán),可以做001-999的循環(huán),比如打印D001-D999.
依次類推。。。
有沒有比較優(yōu)雅的實(shí)現(xiàn)方法?
+++++++++++++++++++++++++++++++++++++++++++++++++++++
非常感謝下面回帖的各位,方法夠優(yōu)雅,可惜我都看不懂,哈哈
不好意思,我沒有把需求說的明白,重新說一下:
實(shí)現(xiàn)一個(gè)函數(shù),有兩個(gè)變量,第一個(gè)變量$1是一個(gè)字符串,第二個(gè)變量$2是整數(shù);
要求該函數(shù),對字符串$1實(shí)現(xiàn)循環(huán)$2次數(shù)。比如第一個(gè)參數(shù)是“D001”,第二個(gè)參數(shù)是5,則打印出D001-D005;
如果第一個(gè)參數(shù)是D005,第二個(gè)參數(shù)是10,則打印D005-D014.
反正是從$1的最后一位開始遞增。
難點(diǎn)應(yīng)該是循環(huán)次數(shù)不一定,如果D001-D005種情況好說,但是D005-D014設(shè)計(jì)到進(jìn)位了,如果要進(jìn)多個(gè)位可能是不是更麻煩?比如D0001-D0555.
作者:
英語盲學(xué)linux
時(shí)間:
2012-06-15 17:47
寫個(gè)end變量:
end=$(echo "$start"|sed s/./9/g)
復(fù)制代碼
作者:
jils2013
時(shí)間:
2012-06-15 17:48
awk '{for(i=1;i<10^length("'"$start"'");i++)print i}'
算得上優(yōu)雅不
作者:
hbmhalley
時(shí)間:
2012-06-15 18:25
eval echo {$start..${start//?/9}}
復(fù)制代碼
作者:
jiejie455
時(shí)間:
2012-06-15 21:21
回復(fù)
4#
hbmhalley
夠優(yōu)雅!
作者:
yinyuemi
時(shí)間:
2012-06-16 00:05
seq -f %0$(expr length $start).f ${start//*/9}
作者:
oniziga
時(shí)間:
2012-06-18 11:08
頂頂
)
)
作者:
sandao381
時(shí)間:
2012-06-18 11:39
回復(fù)
4#
hbmhalley
牛叉哄哄呀
作者:
yinyuemi
時(shí)間:
2012-06-18 14:46
回復(fù)
1#
oniziga
用seq應(yīng)該可以,它既可以設(shè)置格式,也可以設(shè)定遞增值,比如
seq -f "D%03.f" 5 2 $((10+5))
D005
D007
D009
D011
D013
D015
復(fù)制代碼
作者:
oniziga
時(shí)間:
2012-06-26 09:51
yinyuemi 發(fā)表于 2012-06-18 14:46
回復(fù) 1# oniziga
謝謝,是我想要的。
作者:
dragon23452345
時(shí)間:
2012-06-26 16:38
提示:
作者被禁止或刪除 內(nèi)容自動(dòng)屏蔽
歡迎光臨 Chinaunix (http://www.72891.cn/)
Powered by Discuz! X3.2