我的CSS文件包含许多条目,如
#id1, #id2, #id3, #id4 { ... }
#id3, #id2 { ... }
#id2, #id4 { ... }
我想使用命令行工具(msys)提取唯一ID列表。 唯一意味着列表中的任何条目仅呈现一次。怎么样?
PS:我知道如何使用python,但是awk / sed / cat呢?
答案 0 :(得分:1)
试试这个
cat file.css | grep -o '#[a-zA-Z0-9-]*' | sort -u
编辑:不幸的是,这个正则表达式非常粗糙,并允许十六进制颜色作为ID传递..
如果你的文件中的css是打开{总是与#ids在同一行上,那么你可以使用这种语法:
cat file.css | grep { | cut -d'{' -f1| grep -o '#[a-zA-Z0-9-]*' | sort -u
答案 1 :(得分:0)
在awk中它可能更容易:
awk -F'[,[:space:]]' -v RS=# 'NF{if (!a[$1]++) print $1}' file.css
虽然此代码不会检查是否存在“{...}”。