代码之家  ›  专栏  ›  技术社区  ›  Sharat Chandra

使用sed删除文件中的方括号

  •  2
  • Sharat Chandra  · 技术社区  · 16 年前

    这是我的剧本。。

      #!/bin/bash
    
    for file in fftw is_c mpi_tile pmb tau xhpl
    do
        for state in C0 C1 C2 C4
        do
        printf "${file}_${state}_v1.xls"
    
        sed -e 's/\(//' ${file}_${state}_v1.xls
        sed -e 's/\)//' ${file}_${state}_v1.xls
    
        awk '{sum+=$3} ; END {print "  ", sum/NR}' ${file}_${state}_v1.xls >> c-state-residency.xls
        done
    done
    
    4 回复  |  直到 16 年前
        1
  •  2
  •   retracile    16 年前

    --in-place 让塞德做你认为你在做的事。

    您正在删除括号,而不是括号,并且每行仅删除第一个括号(如果删除 \ 你不需要。对于Excel电子表格来说,这似乎也是一件奇怪的事情。

        2
  •  1
  •   Till    14 年前

    我会用 tr -d ... ,例如:

    $ echo "(this is my string)" | tr -d '()' 
    this is my string
    
        3
  •  0
  •   Sharat Chandra    16 年前

    #!/bin/bash
    
    for file in fftw is_c mpi_tile pmb tau xhpl
    do
        for state in C0 C1 C2 C4
        do
        printf "${file}_${state}_v1.xls"
        sed -e 's/[()]//g' ${file}_${state}_v1.xls
        awk '{sum+=$3} ; END {print "Average C-state residency  ", sum/NR}' ${file}_${state}_v1.xls >> c-state-residency.xls
        done
    done
    
        4
  •  0
  •   user48202    16 年前

     cat ${file}_${state}_v1.xls | tr '(' '' | tr ')' '' > ${file}_${state}_v1.xls
    
    推荐文章