我有两个关于路径的问题。
第一个问题与“qsub”有关
这是我当前的文件夹
/home/mtrnn/rnn_class_EE837/src/rnn-learn/result/lissa_1_rec/
在我使用的这个文件夹中
qsub -q public_~~~ ./start.sh
它运作良好。问题是每当我使用服务器时,我需要在下面的 shell 脚本(start.sh)中更改路径当我在不同的文件夹中使用时,每次我需要在 start.sh 中更改下面的代码
cd current_path
例如,
cd /home/mtrnn/rnn_class_EE837/src/rnn-learn/result/lissa_1_rec/
这太麻烦了,而且经常出现路径错误。
我可以删除吗
cd ~~~~
通过使用“密码”之类的?
我的意思是,使用“pwd”读取当前路径并将此结果作为变量放入 shell 脚本中。有可能吗?我认为,如果我可以将“pwd”的结果作为变量并将其作为 start.sh 的变量,我可以删除该部分。但是,我不知道该怎么做。
这是 start.sh
#!/bin/sh
cd /home/mtrnn/rnn_class_EE837/src/rnn-learn/result/lissa_1_rec/
if [ "$1" = clean ]; then
rm -f *.log *.dat target.txt *.scale *.restore
exit
fi
config_file=test_config.txt
connection_file=connection.txt
if [ -f $connection_file ]; then
cp $config_file ."$config_file".tmp
gen_config.sh $connection_file >> ."$config_file".tmp
else
cp $config_file ."$config_file".tmp
fi
../../rnn-learn -i rnn.dat -c ."$config_file".tmp ./target*.txt
#${path2}rnn-generate -n 2000 rnn.dat > orbit.log
rm ."$config_file".tmp
第二个问题是,
#${path2}rnn-generate -n 2000 rnn.dat > orbit.log
在上面的代码中,有 ${path2}
我认为对于 start.sh,${path2} 总是指向 rnn-generate 所在的文件夹。
我能怎么做?如果我知道方法,我想改变
../../rnn-learn -i rnn.dat -c ."$config_file".tmp ./target*.txt
至
${path3}rnn-learn ~~~
啊,现在我用的是服务器,我不是管理员。
所以,我认为,我无法更改 /etc/bashrc 或 /etc/environment。
谢谢你。