shell example01
条件判断
if [[ -e ${1} ]]; then
echo "$(tput setaf 2) found ${1} $(tput sgr0)"
cat ${1}
else
echo "$(tput setaf 1) not found ${1} $(tput sgr0)"
exit 1
fi
//简化
[[ -e ${1} && -e ${2} ]] && cat ${1} > ${2}
//判断取反
txt='4.txt'
if ! [[ -e ${txt} ]]; then
touch ${txt}
echo "touch ${txt}; name length ${#txt}"
fi
//多重选择
bold=$(tput bold)
underline=$(tput smul)
normal=$(tput sgr0)
red=$(tput setaf 1)
green=$(tput setaf 2)
if [[ -e 'a1.txt' ]]; then
echo "${bold}${underline}${green} search a{1..5}.txt ${normal}"
ls a{1..5}.txt 2> log.txt
elif [[ -e 'b1.txt' ]]; then
echo "${bold}${underline}${green} search b{1..5}.txt ${normal}"
ls b{1..5} txt 2>> log.txt
else
echo "${bold}${underline}${red} create a{1..4}.txt ${normal}"
touch a{1..5}.txt
fi
显示时间
//查找文件
start=$(date +%s)
echo 'start search'
find ~/ -name '*.txt' &> log.txt
echo 'end search'
end=$(date +%s) //%s以秒为单位
difference=$(( end - start))
echo "Time is ${difference} seconds".
//显示具体的执行时间
echo 'start search'
time find ~/ -type f -name '*txt' &> log.txt //仅仅是文件
echo 'end search'
//计时器
echo '- Count Start'
tput sc //存储光标位置
count=0
while [[ ${count} -lt 20 ]]
do
let count++
sleep 1 //延迟一秒
tput rc //恢复光标位置
tput ed //清除从当前光标位置到行尾之间的所有内容
echo "- ${count}"
done
echo "- Count End"
循环
//循环创建文件
for i in file{1..9}.txt
do
if [[ -e ${i} ]]
then
echo "find ${i} skip"
else
echo "start create ${i}"
touch ${i}
fi
done
echo "finished"
//判断空文件
files=$(echo *.txt)
normal=$(tput sgr0)
type="%-10s %-8s\n"
printf "$(tput bold)${type}" name blank
printf ${normal}
for file in ${files}; do
check=true
color=$(tput setaf 1)
test -s ${file} && check=false color=$(tput setaf 2)
printf "${color}${type}" ${file} ${check}
printf ${normal}
done
简单编辑
//去除空白
cat $1 | sed '/s //g' > new.log //sed 's/要被取代的字串/新的字串/g'
//对特定格式的文档计算重复值
//log.txt
account1:passwd1
account2:passwd2
account3:passwd3
account2:passwd4
account4:passwd5
account6:passwd6
account1:passwd7
//
awk -F: 'x[$1]++ {print $1 " is duplicated"}' log.txt //awk -F 指定分割字符
shell example01的更多相关文章
- Shell 基础笔记
1-22-shell脚本的基础 本节所讲内容: shell 基本语法 变量 第1章 什么是SHELL?.. 2 1.1 shell编程.. 3 第2章 shell变量及运用.. ...
- Shell替换
如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. #!/bin/bash a= echo -e "Value of a is ...
- Shell特殊变量
$ 表示当前Shell进程的ID,即pid $echo $$ 运行结果 特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数.例如,第一个参数 ...
- shell变量
定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样.同时,变量名 ...
- 第一个shell脚本
打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. #!/bin/bash echo "Hello World !" &quo ...
- shell简介
Shell作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. shell使用的熟练程度反映了用户对U ...
- Shell碎碎念
1. 字符串如何大小写转换 str="This is a Bash Shell script." 1> tr方式 newstr=`tr '[A-Z]' '[a-z]' < ...
- MongoDB学习笔记二—Shell操作
数据类型 MongoDB在保留JSON基本键/值对特性的基础上,添加了其他一些数据类型. null null用于表示空值或者不存在的字段:{“x”:null} 布尔型 布尔类型有两个值true和fal ...
- 使用C#给Linux写Shell脚本
在这个逼格决定人格,鄙视链盛行的年头,尤其是咱们IT界,请问您今天鄙视与被鄙视的次数分别是多少?如果手中没有一点压箱的本事,那就只有看的份了.今天我们也要提升下自己的格调,学习些脑洞大开的东西,学完之 ...
随机推荐
- Alpha阶段第六次Scrum Meeting
情况简述 Alpha阶段第六次Scrum Meeting 敏捷开发起始时间 2016/10/27 00:00 敏捷开发终止时间 2016/10/28 00:00 会议基本内容摘要 提出了目前阶段遇到的 ...
- javascript读取xml文件
什么是 XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 标签没 ...
- 第一次作业——subway
作业源程序代码:https://github.com/R-81/subway 作业程序使用说明:通过输入命令参数求解路线(仅支持-b,-c),根据参数得出路线后,程序不会结束,此时可输入地铁路线名(例 ...
- sqlserver text/ntext 字段读取
sqlserver ntext 字段在读取时返回值 net.sourceforge.jtds.jdbc.ClobImpl@555bc78f 需要在连接数据库的URL后边加上";useLOBs ...
- Android基础篇(一)
Android体系结构介绍 Android是一个移动开发平台,层次结构:操作系统(OS).中间件(Middle Ware).应用程序(Application) 具体: 操作系统(OS)-->各种 ...
- multipart/form-data和application/x-www-form-urlencoded的区别
在Form元素的语法中,EncType表明提交数据的格式 用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型. 下边是说明: application/x-www-form-urle ...
- Linux进程间通信(二):信号集函数 sigemptyset()、sigprocmask()、sigpending()、sigsuspend()
我们已经知道,我们可以通过信号来终止进程,也可以通过信号来在进程间进行通信,程序也可以通过指定信号的关联处理函数来改变信号的默认处理方式,也可以屏蔽某些信号,使其不能传递给进程.那么我们应该如何设定我 ...
- Linux网络下载命令 wget 简介
wget 是一个命令行的下载工具.对于我们这些 Linux 用户来说,几乎每天都在使用它.下面为大家介绍几个有用的 wget 小技巧,可以让你更加高效而灵活的使用 wget. $ wget -r -n ...
- 逻辑回归LR
逻辑回归算法相信很多人都很熟悉,也算是我比较熟悉的算法之一了,毕业论文当时的项目就是用的这个算法.这个算法可能不想随机森林.SVM.神经网络.GBDT等分类算法那么复杂那么高深的样子,可是绝对不能小看 ...
- input placeholder兼容ie10以下
代码如下: ,) < ) { $('input[placeholder]').each(function(){ var input = $(this); $(input).val(input.a ...