当前位置:网站首页>shell脚本实战(第2版)/人民邮电出版社 脚本2 验证输入:仅限字母和数字
shell脚本实战(第2版)/人民邮电出版社 脚本2 验证输入:仅限字母和数字
2022-08-09 10:26:00 【玛丽苏打肉饼】
validalphanum()
{
validchars="$(echo $1 | sed -e 's/[^[:alnum:]]//g')" #1
if [ "$validchars" = "$1" ];then
return 0
else
return 1
fi
}
read -p "Enter input: " input #2
if ! validalphanum "$input" ; then
echo "your input must consist only letters and numbers."
exit 1
else
echo "input is valid"
fi
exit 0
1.shell 脚本sed工具
sed本身也是管道命令,可以分析标准输入。而sed还可以将数据进行替换,删除,新增,选择特定行等功能。
[[email protected] ~] sed [-nefr] [操作] 文件名
选项与参数:
- -n:一般 sed 命令会把所有数据都输出到屏幕上。如果加入此选项,则只会把经过 sed 命令处理的行输出到屏幕上;
- -e: 允许对输入数据应用多条 sed 命令编辑;
- -f 脚本文件名:从 sed 脚本中读入 sed 操作。和 awk 命令的 -f 选项非常类似;
- -r:在 sed 中支持扩展正则表达式;
- -i:用 sed 的修改结果直接修改读取数据的文件,而不是由屏幕输出动作
操作:n1,n2 function
- a :追加,在当前行后添加一行或多行。
- c :行替换,用c后面的字符串替换原数据行。
- i :插入,在当前行前插入一行或多行。
- d:删除,删除指定的行;
- P:打印,输出指定的行;
- s:字符串替换,用一个字符串替换另一个字符串。格式为“行范围s/旧字串/新字串/g”(和Vim中的替换格式类似);
2.变量键盘读取
$read [-pt] variable
选项与参数:
-p:后面可以接提示字符
-t:后面可以接等待的秒数。
运行结果
边栏推荐
猜你喜欢
3D打印了这个杜邦线理线神器,从此桌面再也不乱了
开源SPL,WebService/Restful广泛应用于程序间通讯,如微服务、数据交换、公共或私有的数据服务等。
壁纸
相伴成长,彼此成就 用友U9 cloud做好制造业数智化升级的同路人
2021-01-11-雪碧图做表情管理器
【八大排序④】归并排序、不基于比较的排序(计数排序、基数排序、桶排序)
上传张最近做的E2用的xmms的界面的截图
史上最小白之《Word2vec》详解
Quick sort eight sorts (3) 】 【 (dynamic figure deduction Hoare, digging holes, front and rear pointer method)
RTP
随机推荐
公里周日
xmms播放器加了播放列表的管理功能
ESIM(Enhanced Sequential Inference Model)- 模型详解
工作--今天的学习
循环嵌套以及列表的基本操作
Throwing a question? The execution speed of the Count operation in the Mysql environment is very slow. You need to manually add an index to the primary key---MySql optimization 001
小程序员的发展计划
Attentional Feature Fusion
EndNoteX9 OR X 20 Guide
10000以内素数表(代码块)
【八大排序①】插入排序(直接插入排序、希尔排序)
动态内存管理
多行省略和选择器
分类预测 | MATLAB实现CNN-LSTM(卷积长短期记忆神经网络)多特征分类预测
Umi Hooks
LeetCode(剑指 Offer)- 25. 合并两个排序的链表
编解码(seq2seq)+注意机制(attention) 详细讲解
收到人生第一笔五位数工资
Demand side power load forecasting (Matlab code implementation)
面试官:MySQL 中 update 更新,数据与原数据相同时会执行吗?大部分人答不上来!