0

当我运行调用第二个脚本的第一个脚本时,不会创建任何文件

但是,当我使用与"echo"上显示的相同代码直接调用第二个时,它会按预期运行。因此,我真的不明白出了什么问题,因为代码是单独运行的。

./first_script.sh 2 ../espn

第一个脚本:

#!/bin/bash
echo "$2/$1" > format.temp
format=$(<format.temp)
format=$format"g.t*"
echo "./second_script.sh $format"
./second_script.sh $format

这是第二个脚本的代码(嵌套的):

#!/bin/bash

files=$1*/discover/*data
for file in $files
do
    sed 's/"\([^"]*\)"/"foo"/' $file > $file\_2
    sed -i 's/"foo",//g' $file\_2
    sed -i 's/[0-9]g//gi' $file\_2
    sed -i 's/[^,.0-9]//g' $file\_2
done

注意-> 文件位于文件夹中:

../espn/2g.tf/discover/

../espn/2g.tfidf/discover/

4

1 回答 1

1

注意-> 文件位于文件夹中:

../espn/2g.tf/discover/

../espn/2g.tfidf/discover/

这是什么意思??第一个目录中的第一个文件和第二个中的第二个文件?我认为您的问题在于访问第二个文件的路径


如果espn在您的主文件夹中,请尝试使用绝对路径(“路径从 / 开始”)调用第二个脚本

~/espn/2g.tfidf/discover/second_script.sh $format

尝试在第二个文件中添加回显语句以确保其可访问

于 2013-05-13T05:45:51.210 回答