输入值

//相加
add(){
echo "add two agrs..."
echo "enter first one: "
read arg1
echo "enter second one: "
read arg2
return $(($arg1+$arg2))
} add; echo "the results is: $? !" //判断输入是否是exit code returns () {
return $*
} read -p 'Exit code:' num
if (returns $num); then //简化 returns $num && echo true $? || echo false $?
echo true $?
else
echo false $?
fi //显示输入的密码
get_password() {
if [[ -t 0 ]]; then //如果是在terminal内的话
read -r -p 'Password: ' -s $1 && echo // -r不过滤反斜杠; -s 不显示输入;单用echo实现换行
else
return 1
fi
} get_password PASSWORD && echo $PASSWORD
  • 录制终端会话的常用方法

文件编辑

//修改文件名大写为小写
for file in [A-Z]*; do
echo "processing $file"
mv $file `echo $file | tr [A-Z] [a-z]`
done //把.htm扩展名修改为.html for i in *.htm ; do
echo "processing $i"
mv $i `basename $i .htm`.html
done //为参数文件生成.bak文件
while [ $# -gt 0 ]; do
[[ -e $1 ]] && cp $1 $1.bak && echo "create $1.bak"
shift
done

查找

//查找匹配文件
find .. -path "*/test/*" ! -name "test.pdf" \( -name "*.txt" -o -name "*.pdf" )\ //最后加上-delete可以删除匹配的文件

文件总数量

count =$(ls *.sh | wc -l)
echo "$count"

shell example02的更多相关文章

  1. Shell 基础笔记

    1-22-shell脚本的基础 本节所讲内容:      shell 基本语法      变量 第1章 什么是SHELL?.. 2 1.1 shell编程.. 3 第2章 shell变量及运用.. ...

  2. Shell替换

    如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. #!/bin/bash a= echo -e "Value of a is ...

  3. Shell特殊变量

    $ 表示当前Shell进程的ID,即pid $echo $$ 运行结果 特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数.例如,第一个参数 ...

  4. shell变量

    定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样.同时,变量名 ...

  5. 第一个shell脚本

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. #!/bin/bash echo "Hello World !" &quo ...

  6. shell简介

    Shell作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. shell使用的熟练程度反映了用户对U ...

  7. Shell碎碎念

    1. 字符串如何大小写转换 str="This is a Bash Shell script." 1> tr方式 newstr=`tr '[A-Z]' '[a-z]' < ...

  8. MongoDB学习笔记二—Shell操作

    数据类型 MongoDB在保留JSON基本键/值对特性的基础上,添加了其他一些数据类型. null null用于表示空值或者不存在的字段:{“x”:null} 布尔型 布尔类型有两个值true和fal ...

  9. 使用C#给Linux写Shell脚本

    在这个逼格决定人格,鄙视链盛行的年头,尤其是咱们IT界,请问您今天鄙视与被鄙视的次数分别是多少?如果手中没有一点压箱的本事,那就只有看的份了.今天我们也要提升下自己的格调,学习些脑洞大开的东西,学完之 ...

随机推荐

  1. JQuery中$.ajax()方法参数详解(转载)

    url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...

  2. QQ等级表

    什么是QQ等级呢? 2003年,腾讯公司推出了QQ等级制度 . 最早是以小时,来计算的,那段时间,绝大部分QQ用户都在挂QQ,之后就有不少媒体指责其浪费能源,在有关部门的介入下,腾讯公司将QQ等级变为 ...

  3. MySQL5.0数据库的安装

    ======================= 未完待续,持续更新中... -------------------------------------------------

  4. [Unity3D]脚本生命周期学习

    脚本的生命周期 继承于MonoBehaviour的类对象无需手动实例化,由引擎来决定实例化的时机 Awake:每当脚本被加载的时候调用一次,就是说即使脚本没有被勾选,也会调用一次,主要用来做一些初始化 ...

  5. webstorm常用快捷键

    常用快捷键—Webstorm入门 提高代码编写效率,离不开快捷键的使用,Webstorm拥有丰富的代码快速编辑功能,你可以自由配置功能快捷键. 快捷键配置 点击“File”-> “setting ...

  6. 用Canvas写桌球游戏!!!

    声明:本文为原创文章,如需转载,请注明来源WAxes,谢谢! 昨天上班的时候闲着无事,就用Canvas写了个桌球游戏来玩玩....所以就拿这游戏上来水一发.或许对一些刚学canvas的人有帮助. 话说 ...

  7. serialize存入数组

    原代码 def get_type type_list = "" if categories.include?"movie" type_list += " ...

  8. C#高级编程笔记 Day 5, 2016年9月 13日 (泛型)

    [重点]泛型:有了泛型,就可以创建独立于被包含类型的类和方法了.我们不必给不同的类型编写功能相同的许多方法和类,只创建一个方法或类即可,以下是泛型的特点:性能.类型安全性.二进制代码重用.代码的扩展. ...

  9. tornado 第二种路由方法(装饰器)

    #!/usr/bin/env python # _*_coding:utf-8 _*_ import tornado.ioloop import tornado.web application = t ...

  10. 启动apache和tomcat端口被占用解决办法

    1,打开控制台,使用命令 netstat -aon|findstr 8090  找出端口被占用的进程, 2,使用 taskkill -f -pid 4116(进程id)杀掉当前占用端口的进程