shell脚本相关

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本相关相关的知识,希望对你有一定的参考价值。

问题1:同时读取两个文件的相同行,并将两个文件的行插入到同一文本

# cat aa
a1
a2
a3
a4
# cat bb
b1
b2
b3/
# vim aa.sh
#!/bin/bash
while read -u3 i && read -u4 j;
do
echo $i $j
done >cc 3<aa 4<bb
# ./aa.sh
# cat cc
a1 b1
a2 b2
a3 b3/


注意
read -u3 i代表从文件描述符3中读取内容,并将该值内容赋值给$i变量。
 3<aa 代表从aa中读取内容,并重定向到文件描述符3中
 >cc 代表将while执行的结果重定向输出到cc中
 将3<aa 4<bb写在while之后,相当于只对 while 语句进行重定向,while结束后,3,4 就没有了。 如果在 while 前面用 exec 3<aa  4<bb 了话,从 exec 之后直到脚本结束,重定向的3,4都一直存在。如果只在 while 中需要用 aa,bb,那现在的写法就是最好的。 如果想在 while 后继续访问,那么可以考虑用 exec 3<aa 的方式。
 该语句整体流程为:
 不断从 aa和 bb 中分别读取内容到i , j 中,然后用echo 打印出来,并将结果不断的追加到cc中。 这个循环会一直执行直到遇到 aa 或bb 中至少任意一个的文件尾。 
该脚本可用于合并,拼接多个文本内容

很久没用51cto写东西了,因为感觉编辑器很不好用,这么久了再次使用发现原来还是不好用,也许我不会用吧。
我这个脚本格式如何取消啊?找了半天找不到取消办法。


以上是关于shell脚本相关的主要内容,如果未能解决你的问题,请参考以下文章

用于确保在任何给定时间仅运行一个 shell 脚本的 shell 片段 [重复]

常用python日期日志获取内容循环的代码片段

shell脚本引用expect

不说了 写脚本去了... shell脚本编写规范和相关变量类型

Shell脚本切割日志

Eclipse 中的通用代码片段或模板