有时,当我在 bash 中键入命令时,我会错误地在末尾键入\字符,因为它靠近 Enter 键。 每当我这样做时,我都会在下一行收到提示,如下所示:
>_
使用 ` 字符时会产生相同的输出。
这个\到底对命令做了什么?
是否有其他字符(除了\和 `)提供类似的输出?
最佳答案
\
字符允许您将命令分成多行:
$ grep "hello" /tmp/file
相当于:
$ grep "hello" \
> /tmp/file
'
和 "
字符允许您定义多行字符串,`
是一种将命令输出用作另一个参数。$(command)
做同样的事情。
当你看到
>
表示命令语法不完整。一些 shell 结构也需要终止,比如 while、for、if ...
显示的>
可以用PS2环境变量配置。
根据要求,这是一个使用 `
的例子:
假设我在 filelist.txt
中有一个文件列表:
$ cat filelist.txt
a.c
a.h
Makefile
test.cfg
[...]
我想知道每个文件中的行数。命令将是 wc -l a.c a.h Makefile [...]
。要使用 cat filelist.txt
的输出作为 wc -l 的参数,我可以使用:
$ wc -l `
> cat filelist.txt
> `
关于linux - <cmd> 的神秘输出后跟\或`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3741125/