吴伟1017 发表于 2019-8-24 11:16:12

批量循环转换格式的shell脚本如何写?

鱼C的大佬们,我是个小白{:5_96:} ,刚接触服务器,现在做一个模式,得到了运行结果是二进制的文件,需要将其转换为netcdf格式。根据模型自带的代码有一个可执行的文件是bin2nc可以实现转换,但是每次只能转换一个,所以小白想问问大神怎么写这个脚本去循环读取批量转换呢?谢谢,不胜感激!

jackz007 发表于 2019-8-24 11:27:39

      你说的东西别人没有过体验,不知道你在说啥,还不如不说。干脆点,你现在怎么做,用的是哪条命令,先做什么,后做什么,你希望怎么做。

吴伟1017 发表于 2019-8-24 11:59:29

jackz007 发表于 2019-8-24 11:27
你说的东西别人没有过体验,不知道你在说啥,还不如不说。干脆点,你现在怎么做,用的是哪条命令,先 ...

主要就是make好这个转换的文件后,./bin2netcdf _2D_Fluxes_YYYY-MM 可以处理一个数据,需求是循环读YYYY-MM这个日期来把文件夹中所有数据都给处理了,我这小白表述都不会,太难了……

jackz007 发表于 2019-8-24 12:06:30

本帖最后由 jackz007 于 2019-8-24 12:08 编辑

      和你说话真累!

      你的输入参数是什么,是文件名?是一个特定目录中的所有文件?用脚本自动处理的话,需要枚举每一个文件?输出的参数是如何确定的,YYYY-MM 是当天的日期吗?

       你要干什么,能不能举个实例具体说明?

人造人 发表于 2019-8-24 13:10:49

把所有这样的文件放在data目录
_2D_Fluxes_YYYY-MM

#!/bin/bash

for i in $(ls data)
do
        ./bin2netcdf $i
done

人造人 发表于 2019-8-24 13:14:07

#!/bin/bash

for i in $(ls data)
do
      ./bin2netcdf data/$i
done


应该是这个

DAY 发表于 2019-8-24 15:44:10

支持人造人 @人造人

吴伟1017 发表于 2019-8-24 18:48:34

人造人 发表于 2019-8-24 13:14
应该是这个

哥,请你原谅我再问一下弱智问题,因为以前也没编程基础,刚接触这个。输出文件的话就类似图片这样的名字,大概有30年,每年12个月,后期还可能有逐天的数据,就是我想请问一下这个循环的i应该如何写呢?{:5_100:}

吴伟1017 发表于 2019-8-24 18:50:13

人造人 发表于 2019-8-24 13:14
应该是这个

如果转换一个文件的话,是这样的格式运行

吴伟1017 发表于 2019-8-24 18:52:11

jackz007 发表于 2019-8-24 12:06
和你说话真累!

      你的输入参数是什么,是文件名?是一个特定目录中的所有文件?用脚本自动处 ...

哥,我也是很懵逼啊!文件是这样子的名字

人造人 发表于 2019-8-24 19:44:16

吴伟1017 发表于 2019-8-24 18:50
如果转换一个文件的话,是这样的格式运行

我也不是很懂你的问题
qq: 1440332527
页: [1]
查看完整版本: 批量循环转换格式的shell脚本如何写?