如何在shell脚本中修改添加替换指定文件中的内容

如何在shell脚本中修改添加替换指定文件中的内容,第1张

1、可以借助�º.shell命令执行另一个脚本文件或者用变量保存。比如a.sh和b.sh,a.sh中调用b.sh的代码,一起输出"hello world"的字符串。b.sh的代码如下echo " world!"。

2、a.sh可以借助"."来执行b.sh脚本,b.sh执行结果可以保存在变量中颤差,也可直接输出,a.sh中的内容如下:echo "可以用.命令来执行脚本文件"echo "hello `./b.sh`"var=`./b.sh`echo"hello $var"。

3、a.sh也可以借助source命令执行b.sh脚本,b.sh执行结果可以保存在变量中,也可直接输出。a.sh中的内容如下:echo "用source命令执行脚本文件"誉慧echo "hello `source ./b.sh`"var=`source ./b.sh`echo "hello $var"。

4、a.sh中也可以借助于bash、sh等命令来执行b.sh脚本,b.sh的执行结果可以茄虚皮保存在变量中,也可以直接输出。a.sh中的内容如下。

5、另外,也可以使用$(),将b.sh的执行结果的内容保存到变量中,就完成了。

linux 文本文件,在Mac系统中,使用WPS修改后,文件出现了^M符号.因为\r换行符,到linux变成了^M。

输出文件头部,出现了换行:

head file:

N16_147

.R1.fastq.gz

1.直接使用 sed -i 's/^M//g' file 失败

失败原因,需要“^M”要使用“CTRL-V CTRL-M”生成腔镇,而不是直接键入“^M“

解决:sed -e 's/禅弯^M//g' config.yaml >config 

2 .尝试使用/r替换

解决:

 1.vi file

2.:s/伍袭粗\r//g

shell 脚本里文本替换用 ${parameter/pattern/string} 格式,如果 pattern 以 "/" 开头替换所有匹配字符串,否则只液誉稿替换第一个。以 "#" 和 "%" 开头分别匹配字符串开头和结尾,类似于正则的 "^"闹孝 和 "$" 符号。如果 string 为空效果是删除匹配字符虚凯串。

例子:

运行:


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

原文地址: http://outofmemory.cn/tougao/12208260.html

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

发表评论

登录后才能评论

评论列表(0条)

保存