在脚本中更改PWD以允许访问文件,而无需为完整路径添加前缀

我知道我应该能够通过做类似的事情来改变bash脚本的当前工作目录

cd `dirname $MYPATH`

但由于某种原因,这不起作用(或者不像我想象的那样)。

#!/bin/bash

WAYPATH="/home/user/articles"
TEST_PATH="/home/user/testing"


# Set working directory of the script to be testing
cd `dirname $TEST_PATH`

for i in $(ls $WAYPATH); do

another_command $i $i.r > $TEST_PATH/htmls/$i.html

done

我的目标是允许bash脚本查找位于TEST_PATH中的文件(与WAY_PATH中的文件具有匹配的名称),而不必在完整路径前加上前缀(因为another_command)使用传递给它的整个参数。


因此,这是了解在Stackexchange上阅读关于它们后执行的命令的一个教训。 我正在使用

cd `dirname $MYPATH`

在这个答案之后他们达到了预期的结果

cd `dirname $0`

$0是bash脚本的完整路径,因此dirname需要返回没有文件名称的路径。

相反,对于任意提供的路径来说,就足够简单了

cd $MYPATH

正如评论中所建议的。

链接地址: http://www.djcxy.com/p/56789.html

上一篇: Changing PWD in a script to allow for accessing file without prefixing full path

下一篇: Simple bash script hanging inside an if statement