shell编写脚本

本文介绍了如何使用Shell脚本批量修改文件扩展名,包括基本脚本示例和改良版脚本的编写。此外,文章详细讲解了正则表达式的使用,通过多种实例展示了在文本操作中的应用,如查找特定模式的行、替换字符串等。最后提到了`sed`流式编辑器的用法,包括行选择、替换和删除,并给出了安装HTTPD服务并修改配置的脚本示例。
摘要由CSDN通过智能技术生成

shell   04

================================================

一,练习:编写脚本,实现批量修改文件扩展名

touch abc{01..10}.txt   //创建10个文件作为素材

vim test01.sh

#!/bin/bash

#批量修改扩展名

for i in $(ls *.txt)   //找到所有的txt文件交给for循环

do

    a=${i%.*}   //用去尾的方法删除扩展名

    mv $i $a.doc   //再将源文件修改为doc的

done

 

改良版:

#!/bin/bash

#批量修改扩展名

for i in $(ls *.$1)     //要改啥类型的文件用$1位置变量表示

do

    a=${i%.*}

    mv $i $a.$2   //要改成啥,用$2表示

done

 

------------------------------------------------------

定义变量初值(备用值)

${变量名:-初值}

 

#!/bin/bash

read -p "请输入要创建的账户名:"  u

useradd $u

read -p "请输入要配置的密码(默认123456):"  p  

echo ${p:-123456} | passwd --stdin $u     //如果没有输入密码直接回车的话密码

就是123456

 

------------------------------------------------------

总结

${变量名:}   截取

${变量名/}   替换

${变量名#}   掐头

${变量名%}   去尾

${变量名:-}    定义初值(备用值)

----------------------------------------------------

二,正则表达式,使用若干符号配合某工具对文档进行增删改

查等操作

head -5 /etc/passwd > user      //准备素材

grep ^root user    //找以root开头的行

grep bash$ user     //找以bash结尾的行

grep ^$ user   //找空行

grep -v ^$ user

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值