批处理查找字符数最多的文本行-shell

批处理查找字符数最多的文本行-shell

有文本3.txt如下:

aaaaaaa aaaa bbbbbb ccccccccccc dddd
aa aaaaaaa bbbbbbbb cccccccccc ddddddddddddd eeeeeee
aaaaaaaaaaaa bbbbbbbbbbb cccccccccccccccccccc
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aa
aaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbb
aaaaaaaaa ccccccccc bbbbbbbbbbbbb ddddddddddddddddd

通过批处理查找出文本中字符数(不含空格)最多的行并输出,很明显就是复制内容到剪贴板代码:

aaaaaaaaa ccccccccc bbbbbbbbbbbbb ddddddddddddddddd

编写代码

#! /bin/bash

# 保存最大长度
rowLen=0
# 保存需要输出的字符串
printStr=

while read line
do
        # 记住去掉空格之前的字符串
        saveLine=${line}

        # 去掉空格
        line=${line// /}

        # 统计字符串个数
        len=${#line}

        # 判断当前行是不是最多字符数
        if [ ${len} -gt ${rowLen} ]
        then
                rowLen=${len}
                printStr=${saveLine}
        fi
done < ./3.txt

# 输出最大字符串数
echo ${printStr}

运行结果

这里写图片描述

主要思路

  • 1.读取文件,输出每一行
  • 2.处理具体某一行
  • 2.1 将空格去掉
  • 2.2 统计字符串字符数
  • 3.找出最大行数

具体逻辑参考代码注释

参考文档

文件读取:http://www.cnblogs.com/iloveyoucc/archive/2012/07/10/2585529.html
关系运算符:http://www.runoob.com/linux/linux-shell-basic-operators.html
shell变量里的字符替换:http://blog.csdn.net/augusdi/article/details/41010041

测试

1.测试当前文件

2.更改最大字符串行数

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值