linux shell命令求解。累加行数的命令。

linux shell命令求解。累加行数的命令。,第1张

你这个不难实现,问题你是你表达不清楚,一会说"d1“关键字,一会又说"1|"

前面你说。如果输入查询内容"d1",输出“3”行,什么依据?因为3行有"d"?

我猜你是这个意思吧?

cat a.txt | grep "|." -o | tr -d "|" | uniq -c

#!/bin/bash

line=`sed -n '$=' sqlli.txt`

#echo $line

for((n=1n<=$linen++))

do

value=`sed -n ${n}p sqlli.txt`

#sed -n "${n}s/$/$value/p" jsp.logg >> test   #如果不想改jsp文件内容,把结果放Test中,使用追加>>是避免每次被清空,运行后只有最后一行值

sed -i "${n}s/$/$value/" jsp.logg       #如果直接改文件内容,不用重定向

done

错误:1.循环条件错误。1~3行,实际只能运行1~2行

2.变量的使用,如$ns,程序会以为ns是一个新的变量。

3.Head -n,会返回前几行,不是第几行

4. sed -i   不管处理成功与否,屏幕没有显示内容,把命令重定向到文件,得不到结果

5.在循环中重定向文件>,会导致每次先清空文件,即使有数值,也只有最后一个循环时的值

1. 打开会话属性对话框。

2. 在[类别]中选择[终端]。

3. 在[滚动缓冲区]中输入拟要使用的Line数。

4. 点击[确定]。

滚动缓冲区的大小是0 ~ 2,147,483,647之间的值。0表示不使用滚动缓冲区。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11496557.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存