搜索到的linux c更改命令行颜色为加上\033m
在尝试中发现如果使用>将结果保存到文件中./EXE_NAME > temp
在文件会包含\033这些改变颜色的字符
但是对ls
命令输出的文本带颜色,这样保存却不会有\033之类的字符串。
请问ls是采用其他改变颜色的方法吗?还是说我少做了啥。
感谢大佬
搜索到的linux c更改命令行颜色为加上\033m
在尝试中发现如果使用>将结果保存到文件中./EXE_NAME > temp
在文件会包含\033这些改变颜色的字符
但是对ls
命令输出的文本带颜色,这样保存却不会有\033之类的字符串。
请问ls是采用其他改变颜色的方法吗?还是说我少做了啥。
感谢大佬
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.5k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
2 回答798 阅读✓ 已解决
1 回答3.3k 阅读
ls 会检测输出的目标是终端还是重定向的文件。如果是文件,那么不输出相应的颜色控制字符。
ls 有一个参数,--color 来控制这一行为。如果使用 --color=always ,则总是会输入颜色控制字符。如果是 --color=never ,则不会使用颜色。 --color=auto 会进行上述的自动检测。
ls