長話短說:printf正在向數字中添加零,而不是用數字替換它們。printf%d正在添加而不是替換填充的零
更多細節:
我目前正在嘗試使用猛砸在我的Ubuntu操作系統執行一系列包含我的數據庫查詢分解文件 的。
中的文件被打散了的樣子如下:
x0000000000
x0000000001
x0000000002
etc.
我正在一個小腳本,將通過使用bash的printf的填零功能運行這些文件。
我的腳本看起來像我已經Google和看過的每一個人,但結果是不同的。
這裏是我的腳本:(不是一個用於查詢,但一拿到文件名)
for i in {0..10};
do
printf "x%010d"$i;
done
這應該出來的東西喜歡這樣的:
x0000000000
x0000000001
x0000000002
x0000000003
x0000000004
x0000000005
x0000000006
x0000000007
x0000000008
x0000000009
x0000000010
不過是而不是像這樣出現:
x00000000000
x00000000001
x00000000002
x00000000003
x00000000004
x00000000005
x00000000006
x00000000007
x00000000008
x00000000009
x000000000010
它純粹是向數字而不是數字代表添加零繫緊它們。
有人可以告訴我,如果我無意中打開了一些設置,做錯了什麼,或有錯誤嗎?
加只是一個空間:printf的 「X%010d」 $ I; – jap1968
也謝謝你,我首先看到了另一篇文章。 – komodor64