shell 遍历txt文件,取变量

shell 遍历txt文件,取变量,第1张

#!/bin/bash

while read line

do

    eval "$line" 2>/dev/null

done < atxt

echo $b

1、在linux目录/root下建立一个txt文件,内容如下,使用|竖线分割,作为我们的实验数据样本。

2、sed用法、sed-n'xp'datatxt;显示文件X行数据,获取第18行数据,即为sed-n'18p'datatxt。

3、sed-n'开始行,结束行p'datatxt;显示文件X行到Y行的内容:命令:sed-n'10,18p'datatxt。

4、head/tail用法。tail用法:tail经常用来查看文件末尾的数据,在shell中可以获取文本中指定数据行。tail-n-3datatxt获取文件最好3行数据。tail-n+3datatxt获取文件3到最后一行数据。

5、head用法:head经常用来显示文本的前n行数据。head-n10datatxt显示文本请10行数据。

6、tail和head的结合使用:例如获取文本倒数第二行数据,结果如图所示。命令:tail-n2datatxt|head-n1。

7、awk用法、awk在文本处理方面有着强大的功能,配合脚本使用,可以打印指定行和列。awk'NR==18{print}'datatxt。NR指定行号。

假如在当前面目录下有1txt和2txt,现在我们把它输出到3txt,具体为:

#!/bin/bash

    echo "start copy file "

    find  / -name  "txt" | xargs cat > 3txt

    echo "done !"

你那个出问题应该是因为find在查找的时候没有加引号还有后面再查找的时候要使用管道命令啊

#!/bin/bash

#添加用户组

groupadd YR1 2>> /var/log/groupaddlog

groupadd YR2 2>> /var/log/groupaddlog

#添加用户

declare -l user_name

N=1000

M=2000

while read line;do

year=`echo $line | awk '{ print $NF }'`

user_name=`echo $line | awk -F',' '{ print substr($1,1,1)$2}'`

password=`echo $line | awk -F',' '{ print substr($1,1,1)substr($2,1,1)"/"$3}' | awk -F'/' '{ print $1$4$2$3}'`

full_name=`echo $line | awk -F',' '{print $1","$2}' | sed 's@\B[A-Z]@\l&@g'`

if [ $year = '1' ];then

useradd -g YR1 -u $N $user_name;echo $password | passwd --stdin $user_name 2>> /var/log/useraddlog

N=$[$N+1]

else

useradd -g YR2 -u $M $user_name;echo $password | passwd --stdin $user_name 2>> /var/log/useraddlog

M=$[$M+1]

fi

done < infotxt

没明白第6条添加到命令文件中是啥意思,但是里边已经按照格式将全名定义到变量full_name里了。infotxt是给出的txt文件内容。

text1txt文件如下#执行代码

grep -A 1 "\[PARM_" text1txt

#得到匹配行和他下面一行#执行代码

grep -A 1 "\[PARM_" text1txt |awk -F ":" '$1~/PATH/{print $2}'

#得到匹配行下面一行的路径

以上就是关于shell 遍历txt文件,取变量全部的内容,包括:shell 遍历txt文件,取变量、利用shell脚本如何提取一个文件中某一特定行和下面若干行的内容、LINUX下shell 如何将文件夹下的所有txt文件输出到一个txt文件下去等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9648359.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存