在linux中如何从文本文件中转到具有值的目录

在linux中如何从文本文件中转到具有值的目录,linux,bash,Linux,Bash,我在bash文件中有这个脚本 TplFolder=$(awk -F= '/^.*directory/{gsub(/ /,"",$2);print $2}' /path/to/oscam.conf) cd $TplFolder 我控制这个的输出 TplFolder=$(awk -F= '/^.*directory/{gsub(/ /,"",$2);print $2}' /path/to/oscam.conf) 通过“echo$TplFolder”输出正常 但“cd”不起作用 cd $Tpl

我在bash文件中有这个脚本

TplFolder=$(awk -F= '/^.*directory/{gsub(/ /,"",$2);print $2}' /path/to/oscam.conf)
cd $TplFolder
我控制这个的输出

 TplFolder=$(awk -F= '/^.*directory/{gsub(/ /,"",$2);print $2}' /path/to/oscam.conf)
通过“echo$TplFolder”输出正常

但“cd”不起作用

 cd $TplFolder
输出为“无法cd到/etc/tuxbox/config/”

你还有别的想法吗

编辑 整部剧本哪个行得通

#!/bin/sh
可变tmp文件夹

TempFolder="/var/volatile/tmp"
从配置文件oscam.conf获取目录。配置文件中的行是httpl=/etc/tuxbox/config/tpl

OscamTplFolder=$(grep -r httptpl /etc/tuxbox/config/oscam.conf | cut -d= -f2 | xargs)
wget -q $TrunkUrl
[ -f Envi_Template.tgz ] && mv -f Envi_Template.tgz $OscamTplFolder
下载文件的变量

TrunkUrl="http://www.streamboard.tv/svn/oscam-addons/oscam-template/Envi_template/branches/compressed_files/Envi_Template.tgz"
转到临时文件夹并删除文件

cd $TempFolder
[ -f Envi_Template.tgz ] && rm -f Envi_Template.tgz
下载文件并从临时文件夹移动到oscam.conf-/etc/tuxbox/config/tpl中的文件夹

OscamTplFolder=$(grep -r httptpl /etc/tuxbox/config/oscam.conf | cut -d= -f2 | xargs)
wget -q $TrunkUrl
[ -f Envi_Template.tgz ] && mv -f Envi_Template.tgz $OscamTplFolder
转到文件夹/etc/tuxbox/config/tpl并删除一些文件

cd $OscamTplFolder
[ -f CSS.tpl ] && rm -f CSS.tpl
[ -f FOOTER.tpl ] && rm -f FOOTER.tpl
[ -f HEADERSHORT.tpl ] && rm -f HEADERSHORT.tpl
减压

tar -xzvf Envi_Template.tgz
rm -if Envi_Template.tgz || exit 1
#done all OK
exit 0

感谢您的帮助。

除了变量“$OscamTplFolder”包含一些额外字符外,我无法想象还有其他原因,如\r\n。请查收


hextump-C您可以将cd刻录到
/etc/tuxbox/config/
?运行脚本的用户是否有权限访问该目录?这是脚本发出的实际错误消息吗?这不是我在bash中看到的错误格式。@skyndas:当您在控制台上发出
cd/etc/tuxbox/config
时,返回的是什么?@skyndas请检查您的文件中是否有回车符。请参阅本手册的第1步。@skyndas:我完全不知道你在说什么。