Jac*_*ack 4 csv excel awk grep
我有以下文件
There is a group of Lion in the forest. There are 3 active. There are 1 sleeping
Lion1 is talking to Lion2
Lion2 is talking to Lion3
Lion3 is touching Lion1
There is a group of Turtle in the forest. There are 1 active. There are 0 sleeping
There is a group of Monkey in the forest. There are 4 active. There are 0 sleeping
Monkey1 is talking to Monkey3
Monkey4 is jumping about
There is a group of Panda in the forest. There are 2 active. There are 1 sleeping
There is a group of Owl in the forest. There are 5 active. There are 4 sleeping
Run Code Online (Sandbox Code Playgroud)
我使用以下命令:
grep "There is a group" | awk '{print substr($0,10)}'
Run Code Online (Sandbox Code Playgroud)
我得到以下内容
Lion in the forest. There are 3 active. There are 1 sleeping
Turtle in the forest. There are 1 active. There are 0 sleeping
Monkey in the forest. There are 4 active. There are 0 sleeping
Panda in the forest. There are 2 active. There are 1 sleeping
Owl in the forest. There are 5 active. There are 4 sleeping
Run Code Online (Sandbox Code Playgroud)
题
我应该如何修改我的grep和awk命令,以便得到以下结果:
Lion, 3, 1
Turtle, 1, 0
Monkey, 4, 0
Panda, 2, 1
Owl, 5, 4
Run Code Online (Sandbox Code Playgroud)
结果将存储到将由Microsoft Excel读取的文件中.在Microsoft Excel中,我将能够看到如下三列:
=========================== | Lion | 3 | 1 | | Turtle | 1 | 0 | | Monkey | 4 | 0 | | Panda | 2 | 1 | | Owl | 5 | 4 | ===========================
欣赏任何帮助渲染.
根据数据的规律性,您可以直接通过替换来解决字段:
grep "There is a group" | awk '{print substr($0,10)}'
Run Code Online (Sandbox Code Playgroud)
同
awk -v OFS=', ' '/There is a group/ { print $6, $12, $16 }'
Run Code Online (Sandbox Code Playgroud)
输出:
Lion, 3, 1
Turtle, 1, 0
Monkey, 4, 0
Panda, 2, 1
Owl, 5, 4
Run Code Online (Sandbox Code Playgroud)