3
A
回答
7
我用的是这样的:
awk '{for (i=2;i<=NF;i++) printf $i" ";printf "\n"}' file
编辑:
对于仿制药的使用:
/home/sirch> echo 1:2:3:4:5 | awk 'BEGIN{FS=OFS=":"}{for (i=2;i<=NF;i++)a=(a)?a OFS $i:$i;print a;a=""}'
2:3:4:5
/home/sirch> echo 1,2,3,4,5 | awk 'BEGIN{FS=OFS=","}{for (i=2;i<=NF;i++)a=(a)?a OFS $i:$i;print a;a=""}'
2,3,4,5
/home/sirch> echo 1,2,3,4,5 | awk 'BEGIN{FS=OFS=","}{for (i=3;i<=NF;i++)a=(a)?a OFS $i:$i;print a;a=""}'
3,4,5
/home/sirch> echo 1,2,3,4,5 | awk 'BEGIN{FS=OFS=","}{for (i=3;i<=4;i++)a=(a)?a OFS $i:$i;print a;a=""}'
3,4
FS设置输入域分隔符,OFS设置输出字段分隔符。 如果您想使用“:”e。 G。作为分隔符,将FS和OFS设置为“:”。 您也可以使用regexp作为分隔符。
编辑2:
如果你有兴趣在一个完整实现削减的awk,到这里看看:
http://www.gnu.org/s/gawk/manual/html_node/Cut-Program.html
HTH克里斯
0
不是像你一样克里斯的解决方案但是这也会在第一个字段后打印所有内容:
awk '{$1=""; print $0}' file
+0
这与切割不一样;它将以字段分隔符开始。 –
+0
是的,很好的说明。 – telenachos
相关问题
- 1. Awk vs Awk + cut vs bash
- 2. 蚂蚁相当于cut |排序| uniq
- 3. 用Awk或Cut打印列?
- 4. Visual Studio:在Eclipse中用于选项菜单的相当于F2的快捷键
- 5. Linux中的Cut和Awk命令
- 6. 使用cut或awk操纵目录?
- 7. BASH CUT与CD相关联
- 8. 什么是Perl相当于awk的/ text /,/ END /?
- 9. 按钮“Q”和“F2”的键码相同
- 10. 如何使用grep/regex/cut/awk/sed等提取drbd状态
- 11. 在bash中使用awk/cut剥离空间并获得值
- 12. unix中的字符串替换(awk,sed.tr,cut ...)
- 13. Unix cut/awk:多次打印同一列(例如1000次)
- 14. 使用包含不同数量字段的行的awk/cut/sed
- 15. ShellScript:grep + while + cut + awk在一个大文件中=很慢
- 16. .format相当于
- 17. 相当于transaction.transactionReceipt.bytes
- 18. HQL'parsename'相当于
- 19. 相当于WeakHashMap?
- 20. wtol相当于#
- 21. 相当于JDIC?
- 22. 相当于SparkSQL
- 23. Android:getElementsByTagName相当于?
- 24. Fortran相当于
- 25. drupalPost()相当于
- 26. 相当于waitUntilAllOperationsAreFinished
- 27. 相当于
- 28. 相当于AWS
- 29. $ dialog.messageBox相当于
- 30. Linq相当于
你看过正则表达式吗?我的awk-fu很弱,但是在Perl中,我会'm/(?:[^@]+)@(.*)/; $ foo = $ 3;'分隔符'@'。诀窍是使用'(?:[^ @] +)@'跳过初始字段。 – moshbear
WOW Perl远远超出了我的理解......这就是为什么我仍然坚持使用awk :) – MeaCulpa
学习扩展的POSIX正则表达式绝对值得你效仿。 – moshbear