hsfl.net
当前位置:首页 >> shEll脚本实现读取文件中的字符串,并把该行字符串... >>

shEll脚本实现读取文件中的字符串,并把该行字符串...

$bash 1.shstring=how are you?string=ok?$cat 1.sh#!/usr/bin/bashwhile read stringdo echo "string=$string"done < 111 $cat 111how are you?ok?脚本名1.sh, 要读取的文件名111。

#!/bin/bashmyFile=/path/filenamecat $myFile | while read linedo echo "$line" #输出整行内容 echo "$line" | awk '{print $1}' #输出每行第一个字段done 以上是示例,根据你的需要自己修改吧。

sed -i '/aaa/{:a;n;s/123/xyz/g;/eee/!ba}' yourfile先匹配aaa,匹配到后执行大括号里的语句。 n 读取下一行 s/123/xyz/g 将123替换为xyz,全局替换,同一行中出现几次替换几次 :a 设定跳转标签a /eee/!ba 若当前行匹配不上eee,则跳转到标签a...

可以使用echo命令将文本流导向标准输出,然后再使用>符号重新定向标准输出到文件。 用法示例: 将字符串"hello world"写入文件file.txt中 $ echo "hello world" > file.txt 然后再尝试用cat命令从读取文件并写入到标准输出,可以看到字符串已经...

用awk,awk里面数字、字符串没有区分,字符串进行运算时也会当成数字。 A=0x3这样子,可以设置-F=【字段分隔符=】 这样,awk中$1就是A,$2就是他的值 0x3 echo "A=0x3" >tmp.txtawk -F= '{print $2;print $2+20}' tmp.txt试一下,我这里Win10刚...

YDAY=$(date +"%Y%m%d" -d "-1 days")TDAY=$(date +"%Y%m%d")awk -v YDAY=$YDAY -v TDAY=$TDAY 'NR==1 {if(substr($0,20,8)==YDAY) $0=substr($0,1,19) TDAY substr($0,28)if(substr($0,34,8)==YDAY) $0=substr($0,1,33) TDAY substr($0,42)}/^T...

awk中不能解析shell变量,建议做法是通过-v传递进去: typeline=`cat $typepath | awk -v str="$typetmp" '/str/{print NR}'`第一句之所以在awk中可以直接使用shell变量$line,是因为用的双引号。 从执行效率上来说,你的写法其实太过累赘,下面...

使用双引号即可: sed -i "/id=$var/d" 22.xml

这个问题太有想像力了,命令如下。 grep -i "aaa" -A 1 1.txt | grep -v -e "--" >2.txt

文件看文件是什么格式,共几行,如果返回第一行中的20个字符开始往后10个字符的内容: head -1 filename |awk '{print substr($0,20,10)}'

网站首页 | 网站地图
All rights reserved Powered by www.hsfl.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com