我能否举例说明这三个元素(这些元素是否称为元字符?)有何不同?
我知道这*意味着全有或全无,但我不确定这是否是正确的思考方式。另一方面.,?似乎是一样的。他们匹配一个字符,对吧?
如果我这样做ping google.com &,该过程将进入后台并不断向我显示 ping 详细信息。我仍然可以将终端与其他命令一起使用,但是 ping 的输出和其他命令的输出会混淆(这不是问题),但是我根本无法终止这个 ping 过程。
为此,我想将它带到前台,然后按 ctrl + c 或其他什么。我尝试使用fg,但它也不起作用。那么ping google.com &在我的 ping 命令结束时按下回车键后,我该如何回到前台呢?
我想知道使用rm $(ls)删除文件(或rm -r $(ls)删除目录)是否安全?因为在所有网站中,即使此命令看起来比其他命令容易得多,人们也会提供其他方法来执行此操作。
我使用命令在我的目录中创建了三个文件touch inv{1..3}.txt。现在我使用了两个命令,它们的输出几乎相同。这两个命令是ls inv[13].txt和ls {1,3}.txt。
那么这两个有什么不同呢?与大括号相比,方括号有何不同?我也在谷歌上搜索“linux [..]”,但找不到任何东西,所以我能知道这些东西在 linux 术语中被称为什么吗?
谢谢
我明白那个
'*' : The preceding item will be matched zero or more times.
'?' : The preceding item is optional and will be matched, at most, once.
'+' : The preceding item will be matched one or more items
Run Code Online (Sandbox Code Playgroud)
谁能给我举个例子,说明在使用 grep 时什么时候会有所不同?我正在使用 egrep,但我试图检查是否可以为这些运算符生成不同的输出。
这是我试图运行的命令。
grep -r "printf" *.c
Run Code Online (Sandbox Code Playgroud)
我试图从.c我的 cwd 中存在的所有文件中获取所有 printf 行。到目前为止,我的当前目录是 Desktop,并且我.c在 Desktop 下的子目录中至少有 10-15 个文件,但是此命令根本不显示任何匹配项。那么在这种情况下我该如何进行这项工作呢?
如何在 linux 中阅读这些内容: $, $*, $?, $#, $@ ?
人们在谈论/解释这些事情时是否遵循任何惯例?
谢谢