我正在学习使用Docker三天。 在此期间我运行了像
这样的命令var image1 = "images/image1.png";
var image2 = "images/image2.png";
var image3 = "images/image3.png";
var image4 = "images/image4.png";
var imageURLs = [
image1,
image2,
image3,
image4
];
function getImageTag() {
var img = '<div class="pdiv2" style="background-image: url(';
var randomIndex = Math.floor(Math.random() * imageURLs.length);
img += imageURLs[randomIndex];
img += ')"></div>';
return img;
}
console.log(getImageTag()); // For StackOverflow output
和
sudo docker run --rm -ti --net=example --name server ubuntu:14.04 bash
我想知道为什么我必须有时使用 nc -lp 1234
而其他命令-
有什么逻辑吗?
关于我的问题:我知道这不是一个好主题。我对此感到抱歉。在使用Docker时出现了这个问题,但我不知道--
或-
主题是否更像终端或码头主题。
答案 0 :(得分:3)
单个破折号后面可以跟多个单字符标记。双破折号后跟一个多字符标记。
在你的情况下
sudo docker run --rm -ti --net=example --name server ubuntu:14.04 bash
标志:
rm (multi-character)
t (single)
i (single)
net (multi-character)
name (multi-character)
,
nc -lp 1234
<强>标志:强>
l (single)
p (single)
答案 1 :(得分:2)
这取决于命令。有些惯例,但没有一个被普遍遵循。
在旧时代,选项是单个字母。如果一个选项采用了一个参数,它可以跟随带有或没有中间空格的选项字母(command -x foo
或command -xfoo
)。
可以捆绑不接受参数的选项,因此command -x -y
可以写为command -xy
。对于许多命令,甚至可以捆绑带参数的选项,最后指定的选项采用参数:command -x -y foo
与command -xy foo
。您问题中的nc -lp 1234
就是一个例子; l
和p
是两种不同的选择。这也可以写成nc -l -p 1234
。
来自GNU项目的命令通常可以接受传统简短形式和长形式的选项,其中选项名称是可以缩写的整个单词,只要缩写是唯一的。例如,ls
有一个-F
选项可以将/
附加到目录名称等等。 Gnu ls
允许将其指定为--classify
,或缩写为--cl
。为避免歧义和向后兼容性,旧式单字母选项使用单个-
,而长格式选项使用--
。
最后一些命令采用单个-
引入的长名称选项; find
命令就是一个例子。
唯一真正的解决方案是阅读您正在运行的特定命令的手册页。