> 在终端中是什么意思!

> 在终端中是什么意思!

当我输入某个命令时,有时我会得到如下的输出。

>
>
>
>

> 符号到底指的是什么。

答案1

你的情况

在这种情况下,“>”符号表示在您按下进入钥匙。

在您的例子中,您有一个尚未关闭的字符串。例如,如果我输入以下命令echo "Hello,然后按回车键,它会给我一个“>”,直到我关闭字符串。示​​例:

如果我输入:

eric@Ubuntu: /home/eric$ echo "Hello
>what?
>single quotes won't close it?'
>but double quotes will! "

它将打印出以下输出:

Hello
what?
single quotes won't close it?'
but double quotes will! "

这使得您可以拥有一个跨越多行的字符串,而不必明确输入“\n”换行符。

额外的信息

此提示会打印出“>”,而不是其他内容,这是由环境变量设置的$PS2。如果您将其设置$PS2为其他内容,则系统会提示您输入该内容。

另一种显示此提示的方法是在行尾添加反斜杠(“\”)。它基本上将两行连接在一起,例如以下两行:

eric@Ubuntu: /home/eric$echo "Hello \
>There my friend"

将被处理为eric@Ubuntu: /home/eric$echo "Hello There my friend"并仅输出Hello There my friend

这两种方法都用于以更易读的方式格式化您的代码。第一次看到它时可能会令人沮丧,因为您不知道是什么原因造成的,但当您尝试使更长的代码或代码的输出更易读时,它们都会派上用场。

答案2

管道还可用于将信息附加到文件,例如,如果你在终端中输入以下内容

echo "Test Line" > test.txt

这会将 test.txt 文件的内容设置为“测试行”,末尾带有换行符。如果该文件尚不存在,则会创建该文件。

echo "Test Line" >> test.txt

如果存在,这将在 test.txt 文件末尾添加“测试行”和换行符。如果不存在,则文件将创建为空,然后将此行添加到其中。

答案3

>意味着将流重定向到

>>意味着重定向到但最后

它仅适用于标准输出

2>适用于标准错误,显然使用1>>

标准输出是正常程序输出,标准错误是程序的错误输出。因此有两个输出。您可以使用以下命令重定向这两个输出&>

更多信息请点击此处http://www.tldp.org/LDP/abs/html/io-redirection.html

相关内容