【发布时间】:2020-03-24 08:39:57
【问题描述】:
我需要创建一个工具来标记输入列表。 我将通过以下方式提供一个包含子域列表的文本文件:
abc.xyc.kkk.com
hjk.pol.lll.kkk.com
...
输出需要是:
abc
xyz
kkk
hjk
...
分隔符是'.'
我已经尝试了以下代码,但似乎不起作用:
#!/bin/bash
STRING= cat $1
IFS='.' read -ra VALUES <<< "$STRING"
## To print all values
for i in "${VALUES[@]}"; do
echo $i
done
【问题讨论】:
-
你能精确地指定规则吗?为什么
.com被省略——是因为com在黑名单中还是仅仅因为com是当前无空白块中的最后一个标记?另外,我假设….xyc.…→… xyz …是一个错字——你可能想修正它。请使用问题下方的灰色编辑按钮编辑您的问题。 -
在shellcheck.net 检查您的代码。祝你好运。
-
...afaict,您所说的“标记化”的其余部分只是在分隔符上拆分,我们也已经覆盖了重复项。