3

我得到了一个 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

4

4 回答 4

5

使用 awk:

awk '{w=$1} END{print w}' file

或使用 sed:

sed -n '$s/^\([^ ]*\).*$/\1/p' file
于 2013-11-12T17:37:08.450 回答
3

如果你不喜欢 awk 或 sed,你可以这样做:

tail -n1 file | cut -d' ' -f1

但实际上,awk 和 sed 是更好的工作工具......

于 2013-11-12T17:48:07.287 回答
2

重击:

read CURRENTVERSION rest < <(tail -1 changelog)
于 2013-11-12T18:00:25.420 回答
0
CURRENTVERSION=$( perl -anle 'print $F[0] if eof' changelog )
echo $CURRENTVERSION 
v-0.4
于 2021-08-05T10:08:51.487 回答