歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Linux編程:printf命令

Linux編程:printf命令

日期:2017/3/3 15:58:42   编辑:關於Linux

printf是一個把從標准輸入的字符按照你所要求的格式輸出到標准輸出即屏幕的命令.在很多時候,我們可能需要將自己的數據給他格式化輸出的。例如考試分數的輸出:假設有一個文件test.txt記錄著考試分數,內容如下圖所示:

上表的數據主要分成五個字段,各個字段之間可使用 tab 或空格鍵進行分隔。

printf命令格式:

printf '打印格式' 實際內容

關於格式方面的幾個特殊樣式

接下來我們來進行幾個常見的練習。假設所有的數據都是一般文字 (這也是最常見的狀態),因此最常用來分隔數據的符號就是 [Tab] 。因為 [Tab] 按鍵可以將數據作個整齊的排列!那麼如何利用 printf 命令?參考底下這個范例:

URL:http://www.bianceng.cn/OS/Linux/201410/45913.htm

如上所示,printf命令的輸出結果並沒有對齊,%s代表一個不固定長度的字符串,而字符串與字符串中間就以 \t 這個 [tab] 分隔符來處理。既然每個字段的長度不固定會造成上述的困擾,那我將每個字段固定就好啦。

將test.txt文件中的內容,分別以字符串、整數、小數點來顯示:

上面的格式共分為五個字段, %10s 代表的是一個長度為 10 個字符的字符串字段,%5i 代表的是長度為 5 個字符的數字字段,至於那個 %8.2f 則代表長度為 8 個字符的具有小數點的字段,其中小數點有兩個字符寬度;全部的寬度僅有 8 個字符,整數部分占有 5 個字符,小數點本身 (.) 占一位,小數點後的位數則有兩位。

printf 除了可以格式化處理之外,他還可以依據ASCII 的數字與字符對應來顯示數據,舉例來說 16 進位的 55 可以得到什麼 ASCII 的顯示字符?

本文出自 “甘兵” 博客,請務必保留此出處http://ganbing.blog.51cto.com/7002794/1223334

Copyright © Linux教程網 All Rights Reserved