从csv的一列创建文件.并将另一列的数据写入这些文件

  • 本文关键字:一列 文件 数据 创建 csv bash csv
  • 更新时间 :
  • 英文 :


我有一个包含主机名和ip的csv文件(xyz.csv)。例如:

HOSTNAME;IP;GW
device1;ip1;gw1
device2;ip2;gw2

我想创建以来自column1的数据命名的文件,这些文件包含来自column2的数据。输入file "device1"包含ip1和gw1(顺序剂量物质)等。

预期输出:

cat device1
ip1
gw1
cat device2
ip2
gw2

你可以用伟大的米勒来运行

# create output folder
mkdir -p ./output
# extract in it one file for each HOSTNAME
mlr --csv --fs ";" --from input.csv put -q 'tee > "./output/".$HOSTNAME.".csv", $*'
mlr -I --headerless-csv-output  --csv --ifs ";"  cut -x -f HOSTNAME then reshape -r "." -o i,v then cut -f v ./output/*.csv

cat ./output/device1.csv
ip1
gw1
cat ./output/device2.csv
ip2
gw2

相关内容

最新更新