定义变量:

name='qwer'  不解析任何字符

name="qwer"  会解析$和\特殊字符

name1=123;name2=456  定义多个变量

now_date=`date`  执行系统命令(现在系统的时间)

引用变量:

echo $name

echo {$name}  {}用于区分边界

预定义变量:

$#  参数的数量

$@  所有参数

$*  所有参数

$?  执行后返回状态,0成功,非0失败

$$  当前进程号

$!  最后一个进程号

$0  当前进程名

输出格式:

echo  换行输出

echo -e $i \t 转义 \t 输出制表符

printf  不换行输出

接受键盘输入:

read name

echo "xxxx $name"

===============

cat file.txt | while read line  按行读入

按行输入:

<<|      用“|”做定界符

1111111111

222222222

|

let和expr整数算术运算:

i=10

j=20

q=30

let sum=$i+$j+$q

sum=`expr $i+$j+$q`

cheng=`expr $i\*$j`  乘法要用\转义

scale bc小数精度控制:

n=`echo "scale4;13/2" | bc`  scale4:小数4位

echo $n

6.5000

字符串操作:

echo ${name:0:3}  取0-3位数字符

string="you and you is name"

echo {string/you/YOU}  /替换you为YOU and you is name

echo {string//you/YOU}  //两次YOU and YOU is name

test比较运算:

大于  -gt

小于  -lt

大于等于  -ge

小于等于  -le

等于  -eq

不等于  -ne

================

a=100

b=200

test $b -gt $a

=================

str1="abc"

str2=""

test -n str1  测试str1长度不为0,成功返回0

test -z str1  测试str1长度不为空,成功返回0

test $str1 -a $str2  与

test $str1 -o $str2  或

test $str1 ! $str2  非

shell_01的更多相关文章

  1. Linux从入门到进阶全集——【第十四集:Shell基础命令】

    1,Shell就是命令行执行器 2,作用:将外层引用程序的例如ls ll等命令进行解释成01表示的二进制代码给内核,从而让硬件执行:硬件的执行结果返回给shell,shell解释成我们能看得懂的代码返 ...

  2. linux常用命令 awk命令

    awk命令 awk [选项] '条件1{动作1} 条件2{动作2}...' 文件名 条件(Pattern) *) 一般使用关系表达式作为条件 *) x>10 判断变量x是否大于10 *) x&g ...

  3. linux常用命令 命令管道符

    多命令顺序执行 多命令顺序执行 多命令执行符 格式 作用 : 命令1:命令2 多个命令顺序执行,命令之间没有任何逻辑联系 && 命令1&&命令2 逻辑与 当命令1正确执 ...

  4. linux常用命令 history命令

    历史命令 history [选项] [历史命令保存文件] 选项 '-c' 清空历史命令 '-w' 把缓存中的历史命令写入历史命令保存文件~/.bash_history [root@ssgao1987 ...

  5. shell shell基本概述

    SHELL的概念 SHELL是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序, 用户可以用shell来启动,挂起,停止甚至是编写一些程序. ​ Shell还是 ...

  6. shell 基本概述

    SHELL的概念 SHELL是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序, 用户可以用shell来启动,挂起,停止甚至是编写一些程序. ​ Shell还是 ...

随机推荐

  1. Redis JAVA客户端 Jedis常用方法

    Jedis 是 Redis 官方首选的 Java 客户端开发包 (redis的java版本的客户端实现) #MAVEN配置 <dependency> <groupId>redi ...

  2. Android基础总结(十)ContentProvider

    内容提供者(掌握) 应用的数据库是不允许其他应用访问的 内容提供者的作用就是让别的应用访问到你的私有数据 自定义内容提供者,继承ContentProvider类,重写增删改查方法,在方法中写增删改查数 ...

  3. Desugar Scala(15) -- unapply和unapplySeq方法

    欢迎关注我的新博客地址:http://cuipengfei.me/ 实在想不到什么动词可以当做脱衣服来讲了,所以从现在开始这系列博文就叫做Desugar Scala了.除非哪天才思泉涌,又想到了新词: ...

  4. 关于Unity的组件和作用

    一.Transform组件 整个场景由节点树组成. 节点+Transform组件,每个Transform有自己的孩子Transform,由Transform组成Transform树,而每个Transf ...

  5. 什么是Spring Cloud

    Spring Cloud是一系列框架的有序集合.它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线.负载均衡.断路器.数据监控等,都可以用 ...

  6. EJB类库存在于Java的哪个版本中?(选择1项)。

    A. J2SE B. J2EE C. J2ME D. J2NE 解答:B

  7. 【BZOJ】1609: [Usaco2008 Feb]Eating Together麻烦的聚餐(dp+被坑)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1609 首先我不得不说,我被这题坑了.题目前边没有说可以不需要3种牛都有啊!!!!!!!!然后我一直在 ...

  8. 根据List<SqlParameter>返回sql条件(where后)

    /// <summary> /// 根据参数列表返回sql条件(where后) /// </summary> /// <param name="list&quo ...

  9. 如何用ChemFinder制作子表单

    通过使用ChemFinder这一插件,用户可以建立自己的ChemFinder数据库,数据库是由表单集合而成,所以建立数据库的前提是要制作表单.在之前的教程中已经介绍了制作表单的方法,本节ChemDra ...

  10. 响应式布局中为什么要使用em设置字体大小而不用px

    px像素(Pixel).相对长度单位.像素px是相对于不同设备显示器屏幕分辨率(pad/phone/pc)而言的.(引自CSS2.0手册) 1em指的是一个字体的大小,它会继承父级元素的字体大小,因此 ...