1

我有一个带有 URL、逗号和数字的文本文件。我如何简单地提取 url 直到第一个逗号?

输入:

google.com,1,2,3,4
youtube.com,5,6,7,8
facebook.com,9,9,1,2

输出:

google.com
youtube.com
facebook.com
4

3 回答 3

4

使用命令cut

cut -d, -f1 [FILE]

-d,标志表示您想要以逗号分隔,并且-f1意味着您想要第一个字段。例如从heredoc获取输入:

cut -d, -f1 <<EOF 
google.com,1,2,3,4
youtube.com,5,6,7,8
facebook.com,9,9,1,2
EOF
于 2013-06-14T02:34:19.670 回答
1

bash溶液:

while IFS=, read -r url _ ; do 
    echo "$url"
done < text_file

有了awk它就像:

awk -F, '{$0=$1}1' text_file
于 2013-06-14T03:39:21.843 回答
0

sed -e "s/\([^,]*\).*/\1/g" <file>

更简单的解决方案:

sed -e "s/,.*//g" <file>

如果您需要文件中进行更改,请将-i选项添加到sed.

于 2013-06-14T02:36:16.570 回答