考虑一个ASCII文本文件(假设它包含非
shell脚本语言的代码):
Text_File.msh:
spool on to '$LOG_FILE_PATH/logfile.log'; login 'username' 'password'; ....
现在,如果这是一个shell脚本,我可以将其作为$sh Text_File.msh运行,shell将自动扩展变量.
我想要做的是让shell扩展这些变量,然后创建一个新文件Text_File_expanded.msh,如下所示:
Text_File_expanded.msh:
spool on to '/expanded/path/of/the/log/file/../logfile.log'; login 'username' 'password'; ....
考虑:
$a=123 $echo "$a" 123
从技术上讲,这应该可以解决问题:
$echo "`cat Text_File.msh`" > Text_File_expanded.msh
所以我不确定如何实现这一点.我的目标是让我更容易维护嵌入在我的非shell脚本中的目录路径.这些脚本不能包含任何UNIX代码,因为它不是由UNIX shell编译的.