我是一名新的linux学习者,我不知道为什么我们使用连字符作为Shell的参数。据我所知,$ 1,$ 2 ......是第一个,第二个参数。
所以我的问题是:
我们什么时候需要/不需要参数的连字符?
对我来说,当我编写自己的 shell脚本时,我总是传递没有连字符的参数。例如,myShell.sh param1 param2 param3
。
但是对于其他shell脚本,我们使用连字符。例如ls -l myDir
。如果我没错,ls
有两个参数:-l
和myDir
。为什么我们对l
使用连字符而不为myDIr
使用连字符?
答案 0 :(得分:2)
连字符(-
)用于将选项与其他参数区分开来。
我正在使用您的示例ls -l myDir
来解释。您如何区分l
是输出长列表的选项还是要列出名为l
的文件?