您好,登錄后才能下訂單哦!
今天小編給大家分享一下Linux的printf命令怎么使用的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
格式化并輸出結果。
printf [-v var] format [arguments]
格式化參數并輸出。
-v var:將結果輸出到變量var中而不是輸出到標準輸出。
format:輸出格式。
arguments:一到多個參數。
轉義序列:除了支持printf(1)和printf(3)的轉義序列,內建printf還支持以下轉義序列: %b 展開參數中的反斜杠轉義字符。 %q 將參數擴起以用作shell輸入。 %(fmt)T 根據strftime(3)中的轉義字符來輸出日期時間字符串。
返回狀態為成功除非給出了非法選項、寫錯誤、賦值錯誤。
# %-5s 格式為左對齊且寬度為5的字符串代替('-'表示左對齊),不使用則默認右對齊。 # %-4.2f 格式為左對齊寬度為4,保留兩位小數。 printf "%-5s %-10s %-4s\n" NO Name Mark printf "%-5s %-10s %-4.2f\n" 01 Tom 90.3456 printf "%-5s %-10s %-4.2f\n" 02 Jack 89.2345 printf "%-5s %-10s %-4.2f\n" 03 Jeff 98.4323 # 輸出 NO Name Mark 01 Tom 90.35 02 Jack 89.23 03 Jeff 98.43 # %b %q %(fmt)T 的例子。 # see it again with a newline. printf "%s\n" 'hello world' # 展開換行符,和上面的結果一樣。 printf "%b" 'hello world\n' printf '%q\n' 'a b c' # 輸出 a\ b\ c # %z為時區,%n為換行符。 printf "%(%F %T %z%n)T" # 輸出 2019-09-10 01:48:07 +0000
該命令是bash內建命令,相關的幫助信息請查看help命令。
printf FORMAT [ARGUMENT]... printf OPTION
格式化參數并輸出。
--help 顯示幫助信息并退出。 --version 顯示版本信息并退出。
format:輸出格式。
arguments:一到多個參數。
在這里忽略了(%b %q),如果你安裝的coreutils版本支持它們,那么請參考上面的例子。 支持的轉義序列: \" 雙引號 \\ 反斜杠 \a 響鈴 \b 退格 \c 截斷輸出 \e 退出 \f 翻頁 \n 換行 \r 回車 \t 水平制表符 \v 豎直制表符 \NNN 八進制數 (1到3位數字) \xHH 十六進制數 (1到2位數字) \uHHHH Unicode字符附加4位十六進制數字 \UHHHHHHHH Unicode字符附加8位十六進制數字 %% 百分號 以及'diouxXfeEgGcs'中的一個結尾的C格式規范,將被轉換為正確的類型并處理可變寬度。
# 使用 /usr/bin/printf 確保調用的不是內建命令。 # 當然,在你關閉內建printf以及確認當前環境沒有printf函數的情況下,可直接使用printf,詳見末尾"注意"的鏈接。 # 按行打印數組和關聯數組的下標及值。 # 聲明數組可以不加'declare -a'或'local -a'(在函數內聲明的局部變量)。 arr=('line1' 'line2') /usr/bin/printf "%s\n" ${!arr[@]} # 輸出下標 0 1 /usr/bin/printf "%s\n" ${arr[@]} # 輸出值 line1 line2 #聲明關聯數組(也就是字典)必須加'declare -A'或'local -A'(在函數內聲明的局部變量)。 declare -A assoc_arr=(['key1']='value1' ['key2']='value2') /usr/bin/printf "%s\n" ${!assoc_arr[@]} # 輸出鍵。 key2 key1 /usr/bin/printf "%s\n" ${assoc_arr[@]} # 輸出值。 value2 value1
返回狀態為成功除非給出了非法選項等。
該命令是GNU coreutils包中的命令,相關的幫助信息請查看man -s 1 printf或info coreutils 'pwd invocation'。
啟動或關閉內建命令請查看enable命令,關于同名優先級的問題請查看builtin命令的例子部分的相關討論。
我通過和bug-bash@gnu.org的交流,得到了關于這幾個格式說明符%b %q %(fmt)T的解釋:
printf(1)中的%b格式說明符是printf(3)支持的格式之外增加的一個POSIX特性。
%q和%T說明符是非標準的,并且不受所有獨立實現的printf的支持。
以上就是“Linux的printf命令怎么使用”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。