将目录定义为变量

时间:2014-09-09 12:53:40

标签: bash for-loop

我有关于为文件夹定义变量的简单问题,并使用此

进行一些操作

对于我的示例,我将workdir定义为脚本开头的dirr 我在$ dirr的一些子目录中进行了一些循环,并且在每个循环结束时我需要返回到./${dir},它等于双cd(cd .. cd ..)

#!/bin/bash
receptors= ./Receptors
dirr= /home/gleb/Documents/script
echo ${dirr}
#looping of the each pdb file in the Receptors folder
for pdb in $receptors/*.pdb; do
  # some sequence of commands
  cd $dirr
  #cd ..
  #cd ..
done

问题是cd .. cd ..方法工作正常,但cd $ dirr不起作用。 1)这里应该修复什么? 2)如何获取$ dirr的路径(echo $ {dirr}也不起作用)?

感谢您的帮助,

詹姆斯

1 个答案:

答案 0 :(得分:1)

您可以使用pushdpopd

pushd /tmp         # Go to /tmp, but remember where we were
...
do something
...
popd               # Return wherever we were