首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ncks:参数列表太长

ncks:参数列表太长
EN

Stack Overflow用户
提问于 2019-04-25 06:56:28
回答 1查看 100关注 0票数 0

我正在尝试使用data.txt的data.txt头中给出的两个in从.nc文件中提取点信息

代码语言:javascript
复制
AID CID
 730 285
 535 290
 736 291

如果这段代码有任何问题,你能提供帮助吗?我在widows和anaconda Linux中使用Ubuntu,得到一个错误“参数列表太长”。

代码语言:javascript
复制
ids=`head -6 data.txt | awk '{if(NR>1) print $1}'`
echo $ids
ids=`cat data.txt | awk '{if(NR>1) print $1}'`
for id in $ids
do 
  aid=`cat data.txt | awk '{if($1=='${id}') print $1}'`
  rch=`cat data.txt | awk '{if($1=='${id}') print $2}'`
  index=`ncks -v rid ./file.nc | grep "$rch" | sed -e 's/rid\[//g' |awk 'BEGIN{FS="]"}{print $1}'`
  echo id=$id aid=$aid rch=$rch index={$index}
  ncks -O -v Qout -d rid,$index ./file.nc > temp.nc
 /bin/mv temp.nc data_aid${aid}_cid${rch}.nc
done

最后,我期望得到;

代码语言:javascript
复制
data_730_285.nc
data_535_290.nc
data_736_291.nc
.......
EN

回答 1

Stack Overflow用户

发布于 2019-04-25 08:32:28

我猜这个错误可能来自第二个ids赋值。您可以通过管道传输数据来解决此问题,而不是将其存储在变量中:

代码语言:javascript
复制
tail -n +2 data.txt | while read aid rch
do
  # ...  
done

备注:

aid=$id

  • I不知道ncks是做什么的,但随后的grep "$rch"似乎容易出现误报(数字可以包含在其他数字中(例如,.123也在12345))

  • /bin/mv temp.nc data_aid${aid}_cid${rch}.nc中,应该类似于/bin/mv temp.nc data_${aid}_${rch}.nc
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55839636

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档