我有一些名字,我需要删除并获得名称的第二部分
agent-tom
agent-harry
agent-disk-see
我使用了cut -d "-" -f2
我只能设法得到“汤姆”,“哈利”和“磁盘”
问题:我如何使用cut命令来削减第3个代理,以便我可以获得“disk-see”?
由于
答案 0 :(得分:3)
cut -d '-' -f 2-
从第2列剪切到结束,无论短跑计数如何都将获得所有。
答案 1 :(得分:2)
答案 2 :(得分:0)
如果您愿意考虑cut
以外的工具:
pax> sed 's/^[^-]*-//' inputFile
tom
harry
disk-see
此命令使用流编辑器sed
删除从开头到第一个-
字符的行部分。对于像这样的任务,我通常更喜欢sed
,因为除了简单的一级深度场操作之外,它更具适应性。
话虽如此,这个 是一个相当简单的任务,所以稍微修改一下cut
命令就足够了。只需使用-f2-
(字段2以后)代替-f2
(仅限字段2):
pax> cut -d'-' -f2- inputFile
tom
harry
disk-see