首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >nohup VERBOSE=1 perl script.pl

nohup VERBOSE=1 perl script.pl
EN

Stack Overflow用户
提问于 2012-01-12 03:30:34
回答 3查看 8K关注 0票数 16

我有一个perl脚本,可以将ENV变量设置为直接特定的输出,例如$debug、$verbose、$develop等

通常我从命令行运行这些命令。

$ VERBOSE=1 perl myperlscript.pl params

现在我想使用nohup来运行它们。使用命令行

$ nohup VERBOSE=1 perl myperlscript.pl params 

显然是不正确的,因为设置ENV{VERBOSE}的尝试被解释为nohup的参数&我得到了msg

nohup:无法运行命令` `VERBOSE=1':没有这样的文件或目录

这里的正确语法是什么?我正试着在linux机器上运行它。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-01-12 03:38:41

在调用nohup之前设置环境变量,当nohup exec()s ()将其自身替换为perl时,它将被保留。

$ VERBOSE=1 nohup perl myscript.pl params ...
票数 33
EN

Stack Overflow用户

发布于 2012-01-12 05:50:14

这正是env命令的用途:

$ env VAR1=VAL1 VAR2=VAL2 nohup perl myperlscript.pl params &
票数 4
EN

Stack Overflow用户

发布于 2012-01-12 03:39:10

尝试将所有命令组合到shell脚本中并像这样运行它: nohup /path/ to /script.sh

或者可以使用export: export VERBOSE=1,然后使用: nohup perl myperlscript.pl params

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8825460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档