【Linux】shell编程案例
一、随机生成字符文件名
1.需求描述:
使用for循环在/usr/test目录下创建10个html文件,其中每个文件需要包含10个随机小写字母加固定字符串test,案例名称如下:
以下为示例:
2.代码部分:
#!bin/bash
#Autor:OLIVER
#Date :2018-12-11
#Desc :生成随机文件名
#Version 1.0 [ -d /usr/prac ] || mkdir /usr/prac
cd /usr/prac
echo $(pwd) && \ for i in {1..10}
do
filename=$(uuidgen|tr '0-9-' 'a-z'|cut -c 1-10 )
touch ${filename}_test.html
done
代码高亮截图:
3.代码说明
[ -d /usr/prac ] || mkdir /usr/prac 判断文件夹/usr/prac是否存在,不存在则新建
echo $(pwd) && \ 控制台输出当前文件目录
0-9- 该表达式会将短线过滤
二、批量修改文件名
1.需求描述
将上述文件名中的test后缀批量修改为exp,并且将文件名后缀修改为.HTML
以下为示例:
2.代码部分
#!bin/bash
#Autor:OLIVER
#Date :2018-12-11
#Desc :批量修改文件名
#Version 1.0 DIR=/usr/prac cd $DIR && \ for i in $(ls *.html)
do
rname=$(echo $i|cut -c -10)
mv $i ${rname}_exp.HTML
done
代码高亮截图
3.代码说明
for i in $(ls *.html) 表示循环文件夹下所有的html文件,i指文件名
${rname} 表示获取变量值,与$rname等效
三、筛选符合长度的单词
1.需求描述
利用bash for循环打印下面这句话中字母数大于4的单词
We waited for john in the lobby of the airport
2.代码部分
#!bin/bash
#Autor:OLIVER
#Date :2018-12-11
#Desc :筛选
#Version 1.0 for i in We waited for john in the lobby of the airport
do
if [ "${#i}" -le 4 ];then
echo $i
fi
done
代码高亮截图
3.代码说明
${#i} 表示取字符串i的长度值
【Linux】shell编程案例的更多相关文章
- 一文学完Linux Shell编程,比书都好懂
一. Shell 编程 1. 简介 Shell 是一个用 C 语言编写的程序,通过 Shell 用户可以访问操作系统内核服务. Shell 既是一种命令语言,又是一种程序设计语言. Shell scr ...
- linux —— shell 编程(文本处理)
导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 基本文本处理 流编辑器sed aw ...
- linux —— shell 编程(编程语法)
导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 再识变量 函数 条件语句 循环语句 ...
- linux shell编程总结
linux shell编程总结 本周学习了unix/linux shell编程,参考的是<LINUX与UNIX Shell 编程指南>,David Tansley著:徐焱,张春萌等译,由机 ...
- Linux Shell编程参考大全
本文记录Linux Shell编程中常用基本知识,方便快速入门以及查询使用. 本文主要分为以下几个部分: 一.Shell中的变量 任何编程语言中,有关变量的定义,作用范围,赋值等都是最最基础的知识. ...
- Linux Shell编程中的几个特殊符号命令 & 、&& 、 ||
https://blog.csdn.net/hack8/article/details/39672145 Linux Shell编程中的几个特殊符号命令 & .&& . || ...
- linux shell 编程参考
#!/bin/bash my_fun() { echo "$#" } echo 'the number of parameter in "$@" is '$(m ...
- Linux Shell编程与编辑器使用详解
<Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...
- linux shell编程,先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程才运行
linux shell编程,先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程才运行 crontab每分钟执行一次,但5秒以上才有更新数据,有时候一分钟可能跑不完上一个进程,需要先等10秒再判 ...
- 前端学习 linux —— shell 编程
前端学习 linux - shell 编程 shell 原意是"外壳",与 kernel(内核)相对应,比喻内核外的一层,是用户和内核沟通的桥梁.shell 有很多种,国内通常使用 ...
随机推荐
- 聚类:层次聚类、基于划分的聚类(k-means)、基于密度的聚类、基于模型的聚类
一.层次聚类 1.层次聚类的原理及分类 1)层次法(Hierarchicalmethods)先计算样本之间的距离.每次将距离最近的点合并到同一个类.然后,再计算类与类之间的距离,将距离最近的类合并为一 ...
- protobuf 嵌套示例
1.嵌套 Message message Person { required string name = 1; required int32 id = 2; // Unique ID n ...
- STM32启动文件深度解析
STM32启动过程全面解析,包括启动过程的介绍.启动代码的陈列以及深入解析.相对于ARM上一代的主流ARM7/ARM9内核架构,新一代Cortex内核架构的启动方式有了比较大的变化.ARM7/ARM9 ...
- Remote Desktop Session中如何触发Ctrl+Alt+Delete?
Ctrl+Alt+End is a keyboard shortcut used in a Remote Desktop Session to display the security dialog ...
- iOS开发-UIRefreshControl下拉刷新
下拉刷新一直都是第三库的天下,有的第三库甚至支持上下左右刷新,UIRefreshControl是iOS6之后支持的一个刷新控件,不过由于功能单一,样式不能自定义,因此不能满足大众的需求,用法比较简单在 ...
- ubuntu16.04忘了root密码
1.开机点击ESC,进去GUN GRUB界面 2.选择有recovery mode的选项,按e进入命令行 3.找到有recovery nomodeset的行,删除recovery nomodeset, ...
- (转)【Unity Shaders】Alpha Test和Alpha Blending
转自:http://blog.csdn.net/candycat1992/article/details/41599167 写在前面 关于alpha的问题一直是个比较容易摸不清头脑的事情,尤其是涉及到 ...
- MFC自定义控件如何向父窗口发送自定义消息
自定义了一个控件 class CHtmlEditCtrlEx : public CHtmlEditCtrl 想在这个控件接收到Ctrl+V键盘消息的时候,向该控件所在的窗口发送一个自定义消息.具体 ...
- CMake can't find GLEW
Q: I'm on Windows and there is a FindGLEW.cmake file in my CMake modules folder, presumably put th ...
- nodejs发送请求
const https = require('https'); var options = { hostname: 'registry.yarnpkg.com', port: 443, path: ' ...