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

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

1、启动Linux系统,用ssh工具连上Linux系统。

2、bash自带了一些调试选项。

3、在脚本启动时添加调试选项。来调试debug.sh。

4、在脚本内添加调试选项,使用set 命令。

5、现在要看debug.sh脚本执行的调试信息,就不需要使用bash -x  ./debug.sh执行了。

6、在脚本开头添加-xv选项。

7、同样现在执行./debug.sh,也可打印出调试信息。

注意事项:

shell脚本在计算机科学中,是指“为使用者提供 *** 作界面”的软件(命令解析器)。类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。

如果是bash,可以用数组,比如下面的循环,对每一个关键字 (赵钱孙里)处理一次

declare -A data

for key in zhao qian sun li zhao sundo

if [ -z "${data[$key]}" ]then

data[$key]=1

else

let data[$key]++

fi

done

for key in ${!data[@]}do

echo "$key occured ${data[$key]} times"

done

注意,命令引起来的是tab键上面那个,而不是单引号

解释:

md5sum a.txt的结果例如是

3a5cacda937fbe71fcb72cfe4904dee8 a.txt

前面是MD5值,a.txt是你指定的文件名,我们要取前面那部分,有2个方法:

方法一,也就是xiehuahere的回答:

a[1]=`md5sum a.txt | cut -d' ' -f1`

其中cut的-d,是指定空格为分隔符,-f1是指定取分隔后的第一个字串,就是我们要的MD5值了。

方法二:

md5sum a.txt | awk -F ' ' '{print $1}'

awk的-F ' ',是指定空格为分隔符,是指定空格为分隔符,是指定取分隔后的第一个字串,也是我们要的MD5值。

赋值除了使用“`”反引号,还可以这样,例:

a[1]=$(md5sum a.txt | cut -d' ' -f1)

a[1]=$(md5sum a.txt | awk -F ' ' '{print $1}')


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

原文地址: https://outofmemory.cn/bake/11729606.html

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

发表评论

登录后才能评论

评论列表(0条)

保存