Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.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
cronjob中的Bash转义序列不工作_Bash_Cron_Escaping_Crontab - Fatal编程技术网

cronjob中的Bash转义序列不工作

cronjob中的Bash转义序列不工作,bash,cron,escaping,crontab,Bash,Cron,Escaping,Crontab,我使用以下转义序列格式化脚本的输出: SCurs='\e[s'; # Save Cursor MCurs="\e[80C"; # Move Cursor MCursB="\e[35C"; # Move Cursor a bit RCurs='\e[u'; # Reset Cursor RCol='\e[0m'; # Text Reset # Regular

我使用以下转义序列格式化脚本的输出:

    SCurs='\e[s';           # Save Cursor
    MCurs="\e[80C";     # Move Cursor
    MCursB="\e[35C";        # Move Cursor a bit
    RCurs='\e[u';           # Reset Cursor
    RCol='\e[0m';           # Text Reset

    # Regular           Bold                Underline           High Intensity      BoldHigh Intens     Background          High Intensity Backgrounds
    Bla='\e[0;30m';     BBla='\e[1;30m';    UBla='\e[4;30m';    IBla='\e[0;90m';    BIBla='\e[1;90m';   On_Bla='\e[40m';    On_IBla='\e[0;100m';
    Red='\e[0;31m';     BRed='\e[1;31m';    URed='\e[4;31m';    IRed='\e[0;91m';    BIRed='\e[1;91m';   On_Red='\e[41m';    On_IRed='\e[0;101m';
    Gre='\e[0;32m';     BGre='\e[1;32m';    UGre='\e[4;32m';    IGre='\e[0;92m';    BIGre='\e[1;92m';   On_Gre='\e[42m';    On_IGre='\e[0;102m';
    Yel='\e[0;33m';     BYel='\e[1;33m';    UYel='\e[4;33m';    IYel='\e[0;93m';    BIYel='\e[1;93m';   On_Yel='\e[43m';    On_IYel='\e[0;103m';
    Blu='\e[0;34m';     BBlu='\e[1;34m';    UBlu='\e[4;34m';    IBlu='\e[0;94m';    BIBlu='\e[1;94m';   On_Blu='\e[44m';    On_IBlu='\e[0;104m';
    Pur='\e[0;35m';     BPur='\e[1;35m';    UPur='\e[4;35m';    IPur='\e[0;95m';    BIPur='\e[1;95m';   On_Pur='\e[45m';    On_IPur='\e[0;105m';
    Cya='\e[0;36m';     BCya='\e[1;36m';    UCya='\e[4;36m';    ICya='\e[0;96m';    BICya='\e[1;96m';   On_Cya='\e[46m';    On_ICya='\e[0;106m';
    Whi='\e[0;37m';     BWhi='\e[1;37m';    UWhi='\e[4;37m';    IWhi='\e[0;97m';    BIWhi='\e[1;97m';   On_Whi='\e[47m';    On_IWhi='\e[0;107m';
例如,如果输出不是cronjob,则输出如下所示:

    Searching for latest version                                 [ OK ]
“OK”是用绿色写的

我的问题是,这不适用于cronjob。cronjob向我发送一封电子邮件,其中包含以下输出:

    [sSearching for latest version[u[-10C[ [0;32mOK [0m]
这并不漂亮,这就是我想在cronjobs中解决这个问题的原因

此行的代码如下所示:

    echo -en "${SCurs}Searching for latest version";
    echo -e "${RCurs}${MCurs}[ ${Gre}OK ${RCol}]\n";

有人能帮我吗?

为什么不使用
tput
来检测和调用终端功能?我正在使用tput。。。但是“tput”在cronjobs中说:“tput:No value for$TERM,No-T specified”是的,这是有原因的。原因应该是什么?我没有使用电子邮件客户端。我只是将电子邮件放在cronjob文件的头中:$cat/etc/cron.d/Script PATH=/usr/local/bin:/usr/bin:/bin MAILTO=mail@example.comSHELL=/bin/bash 0 20***root/root/script.shI认为这基本上就是Ignacio的目的。cronjob的环境与您正在运行的环境不同,您需要