gpt4 book ai didi

linux - 如何在 CSV 文件中找到唯一字段?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:54:33 25 4
gpt4 key购买 nike

我有一个包含 5 列的 CSV 文件:name firstname phone room email

我写了一个脚本来显示每个人的电话号码,我想修改它以显示房间里独自一人的人。

例如

  • 丹;B;;B10.12;;
  • Liz;B;;B10.12;;
  • Jer;B;;C15.1;;

我应该只得到 Jer B C15.1 作为结果。

这是我想做的事情,但我不知道如何只占用有 1 人的房间。我还想在终端中显示结果。

input="collaborateurs.csv"
while read line; do
room=$(echo $line | cut -d \; -f 4)
if [ -n "$room" ]; then
firstname=$(echo $line | cut -d \; -f 2)
name=$(echo $line | cut -d \; -f 1)
echo "${firstname} ${name} -> ${room}"
fi
done < ${input}

最佳答案

您首先必须对每个房间进行 grep,对数据进行排序并获得唯一的房间。如果一个房间只出现一次,则将其存储在 UNIQUE 数组中:

UNIQUE=($(grep -Eo ';[A-Z][0-9]+\.[0-9]+;' tst.csv | sort | uniq -u));
for i in ${UNIQUE[@]}; do
grep $i tst.csv;
done

这会产生:

Jer;B;;C15.1;;

关于linux - 如何在 CSV 文件中找到唯一字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58522549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com