Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell zsh颜色仅在终端直接使用命令时工作_Shell_Terminal_Zsh - Fatal编程技术网

Shell zsh颜色仅在终端直接使用命令时工作

Shell zsh颜色仅在终端直接使用命令时工作,shell,terminal,zsh,Shell,Terminal,Zsh,我正在尝试写一个zsh脚本,它可以用颜色反映一些有用的信息。作为测试,我制作了以下文件: #!/bin/zsh echo $fg[red] "test" 它应该只输出红色的test,但是当我运行它时,它输出test,但是它是默认的文本颜色,而不是红色 如果我直接在我的终端中键入echo$fg[red]“test”,它就会正常工作,我会看到红色的test,但是当我用上面的代码运行文件时,颜色就不起作用了 有什么我遗漏了或做错了吗?您需要首先加载zsh随附的颜色(/usr/share/zsh/f

我正在尝试写一个zsh脚本,它可以用颜色反映一些有用的信息。作为测试,我制作了以下文件:

#!/bin/zsh

echo $fg[red] "test"
它应该只输出红色的
test
,但是当我运行它时,它输出
test
,但是它是默认的文本颜色,而不是红色

如果我直接在我的终端中键入
echo$fg[red]“test”
,它就会正常工作,我会看到红色的
test
,但是当我用上面的代码运行文件时,颜色就不起作用了


有什么我遗漏了或做错了吗?

您需要首先加载zsh随附的
颜色(
/usr/share/zsh/functions/Misc/colors
),并初始化所有
$fg
$bg
和更多变量

#/bin/zsh
自动加载颜色(&C)
echo$fg[红色]“测试”
将打印一个红色的
测试