小编SA2*_*018的帖子

如何在bash中将具有相同前缀名称的csv文件打包成zip

假设我有许多 csv 文件位于/home/user/test

123_24112021_DONG.csv
122_24112021_DONG.csv
145_24112021_DONG.csv
123_24112021_FINA.csv
122_24112021_FINA.csv
145_24112021_FINA.csv
123_24112021_INDEM.csv
122_24112021_INDEM.csv
145_24112021_INDEM.csv
Run Code Online (Sandbox Code Playgroud)

如您所见,所有文件都有三个唯一的前缀:

145
123
122
Run Code Online (Sandbox Code Playgroud)

而且,我需要为每个前缀创建 zip,其中将包含 csv 文件。请注意,实际上,我不知道 csv 文件的数量,这只是一个示例(每个前缀 3 个 csv 文件)。我开发了一个代码,可以从 bash 表中的所有 csv 名称中提取前缀:

for entry in "$search_dir"/*
do
  # extract csv files
  f1=${entry##*/}
  echo $f1
  # extract prefix of each file
  f2=${f1%%_*}
  echo $f2
  # add prefix in table
  liste_sirets+=($f2)
done

# get uniq prefix in unique_sorted_list

unique_sorted_list=($(printf "%s\n" "${liste_sirets[@]}" | sort -u ))
echo $unique_sorted_list
Run Code Online (Sandbox Code Playgroud)

结果如下:

145
123
122
Run Code Online (Sandbox Code Playgroud)

现在我想将由其前缀定义的每三个文件压缩在同一个 zip …

bash shell

3
推荐指数
1
解决办法
638
查看次数

将YYYYMM因子格式转换为YYYY-MM格式

我有格式的数据,YYYYMM我希望将其转换为YYYY-MM格式.

例如: 201805应采用的格式2018-05

我怎么能这样做?

r

2
推荐指数
1
解决办法
231
查看次数

标签 统计

bash ×1

r ×1

shell ×1