初学shell,遇到个问题,不知道怎么入手,请达人帮忙下一段,自己研究研究。
在a文件夹中,存在未知的几个已命名文件夹,假设现在有3个文件夹,名称分别为:cat,dog,duck 读取它们各自的名称。
在b文件夹中,存在未知的几个txt,假设现在有3个txt,分别为1.txt,2.txt,3.txt 里边的内容格式为一样。内容分别是1.txt中内容 Path: catNumber: 2
2.txt中内容 Path: dogNumber: 3
3.txt中内容 Path: duckNumber: 6
要求是首先从这个a文件目录下获得每个名称,然后对应的在b文件夹中查找number后的数字。
接着对应每个名称去指定的test.txt中查找,假定test.txt内容为:
cat: 3
dog: 1
可以发现少了一个duck: 6 而且test.txt中的cat后应该为2,而不是3 dog后应该为3,而不是1。那么我想做这么个操作,就是Print "NewNumber < OldNumber" ,Print "NewNumber > OldNuber", Print"NewTest"。第一个Pring意思是cat后的number,第2个是指dog,第3个print是指少的那个duck,这步操作的同时把test.txt内容修改为
cat: 2
dog: 3
duck: 6
其中用awk是肯定的吧,但是自己不知道怎么入手,望各位帮忙写写,小弟我研究研究,不胜感激。
[问题]关于awk在shell中的运用,达人看下
-
- 帖子: 4
- 注册时间: 2006-04-14 9:48
-
- 帖子: 4
- 注册时间: 2006-04-14 9:48
恩。可能看起来长,我写的更异读点吧。很容易理解的,谢谢。
在a文件夹中,存在未知的几个已命名文件夹,假设现在有3个文件夹,名称分别为:cat,dog,duck 读取它们各自的名称。
在b文件夹中,对应着就有3个txt,分别为1.txt,2.txt,3.txt 里边的内容格式为一样。内容分别是
1.txt中内容 Path: cat
Number: 2
2.txt中内容 Path: dog
Number: 3
3.txt中内容 Path: duck
Number: 6
要求是首先从这个a文件目录下获得那3个文件夹的名称就是cat,dog,duck,然后对应的在b文件夹的3个txt中查找number后的数字。
上述可以划分为一个操作。
接着对应每个名称在指定的test.txt中查找,假定test.txt内容为:
cat: 3
dog: 1
可以发现少了一个duck: 6. 而且test.txt中的cat后应该为2,而不是3 .dog后应该为3,而不是1。那么我想做这么个操作,把test.txt内容修改为
cat: 2
dog: 3
duck: 6
上述的2个操作,可以用一个shell脚本写出来吧?
在a文件夹中,存在未知的几个已命名文件夹,假设现在有3个文件夹,名称分别为:cat,dog,duck 读取它们各自的名称。
在b文件夹中,对应着就有3个txt,分别为1.txt,2.txt,3.txt 里边的内容格式为一样。内容分别是
1.txt中内容 Path: cat
Number: 2
2.txt中内容 Path: dog
Number: 3
3.txt中内容 Path: duck
Number: 6
要求是首先从这个a文件目录下获得那3个文件夹的名称就是cat,dog,duck,然后对应的在b文件夹的3个txt中查找number后的数字。
上述可以划分为一个操作。
接着对应每个名称在指定的test.txt中查找,假定test.txt内容为:
cat: 3
dog: 1
可以发现少了一个duck: 6. 而且test.txt中的cat后应该为2,而不是3 .dog后应该为3,而不是1。那么我想做这么个操作,把test.txt内容修改为
cat: 2
dog: 3
duck: 6
上述的2个操作,可以用一个shell脚本写出来吧?
-
- 帖子: 4
- 注册时间: 2006-04-14 9:48
-
- 帖子: 4
- 注册时间: 2006-04-14 9:48
- 5451vs5451
- 帖子: 345
- 注册时间: 2006-07-14 18:56
- 来自: Apple Valley, Planet Tux, Linux System