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