当前位置: 首页 > news >正文

个人网站制作毕业设计选题重难点品牌营销公司

个人网站制作毕业设计选题重难点,品牌营销公司,中国网站建设市场规模,哪个网站做化妆品效果好有时候&#xff0c;我们可能需要在 Shell 中维护一个KV结构的数组&#xff0c;也就是类似于 List<Map<String,Stirng>>这样的数据结构&#xff0c;但是这在 Shell 中并不容易实现&#xff0c;一些联合使用 Shell 的 Indexed Arrays 和 Associative Arrays 进行模拟…

有时候,我们可能需要在 Shell 中维护一个KV结构的数组,也就是类似于 List<Map<String,Stirng>>这样的数据结构,但是这在 Shell 中并不容易实现,一些联合使用 Shell 的 Indexed Arrays 和 Associative Arrays 进行模拟的方案虽然可行,但其实使用起来还是很别扭的,此时,最自然做法是把这些值抽离到单独的 CSV 文件中维护,然后用 Shell 循环读取每一行并对变量进行赋值。这里插一句题外话,这个需求使用 Json 文件同样可以实现,配合强大的 jq 命令可以轻松提取各种复杂的嵌套结构。不过这里的数据结构非常简单,使用 csv 储存和读写都会简洁许多,两种风格可以视需求和个人喜好自定定夺。

我们以这样一个 CSV 文件为例:

containers-per-node,map-mem,map-vcores,reduce-mem,reduce-vcores,am-mem,am-vcores,mappers
4,15360,8,15360,8,15360,8,127
8,7680,4,7680,4,7680,4,255
12,5120,3,5120,4,5120,4,383
16,3840,2,7680,4,7680,4,510

下面的 Shell 脚本演示了如何读取每一行内容,并将相应的字段赋值给对应变量:

IFS=,
row=0
cat above-csv-file.csv | while read -r CONTAINERS_PER_NODE MAP_MEM MAP_VCORES REDUCE_MEM REDUCE_VCORES AM_MEM AM_VCORES MAPPERS; do# skip first header lineif [[ $row -eq 0 ]]; thenrow=$((row+1))continuefiecho "mapreduce.map.memory.mb = $MAP_MEM"echo "mapreduce.map.cpu.vcores = $MAP_VCORES"echo "mapreduce.reduce.memory.mb = $REDUCE_MEM"echo "mapreduce.reduce.cpu.vcores = $REDUCE_VCORES"echo "yarn.app.mapreduce.am.resource.mb = $AM_MEM"echo "yarn.app.mapreduce.am.resource.cpu-vcores = $AM_VCORES"echo "total containers per node: $CONTAINERS_PER_NODE"echo "total containers for map: $MAPPERS"row=$((row + 1))
done

特别地,有时候我们很希望能添加一行CSV就自动执行一次,而不是从头开始执行CSV提供的配置,这在测试时非常有用。此时,我们可以使用 tail -F -n +1 xxx.csv 的形式去替换 cat xxx.csv,这将赋予脚本持续关注文件最后一行变化的能力,一但有更新,立即执行:

IFS=,
row=0
tail -F -n +1 above-csv-file.csv | while read -r CONTAINERS_PER_NODE MAP_MEM MAP_VCORES REDUCE_MEM REDUCE_VCORES AM_MEM AM_VCORES MAPPERS; do# skip first header lineif [[ $row -eq 0 ]]; thenrow=$((row+1))continuefiecho "mapreduce.map.memory.mb = $MAP_MEM"echo "mapreduce.map.cpu.vcores = $MAP_VCORES"echo "mapreduce.reduce.memory.mb = $REDUCE_MEM"echo "mapreduce.reduce.cpu.vcores = $REDUCE_VCORES"echo "yarn.app.mapreduce.am.resource.mb = $AM_MEM"echo "yarn.app.mapreduce.am.resource.cpu-vcores = $AM_VCORES"echo "total containers per node: $CONTAINERS_PER_NODE"echo "total containers for map: $MAPPERS"row=$((row + 1))
done

提醒注意的是:上述脚本不会主动退出,如果是在后台运行,需要 kill 掉相关进程。

http://www.mfbz.cn/news/513/

相关文章:

  • 网站建设公司怎么找客户b站2020推广网站
  • 中国疫情最新消息风险区网站优化技巧
  • 成都网站制作龙兵科技seo网站优化服务合同
  • 安徽网站建设详细教程steam交易链接在哪复制
  • 免费软件漫画汕头网站排名优化
  • 网站服务器自己做宁波专业seo服务
  • 日主题 wordpress宁波seo外包服务
  • 网购哪个网站质量好又便宜网络舆情监测专业
  • wordpress md风格主题seo专员是什么职业
  • 营销策划方案书建站优化推广
  • 个人网站怎么推广推广软件一键发送
  • 邵阳 做网站公司seo流量是什么意思
  • CP网站建设搭建需要多少钱国外独立站网站
  • 广西医疗网站建设自己怎么优化网站
  • 媒体这些渠道进行采集的是关键词优化百家号
  • 做网站怎么入账百度广告代理
  • 企业设计网站公司品牌推广方案策划书
  • 做网站底色怎么选爱站网挖掘工具
  • 网站权重0app地推接单平台有哪些
  • 最好的做网站公司网站推广优化网址
  • 济阳县做网站公司手机百度下载app
  • 有个人做网站的吗上海牛巨微网络科技有限公司
  • 家教网站如何做今日热点新闻事件摘抄
  • 论坛类的网站怎么做seo顾问服务咨询
  • 长沙企业做网站新闻发布最新新闻
  • 什么都不懂做网站推广方案怎么写模板
  • 长沙自动化网站建设站长素材
  • 如何做网站帮别人赚钱潍坊快速网站排名
  • 个人做淘宝客网站有哪些百度广告官网
  • 番禺做网站的google下载官方版