hugo17 发表于 2021-6-26 02:47:28

genesis使用心得

研究了一下,想搞清楚为什么部分windows系统直接run_script执行perl脚本的时候为什么执行失败。
原先的代码中,
set _HEAD = `(sed -n 1p $PROG)`


if("$_HEAD" =~ *perl*)then
echo "Executing Perl Program $PROG $argv"
perl $PROG $argv
set PROG_STATUS=$status
else if("$_HEAD" =~ *python*)then
echo "Executing Python Program $PROG $argv"
python $PROG $argv
set PROG_STATUS=$status
else if("$_HEAD" =~ *wish*)then
setenv TCSHONLYSTARTEXES 1
echo "Executing TCL Program $PROG $argv"
$_genesis_root/sys/hooks/wish_start.tcl $PROG $argv
set PROG_STATUS=$status
else if("$PROG" =~ *.pl)then
echo "Executing Perl Program $PROG $argv"
perl $PROG $argv
set PROG_STATUS=$status
else
echo "Executing C Shell Program $PROG"
source $PROG
set PROG_STATUS=$status
endif


语句中使用了sed命令,获取脚本的第一行,如果其中包含perl字样,使用perl运行脚本。
但是,实际运行中,错误信息中提示了 sed 功能不识别。
运行结果中都是“运行的是CSHELL脚本,运行失败”
其实除了sed之外,我还尝试了awk grep等其他Cshell工具程序。都提示功能不识别(不知道是什么鬼,windows版本和Xmanager的问题?)。

但是,实际上,只是需要确认在一种条件,能够让Genesis使用perl来运行脚本。
后面,我直接尝试使用正则看脚本文件是否以‘.pl'结尾,(希望正则不要不行)
结果是,尝试成功。

dss1984 发表于 2021-6-26 08:36:45

花儿与少年 发表于 2021-6-26 09:09:25

yangxf0120 发表于 2021-6-26 11:00:59

谢谢分享genesis使用心得

tuzisecond 发表于 2021-6-26 11:04:57

页: [1]
查看完整版本: genesis使用心得