gpt4 book ai didi

csh 脚本变量替换

转载 作者:太空宇宙 更新时间:2023-11-04 11:19:40 30 4
gpt4 key购买 nike

我有一个执行以下操作的小脚本。我已经为这个例子简化了它。

set logfile=$HOME/LOG/output.log
find execute.sh -type f -exec csh -c '"$1" >& "$logfile" &' {} \;

问题是 find 命令没有扩展 $logfile 值。相反,它给我一个错误

logfile: Undefined variable.

我对 csh 不太熟悉,也没有编写脚本很长一段时间,但是是否有可能逃避它或以其他方式访问命令中的值?

最佳答案

logfile 不是环境变量,因此它不存在于由 -exec primary 启动的 shell 中。您可以使用 setenv:

setenv logfile "$HOME/LOG/output.log"

或更改引号,以便在将命令传递给 csh 之前扩展 $logfile。不过,我不清楚 $1 应该如何设置。

关于csh 脚本变量替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19055477/

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