You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Bash的printf函数无法打印‘--’字符?如何解决?

问题原因

Bash 的 printf 命令会将以 -- 开头的参数识别为选项终止符,用来告知命令后续内容不再作为选项解析。但当你直接执行 printf "--" 时,printf 会判定你仅提供了选项终止符,却未传入它必需的格式字符串参数,因此抛出用法错误提示。

解决方法

有两种简单可行的解决方式:

  • 方法一:用额外的 -- 终止选项解析
    在要打印的 -- 前多传一个 --,明确告诉 printf 后面的内容是格式字符串而非选项:

    printf -- "--"
    
  • 方法二:使用格式占位符指定输出
    将 -- 作为参数传给格式字符串 %s,让 printf 直接输出该参数内容,避免被识别为选项:

    printf "%s" "--"
    

内容的提问来源于stack exchange,提问作者Redshoe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 20:24:57