我有一个这样的文件:
10.123.214.214:445
124.4235.123:443
124.34352.124.1:80
2142354.1341:80
12435.12412:70
有没有办法可以在:之前打印所有内容?我认为awk或sed会是最好的方式,但我不确定如何提出正确的命令
预期产出:
10.123.214.214
124.4235.123
124.34352.124.1
2142354.1341
12435.12412
答案 0 :(得分:3)
$ cut -d: -f1 file
10.123.214.214
124.4235.123
124.34352.124.1
2142354.1341
12435.12412
这是cut
存在的唯一事情 - 不要带走它的存在理由: - )。
答案 1 :(得分:1)
在AWK中,如下:
BEGIN { FS=":" }
{ print $1 }
这使冒号成为Field Separator,所以第一个单词($ 1)就是该行第一个冒号之前的所有内容。
答案 2 :(得分:1)
另一个awk提案。
awk -F: '{print $1}' file
10.123.214.214
124.4235.123
124.34352.124.1
2142354.1341
12435.12412
答案 3 :(得分:0)
为了完整起见,这是sed等效于保留:
分隔文件的第一列:
sed 's/:.*//g' file1