您的位置:首页 > 运维架构 > Shell

shell脚本基础命令及 批量修改文件夹文件权限

2019-03-24 11:04 639 查看

变量扩展

${var:-word} 为空则使用默认值 word,var值不变
${var:=word} 为空则使用默认值word,var值变为word
${var:?word} 为空则输出word,脚本停止运行
${var:+word} 不为空则输出word,为空或null则输出 空值

字符串操作

${#var} 返回字符串长度
${var:3} 返回从第三个字符到最后
${var:3:5} 返回第三个字符到第5个字符
${var#pattern} 删除 开头到匹配的最小部分
${var##pattern} 删除开头到匹配的最大部分
${var%pattern} 删除结尾到匹配的最小部分
${var%%pattern} 删除结尾到匹配的最大部分
${var/old/name} 替换 第一次出现的old
${var//old/name} 替换 全部
${var/#old/name} 替换 开头到匹配的部分
${var/%old/name} 替换 从结尾到匹配的部分

变量输入

read var --从标准输入中获取变量值
read -p “yes or no?” var -p 用于给出提示
read n1 n2 n3 输入三个参数,分别赋予三个变量

特殊变量

$0 脚本名称
$1 表示第一个位置的参数
$# 位置参数的个数
#* 所有的位置参数当成一个字符串

批量修改文件夹、文件权限脚本test.sh

#!/bin/bash
#filename: test.sh
DIR=${1:?“you must specify a directory.”}
find $DIR -type d -exec chmod 755 {} ;
find $DIR -type f -exec chmod 644 {} ;

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: