[英]Zero padding numbers in a Bash loop
我正在嘗試使用簡單的bash循環創建一個列表
我要這個:
000000
000001
000002
他們給我這個:
0
1
2
我的shell代碼:
countBEG="000000"
countEND="999999"
while [ $countBEG != $countEND ]
do
echo "$countBEG"
countBEG=$[$countBEG +1]
done
更改echo
以使用printf,您可以在其中指定左邊距的格式。
printf "%06d\n" "$countBEG"
這將6設置為輸出的固定長度,使用零填充空白區域。
以下命令將產生所需的輸出(不需要循環):
printf '%06d\n' {1..999999}
說明:
{1..999999}
擴展為1到999999的序列 '%06d\\n'
告訴printf
顯示它作為參數填充為6位數后的數字,然后是換行符 printf
重復此輸出 您正在尋找:
seq -w "$countBEG" "$countEND"
-w
選項執行填充。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.