linux - 长标志后面可以跟一个字符吗?

标签 linux command-line

<分区>

我知道一般约定是短标志(或单破折号“-”)后跟单个字符,长标志(或双破折号“--”)后跟多个字符(通常是英文单词)。另外,有时多个短标志可以像这样写成简写形式(“-l -c”为“-lc”)。

但是,这也有效“--c”吗?它似乎违反了上述约定,但只要它是唯一的标志标识符就可以吗?

尝试在网上搜索,但找不到任何相关结果。

最佳答案

是的,作为一般规则,您的 shell 和内核都不关心您传递给命令的参数的格式,只要您编写的程序需要该格式即可。

但是,如果“可以”是指“是否尊重命令参数的 POSIX 约定”​​,那么您应该查看 Utility conventions POSIX 标准的一部分。在上一个发布的版本中,对您在这里想要的内容没有特别的限制,因此您应该没问题。

就是说,当您为其他人编写程序时,请尝试应用 Principle of least astonishment .人们通常希望单个字母命令前面有 -,因此最好尽可能遵循事实上的约定。

关于linux - 长标志后面可以跟一个字符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52507641/

相关文章:

linux - 每个句子在新行中输出 cat 命令

linux - 取反数 : what is the fastest operation? 使用位运算还是使用 if 语句?

android - 模拟器 : ERROR: A snapshot operation for 'Nexus_4_API_27' is pending and timeout has expired. 退出

php - 有没有一种简单的方法可以在命令行中本地设置断点并调试 PHP 脚本?

string - 如何在golang中读取 "\t"作为标签

linux - 提取一个字符后的子字符串

linux - 是否可以使用 ss7 协议(protocol)通过 ss7 线路发送传真数据?

ios - mmap、msync(MS_ASYNC) 和 munmap

xp 中的 Windows 命令 "where arg"?

linux - 使用 bash、awk 或 sed 将 CSV 文件模板化为 SQL 文件