printf命令手冊
printf:格式和打印數(shù)據(jù)
功能描述
printf命令模仿了C語言中printf( )函數(shù)。
printf命令的作用是按照我們指定的格式輸出文本。默認(rèn) printf 不會像 echo 一樣自動添加換行符,需要我們手動添加 \n進(jìn)行換行。
命令語法
printf [選項] [文本1] [文本2] ...
選項含義
| 選項 | 含義 |
|---|---|
| \a | 警告字符,通常為ASCII的BEL字符 |
| \n | 換行 |
| \r | 回車 |
| \0ddd | 表示1到3位的八進(jìn)制值字符 |
| \ddd | 表示1到3位數(shù)八進(jìn)制值的字符。僅在格式字符串中有效 |
參考實例
(1)字符串輸出:
[root@cnLinuxer ~]# printf "Hello, World\n"
Hello, World
(2)使用格式替換符 "%s" 格式化輸出:
[root@cnLinuxer ~]# printf "%s\n" a b c d
a
b
c
d
[root@cnLinuxer ~]# printf "%s %s \n" a b c d
a b
c d
[root@cnLinuxer ~]# printf "%s %s %s \n" a b c d e f
a b c
d e f
(3)接下來,我們用一個腳本來體現(xiàn)printf 的強(qiáng)大功能:
[root@cnLinuxer ~]# vim printf.sh
printf "%-10s %-8s %-4s\n" 姓名 性別 體重kg
printf "%-10s %-8s %-4.2f\n" 張三 男 59.5278
printf "%-10s %-8s %-4.2f\n" 李四 男 62.7323
printf "%-10s %-8s %-4.2f\n" 王五 女 49.8767
腳本執(zhí)行結(jié)果,如下所示:
[root@cnLinuxer ~]# sh printf.sh
姓名 性別 體重kg
張三 男 59.53
李四 男 62.73
王五 女 49.88
%s %c %d %f都是格式替代符
%-10s 指一個寬度為10個字符(-表示左對齊,沒有則表示右對齊),任何字符都會被顯示在10個字符寬的字符內(nèi),如果不足則自動以空格填充,超過也會將內(nèi)容全部顯示出來。
%-4.2f 指格式化為小數(shù),其中.2指保留2位小數(shù)。
(4)給傳入的a,b,c,d 添加一對“括號”
[root@cnLinuxer ~]# printf "( %s )" a b c d;echo ""
( a )( b )( c )( d )
有收獲,點個在看 
評論
圖片
表情
