显然,运行:
perl -n -e 'some perl code' *
Run Code Online (Sandbox Code Playgroud)
或者
find . ... -exec perl -n -e '...' {} +
Run Code Online (Sandbox Code Playgroud)
(与-p代替相同-n)
或者
perl -e 'some code using <>' *
Run Code Online (Sandbox Code Playgroud)
经常在本网站上发布的 one-liners 中发现,具有安全隐患。这是怎么回事?如何避免?
ls -a(我考虑-a一个选项)
sudo -u username( -u= 选项, username= arg)
chmod 664 my-dir( 664= 选项, my-dir= arg)
我想不出一个可能会说“这是一个标志”的例子,除非在查看目录列表时:
-r--------. 1 david david 3344 May 19 17:48 611056.pdf
Run Code Online (Sandbox Code Playgroud)
这为所有者设置了“读取标志”,仅此而已。是什么阻止我将其称为“阅读选项”?
我主要使用 DocBook XML 编写和编辑技术文档,我正在寻找差异的解释,尽可能一致和准确。但是,我已经看到了一种模式的形成:
setenforce 0我可以看到自己组合了标志和选项(有些选项可能有十几个可能的值,但布尔值只有两个)。参数看起来足够不同以维持它们的原样。
du -sh *和 和有du -sh ./*什么区别?
注意:我感兴趣的是*和./*部分。
如果我想知道 的含义wget -b,我看手册man wget,然后搜索-b选项。
-b
--background
Go to background immediately after startup. If no output file is specified via the -o, output is redirected to wget-log.
Run Code Online (Sandbox Code Playgroud)
我想通过像man wget -b. (当然这行不通。)
有没有类似的方法使它成为可能?
我已经学会了使用不带“-”的 tar 作为选项,例如,tar cvfz dir.tar.gz Directory/但我最近遇到了略有不同的tar -czvf语法(我认为在这种情况下,“f”必须是最后一个选项)。
两者都适用于 linux 和 Mac OS。是否有推荐的语法,没有 '-' 的 ou 更易于移植到 unix 风格?
最近我知道--那是双连字符,它用于告诉命令选项列表已经结束,后面的内容不应被视为选项。所以,
grep -- 'search_word' *
Run Code Online (Sandbox Code Playgroud)
将搜索给定的search_word. 但是,如果您删除--并且有一个以 开头的文件,您可能会看到意外行为-,这将打开与filename 中的字符匹配的选项。
这叫什么--?这有什么技术术语吗?
在凯旋门上维基fstab指定的选项/是defaults,noatime,但在我安装的默认fstab用的选项创建的rw,relatime。该拱门维基覆盖atime问题。我很好奇的是defaults选项。该man换页mount说:
默认值
使用默认选项:rw、suid、dev、exec、auto、nouser 和 async。
请注意,所有默认挂载选项的真实设置取决于内核和文件系统类型。有关更多详细信息,请参阅本节开头。
是仅在defaults提供选项时才使用默认选项还是在所有情况下都使用它们?我需要defaults在我的fstab?
据说用-O3gcc 优化选项编译 GNU 工具和 Linux 内核会产生奇怪和时髦的错误。这是真的吗?有没有人尝试过,还是只是一个骗局?
是否有一些内置工具可以识别-x和--xxxx作为开关,而不是参数,或者您是否必须遍历所有输入变量,测试破折号,然后解析参数?
我有这个代码 -
#getoptDemo.sh
usage()
{
echo "usage: <command> options:<w|l|h>"
}
while getopts wlh: option
do
case $option in
(w)
name='1';;
(l)
name='2';;
(h)
name='3';;
(*)
usage
exit;;
esac
done
print 'hi'$name
Run Code Online (Sandbox Code Playgroud)
当我运行bash getoptDemos.sh(不带选项)时,它会打印hi而不是调用函数usage。当给出 w、h 和 l 以外的选项时,它调用用法。那么当没有指定选项时它就不能工作。
我曾尝试使用?, \?,:代替,*但我无法实现我想要的。我的意思是所有的docs上getopt说它使用?。
我究竟做错了什么?