我得到了一个 bash 脚本,并开始编写一个更改日志来跟踪更改。
我在脚本中添加了一个回显的函数"Script version --> "
但我必须手动编辑它。
所以我需要一个函数来获取第一个单词直到最后一行的空格并将其存储为$CURRENTVERSION
变更日志语法是:
v-0.3.2 Added x, y.
v-0.3.2.1 Fixed y.
v-0.4 Added z.
简而言之,我需要存储v-0.4
为$CURRENTVERSION
使用 awk:
awk '{w=$1} END{print w}' file
或使用 sed:
sed -n '$s/^\([^ ]*\).*$/\1/p' file
如果你不喜欢 awk 或 sed,你可以这样做:
tail -n1 file | cut -d' ' -f1
但实际上,awk 和 sed 是更好的工作工具......
重击:
read CURRENTVERSION rest < <(tail -1 changelog)
CURRENTVERSION=$( perl -anle 'print $F[0] if eof' changelog )
echo $CURRENTVERSION
v-0.4