shell脚本相对路径注意事项

TEC.sh的脚本正确内容如下:

 

#!/bin/bash
python3 ./decompress.py --input_file=$1 
path1=`dirname $1`
path2='test.txt'
path3='/'
echo $path1$path3$path2
dir=`cat $path1$path3$path2`
#echo $dir
cp ./TEC $dir
s='/TEC'
cd $dir
./TEC

其中TEC可执行程序是f90编译后得到的,TEC里面读取./nfile和./ofile路径下的内容,即读取相对路径下的文件内容。

读取文件内容的fortran部分代码:

shell脚本相对路径注意事项_第1张图片

文件存放如下:

nfile 、ofile 、TEC在一起。  

标红的部分开始我写成 TEC所在的绝对目录+TEC运行程序,而没有cd 到TEC所在的目录,结果找不到nfile文件和ofile文件。

因为不切换路径,执行TEC程序时相对路径是在当前bash文件TEC.sh的路径下,显然错误。

如果要在TEC文件的相对路径下执行程序,需要cd到TEC的路径。

你可能感兴趣的:(linux)