Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash Shell脚本-抑制和添加行 我的Shell脚本 其产出 期望输出_Bash_Shell - Fatal编程技术网

Bash Shell脚本-抑制和添加行 我的Shell脚本 其产出 期望输出

Bash Shell脚本-抑制和添加行 我的Shell脚本 其产出 期望输出,bash,shell,Bash,Shell,正如你所看到的,我的输出有一个偏差。一直在尝试使用不同的echo组合格式化,但到目前为止运气不佳当您打印每行的开头时,需要使用echo-n,这样它不会在所有服务之前中断行 for ORG in `cf orgs | grep -v -e name -e Getting -e \^$ | awk '{print $1}'` do for SPACE in `cf org $ORG | grep spaces | awk -F \: '{print $2}' | tr -d ','`

正如你所看到的,我的输出有一个偏差。一直在尝试使用不同的echo组合格式化,但到目前为止运气不佳

当您打印每行的开头时,需要使用
echo-n
,这样它不会在所有服务之前中断行

for ORG in `cf orgs | grep -v -e name -e Getting -e \^$ | awk '{print $1}'`
do
    for SPACE in `cf org $ORG | grep spaces | awk -F \: '{print $2}' | tr -d ','`
    do
        echo -n "| $ORG | $SPACE |" >> $OT.md
        for svc in `awk '{print $1}' serv-rpt| grep -v -e ServiceName -e \^$ | sort| uniq |tr -d ','`
        do
        echo -ne " | `grep -w ^$svc serv-rpt | grep $SPACE | grep $ORG |wc -l`" >> $OT.md
        done
    done
    echo ''
done
然后在所有服务之后回显一条新线

for ORG in `cf orgs | grep -v -e name -e Getting -e \^$ | awk '{print $1}'`
do
    for SPACE in `cf org $ORG | grep spaces | awk -F \: '{print $2}' | tr -d ','`
    do
        echo -n "| $ORG | $SPACE |" >> $OT.md
        for svc in `awk '{print $1}' serv-rpt| grep -v -e ServiceName -e \^$ | sort| uniq |tr -d ','`
        do
        echo -ne " | `grep -w ^$svc serv-rpt | grep $SPACE | grep $ORG |wc -l`" >> $OT.md
        done
    done
    echo ''
done

请用文本替换所有图像。几乎不需要将
grep
传输到
awk
,因为
awk
可以自己进行模式匹配。还请用文本替换输出图像。顺便说一句,我刚从问题中删除了一份你的脚本副本,不知道这是怎么做到的。。。
| Org | Space| app-autoscaler | p-cloudcache | p-redis | p.config-server | p.mirror-service | p.mysql | p.redis | p.service-registry | scheduler-for-pcf |
| ----| ----| ----| ----| ----| ----| ----| ----| ----| ----| ---- |
| cyberark-conjur-org | cyberark-conjur-space | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0|
|  dynatrace-org | dynatrace-space | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0|
for ORG in `cf orgs | grep -v -e name -e Getting -e \^$ | awk '{print $1}'`
do
    for SPACE in `cf org $ORG | grep spaces | awk -F \: '{print $2}' | tr -d ','`
    do
        echo -n "| $ORG | $SPACE |" >> $OT.md
        for svc in `awk '{print $1}' serv-rpt| grep -v -e ServiceName -e \^$ | sort| uniq |tr -d ','`
        do
        echo -ne " | `grep -w ^$svc serv-rpt | grep $SPACE | grep $ORG |wc -l`" >> $OT.md
        done
    done
    echo ''
done