字符串截取
${变量名:起始位置:长度} 从0开始
a=qwertfancy
echo ${a:0:1} #打印的为q生成随机数RANDOM
echo $RANDOM
echo $[RANDOM%62]
n=$[RANDOM%62]
echo ${a:$n:1}
echo -------------------------------
#!/bin/bash
a=qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890
for i in {1..8}
do
n=$[RANDOM%62]
a+=${a:$n:1}
done
echo $aa=qweq
echo {a/q/6} # 单/表示只替换首位
echo {a//q/6} # 双//表示全部替换
echo {a//q/} # 最后一个不填,表示替换为空a=abcdef
echo ${a#abc} #删除开头abc
echo ${a%def} #删除结尾def
a=abcdef
echo ${a#*c} #c前边(包括c)全部删除
a=abcdef
echo ${a%d*} #d(包括d),后边的全部删除
a=abcdcdv
echo ${a##*c} #如果存在多个c,可以使用##
a=abcdbcdv
echo ${a%%d*} #如果存在多个b,可以使用%%测试
#!/bin/bash
for i in $( ls /opt/*.txt )
do
n=${i%.*}
mv $i $n.doc
done
echo----------------------
#!/bin/bash
for i in $( ls /opt/*.$1 )
do
n=${i%.*}
mv $i $n.$2
done初值(不赋值情况下的默认值)
echo ${a:-abc}
abc
echo------------------
a=123
echo ${a:-abc}
123
echo---------------------------
#创建用户,如果不输入密码,存在qwer默认密码
#!/bin/bash
read -p "请输入用户名:" n
useradd $n
read -p "请输入密码(默认密码qwer):" m
echo ${m:qwer} | passwd --stdin $n
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 程序员fancy
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果