shell 脚本:如何在变量中剪切行

shell scripting: how to cut line in variable

我是 shell 脚本的新手。我尝试在线搜索,但找不到我要找的东西 - 如何切割变量以获得我要找的值?

例如我有:

Result=`awk -F : -v "Title=" -v "Author=" 'tolower() == tolower(Title) && tolower() == tolower(Author)' BookDB.txt`
//which will return:
//Result= Black:Hat:12.30:20:30

我试过这样做,但行不通:

PRICE= cut -d ":" -f 3 $Result

任何帮助将不胜感激,谢谢!

使用 awk 怎么样...

input="Black:Hat:12.30:20:30"
first=$(echo input | awk -F":" '{print }')
echo $first
second=$(echo $input | awk -F":" '{print }')
echo $second
date=$(echo $input | awk -F":" '{print  ":"  ":" }')
echo $date

您可能需要进行编辑以满足您的具体要求。

你的代码没有错...好吧,至少是大部分!

执行 echo 'Result= Black:Hat:12.30:20:30' | cut -d ":" -f 3 将得到结果 12.30

问题是您可能想在 shell 脚本中使用它。 为此,只需尝试以下操作: PRICE=`cut -d ":" -f 3 $Result`

我所做的基本上是在要存储在变量中的表达式前后放置 `

参考了解更多:http://www.freeos.com/guides/lsst/ch02sec08.html

祝你好运!