小编Jar*_*Rym的帖子

Unix bash切割和grep

我有一个名为db.txt的文本文件.文件中的一些示例行如下:

哈利波特和魔法石:JK罗琳:21.95:100:200

哈利波特和密室:JK罗琳:21.95:150:300

指环王,戒指团契:JRR Tolkien:32.00:500:500

权力的游戏:George RR Martin:44.50:300:250

然后在我的脚本中,我有以下几行:

echo "Enter title:"
read TITLE

cut -d ":" -f 1 db.txt | grep -iw "$TITLE" | while read LINE
do
    STRING="`echo $LINE | cut -d ":" -f 1`,"
    STRING="$STRING `echo $LINE | cut -d ":" -f 2`, "
    STRING=" \$$STRING`echo $LINE | cut -d ":" -f 3`,"
    STRING=" $STRING`echo $LINE | cut -d ":" -f 4`,"
    STRING=" $STRING`echo $LINE | cut -d ":" -f 5`"
done
Run Code Online (Sandbox Code Playgroud)

有没有办法从剪切中获取特定字段然后将整行传递到while循环?

例如,如果我输入"哈利波特",它应该显示:

哈利波特和魔法石,JK罗琳,21.95美元,100,200美元

哈利波特和密室,JK罗琳,21.95美元,150美元,300美元

unix bash grep cut

5
推荐指数
1
解决办法
3884
查看次数

标签 统计

bash ×1

cut ×1

grep ×1

unix ×1