Bash
Printf - 列印重複的減號
如何使用
printf
列印一行減號?當我嘗試時:
printf "-----------\\n"
我得到:
bash: printf: - : invalid option printf: usage: printf [-v var] format [arguments]
當我嘗試時:
printf "\-\-\-\-\-\-\-\-\-\-\-\\n"
我得到:
\-\-\-\-\-\-\-\-\-\-\-
printf()
在不使用格式說明符的情況下,這是一種極其低效的使用方式。您通常定義它們以告知正在格式化的輸出類型。它應該寫成printf '%s\n' "-----------"
使得作為字元串類型與採用字元串關鍵字 ( )的格式說明符
printf
相匹配。說明符之後的意思是,在列印字元串後添加新行。-----------``%s``\n
通過您所擁有的嘗試,當引號刪除發生時,
printf
將破折號解釋為它不理解的命令行標誌之一。另一種 hacky 方法是讓它
printf
知道它的命令行參數是完整的,並將它後面的內容解釋為它的參數。大多數 shell 內置和/或外部命令通過--
在命令關鍵字後添加後綴來支持這一點,即printf -- "-----------\n"