gpt4 book ai didi

bash - 使用 env 和在命令前面进行变量赋值有什么区别?

转载 作者:行者123 更新时间:2023-11-29 09:45:49 25 4
gpt4 key购买 nike

当我想更改在 bash 中执行的命令的环境时,我可以在它前面加上变量赋值。例如,如果我暂时想设置 CLICOLOR 变量,我可以这样做:

CLICOLOR=1 ls

但我也可以这样做

env CLICOLOR=1 ls

两者结果相同,所以我想知道有什么区别吗?为什么人们使用其中一种而不是另一种?是因为可移植性,还是在使用输出重定向或管道等时有什么区别?

最佳答案

这主要是为了让您不必仅仅为了设置变量而运行 shell。许多工具允许您运行单个命令来执行特定任务(cron 作业、构建系统、各种工具的内部脚本或宏语言),并且您希望最大限度地减少此类场景的性能影响和安全面。

关于bash - 使用 env 和在命令前面进行变量赋值有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48441712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com