awk 相当于 cut -f2-
也就是说,在第 N 个之后提取字段的建议解决方法是什么? 我在 awk 中找不到任何快捷方式来执行此操作。
最有效、最简单的方法是什么?
That is, what is the suggested work around of extracting fields after Nth?
I can't find any shortcut in awk to do this.
What is the most efficient and easy way to do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我使用这样的东西:
编辑:
对于通用版本使用:
FS 设置输入字段分隔符,OFS 设置输出字段分隔符。
如果您想使用“:”作为分隔符,请将 FS 和 OFS 设置为“:”。
您也可以使用正则表达式作为分隔符。
编辑2:
如果您对 awk 中 cut 的完整实现感兴趣,请查看此处:
http://www.gnu.org/s/gawk/manual/html_node/Cut-Program.html
HTH 克里斯
I use something like this:
EDIT:
For a generic version use:
FS sets the input field separator, OFS sets the output field separator.
If you want to use ":" e. g. as delimiter, set FS and OFS to ":".
You can use regexp as delimiters, too.
EDIT 2:
If you are interested in a complete implementation of cut in awk, take a look here:
http://www.gnu.org/s/gawk/manual/html_node/Cut-Program.html
HTH Chris
不如克里斯的解决方案那么好,但这也会打印第一个字段之后的所有内容:
Not as nice as Chris's solution but this would also print everything after the first field: