我有一个带有 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
使用命令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
纯bash
溶液:
while IFS=, read -r url _ ; do
echo "$url"
done < text_file
有了awk
它就像:
awk -F, '{$0=$1}1' text_file
sed -e "s/\([^,]*\).*/\1/g" <file>
更简单的解决方案:
sed -e "s/,.*//g" <file>
如果您需要在文件中进行更改,请将-i
选项添加到sed
.