我想使用一个文件来存储一个客户软件的当前版本号,启动脚本可以使用该文件在正确的目录中运行二进制文件。
例如,如果运行目录如下所示:
.
..
1.2.1
1.2.2
1.3.0
run.sh
current_version
current_version 包含:
1.2.2
我想run.sh
降到 1.2.2 并运行程序foo
。
目前的解决方案是这样的:
#!/bin/sh
version = `cat current_version`
cd $version
./foo
它可以工作,但不是很健壮。它不检查文件是否存在,不能处理多行、前导空格、注释行、空白文件等。
使用 shell 或 perl 脚本执行此操作的最可行的方法是什么?