美文网首页
2018.10.12

2018.10.12

作者: 天秤座的机器狗 | 来源:发表于2018-10-12 09:57 被阅读17次

假设有这样的文本

cat a.txt
1
2
3
4
5
10

另外有这样的文本

cat all.tmp.txt
2 3 4
3 6 7 
7 8 9 
4 5 6
7 8 9
1 4 9 
5 6 7 
6 7 9

统计一下a.txt 中有多少存在于all.tmp.txt中
shell脚本

#!/bin/bash
echo "" >tmp.txt
cat a.txt|while read pos
do

grep $pos all.tmp.txt>${pos}.txt
if test -s ${pos}.txt;then
    a=1
else
    a=0
fi
echo $a >>tmp.txt

#echo $pos
done
awk '{sum+=$0}END{print sum;}' tmp.txt

bash tmp.sh
5

有三个知识点是我需要掌握的
1.如何将文本内容追加到一个文件中
比如,脚本中的

echo "" >tmp.txt #建立一个空的文件
echo $a >>tmp.txt #将文本追加到tmp.txt中

shell中 >是创建,而>>是追加

2.了解一下我可能不那么熟悉的shell脚本中的判断语句的表达

if test -s ${pos}.txt;then
    a=1
else
    a=0
fi
if ;then 
else 
fi

3.判断一个文件是不是空
用test -s file
如果是空则返回false
非空则返回true

if test -s ${pos}.txt;then
    a=1
else
    a=0
fi

当然这个问题本身肯定有很多更优解,这个脚本也因为生成太多的中间文件,但是shell中我还没想到有什么好的方法去解决,也许可以试试python

相关文章

  • 布局财经

    2018.10.12 2583.46 -142.38 -5.22% 1701 ...

  • 2018.10.12

    成功日记: 1.坚持不吃晚饭 2.体重下降 3.健身打卡,小腿肌肉线条变好看 4.和鸽子见面,开心 5.看完一篇论...

  • 2018.10.12

    日子有点难熬,太期待和他见面

  • 2018.10.12

    好像有段时间没写日记了吧 好像学业还挺繁忙的。

  • 2018.10.12

    家人们,晚上好! 放学时,发给每位孩子2张调查表,请利用周末时间,帮忙完成,下周一带回。我把表格的电子稿已经发在了...

  • 2018.10.12

    慢慢有点接受这个工作了,除了没有同龄人之外都还好,带我的经理可能是因为可算有人来了,一天能叫我n次去跑腿什么的,反...

  • 2018.10.12

    他拿着冒着热气的茶杯,吱的一口,眉头一皱紧锁着。他眯着眼睛看着手上的报纸,他余光不知不觉的落在了年轻女子被...

  • 2018.10.12

    最近在适应馨儿学校的节奏。国庆前下午放学时间六点,七点能接上是早的,国庆后放学时间是五点四十,一样七点能接上也算早...

  • 2018.10.12

    丢卡找卡 找到卡的惊喜 不是我的卡的失落 哈哈哈得做到宠辱不惊呀 终归卡是在的 明早解挂 背作文学政治明天结束10...

  • 2018.10.12

    停电了一天。中午宝宝睡觉的时候,我躺在床上看书,阳光照在身上很舒服。很感谢婆婆做的每一餐,把我养的白白胖胖的。我现...

网友评论

      本文标题:2018.10.12

      本文链接:https://www.haomeiwen.com/subject/qbjwaftx.html