加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

从perl脚本调用bash脚本

发布时间:2020-12-15 21:46:01 所属栏目:大数据 来源:网络整理
导读:我正在尝试perl脚本中的代码,需要在bash中调用另一个文件. 不确定,这是最好的方法吗?我可以使用system()直接调用它吗? 请指导/给我一个示例方式. 从我到目前为止所尝试的: #!/usr/bin/perl system("bash bashscript.sh"); Bash: #!/bin/bashecho "cdto c
我正在尝试perl脚本中的代码,需要在bash中调用另一个文件.
不确定,这是最好的方法吗?我可以使用system()直接调用它吗?
请指导/给我一个示例方式.

从我到目前为止所尝试的:

#!/usr/bin/perl
     system("bash bashscript.sh");

Bash:

#!/bin/bash
echo "cdto codespace ..."
cd codetest
rm -rf cts
for sufix in a o exe ; do
echo ${sufix}
find . -depth -type f -name "*.${sufix}" -exec rm -f {} ;
done

我执行perl脚本时收到错误:
没有这样的文件或目录代码测试

意外令牌附近的语法错误`do

解决方法

如果您只想运行脚本,可以使用反引号或系统:
$result = `/bin/bash /path/to/script`;

要么

system("/bin/bash /path/to/script");

如果您的脚本产生了大量数据,
运行它的最好方法是使用开放管道:

if open(PIPE,"/bin/bash /path/to/script|") {
  while(<PIPE>){
  }
}
else {
  # can't run the script
  die "Can't run the script: $!";
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读