1 #!/bin/bash
2 : << !
3 #使用变量
4 your_name="qinjx"
5 echo $your_name
6 echo ${your_name}
7 #只卖变量
8 myUrl="http://www.w3cschool.cc"
9 readonly myUrl
10 myUrl="http://www.runoob.com"
11 #删除变量
12 unset variable_name
13
14 #数据类型:数字和字符串
15 #定义字符串
16 str1='this is a string' #单引号里的任何字符都会原样输出,字符串中的变量是无效的
17 str2="Hello, I know your are \"$str1\"! \n" #双引号里可以有变量和转义字符
18 #读取字符串长度
19 string="abcd"
20 echo ${#string} #输出 4
21 #分割提取子字符串
22 string="runoob is a great site"
23 echo ${string:1:4} # 输出 unoo ,从字符串第 2 个字符开始截取 4 个字符:
24 #查找子字符串
25 string="runoob is a great company"
26 echo `expr index "$string" is` # 输出 8
27 !
28 : << !
29 #数组
30 #定义数组
31 array_name=(value0 value1 value2 value3)
32 #或者
33 array_name=(
34 value0
35 value1
36 value2
37 value3
38 )
39 #单独定义各数组变量
40 rray_name[0]=value0
41 array_name[1]=value1
42 #读取数组
43 valuen=${array_name[n]} #读取单个数组
44 echo ${array_name[@]} #读取多个数组
45 #数组的长度
46 # 取得数组元素的个数
47 length=${#array_name[@]}
48 # 或者
49 length=${#array_name[*]}
50 # 取得数组单个元素的长度
51 lengthn=${#array_name[n]}
52 #基本运算
53 #加算
54 val=`expr 2 + 2`
55 echo "两数之和为 : $val"
56 #减算
57 `expr $a - $b`
58 #乖算
59 `expr $a \* $b`
60 #除算
61 `expr $b / $a`
62 #除余
63 `expr $b % $a`
64 #赋值
65 a=$b
66 #相等
67 [ $a == $b ] #返回布尔值
68 #不相等
69 [ $a != $b ] #返回布尔值
70 !
71 #if判断
72 a=10
73 b=20
74 if [ $a != $b ]
75 then
76 echo "a 不等于 b"
77 fi
78
79
80

  

shell常识的更多相关文章

  1. 《Unix&Linux大学教程》学习笔记三:Shell常识

    1:全局变量与局部变量 全局:可以从父进程传递给子进程的变量,如:环境变量. 局部:只能在特定的子Shell中使用的变量. 局部变量变全局:使用 “export 局部” 指令将创建的局部变量导出到环境 ...

  2. shell - 常识

    一.用户登陆进入系统后的系统环境变量: $HOME 使用者自己的目录 $PATH 执行命令时所搜寻的目录 $TZ 时区 $MAILCHECK 每隔多少秒检查是否有新的信件 $PS1 在命令列时的提示号 ...

  3. 几个shell程序设计小知识(shell常识部分)

    [转自]http://blog.chinaunix.net/uid-168249-id-2860686.html 引用:一.用户登陆进入系统后的系统环境变量:  $HOME 使用者自己的目录  $PA ...

  4. shell常识总结

    #!/bin/bash cmd="ls -lt | grep ^d | awk 'NR==1 {print $9}'" $cmd 这是一个获取文件夹名字的脚本,但是却提示: ls: ...

  5. 初始scrapy,简单项目创建和CSS选择器,xpath选择器(1)

    一 安装 #Linux: pip3 install scrapy #Windows: a. pip3 install wheel b. 下载twisted http://www.lfd.uci.edu ...

  6. 40个超有趣的Linux命令行彩蛋和游戏

    40个有趣的Linux命令行彩蛋和游戏,让你假装成日理万机的黑客高手.附一键安装脚本,在树莓派和ubuntu云主机上亲测成功,有些还可以在Windows的DOS命令行中运行. 本文配套B站视频:40个 ...

  7. SHELL脚本编程的常识和VI常用技巧

    来源:http://mprc.pku.edu.cn/mentors/training/TrainingCourses/material/ShellProgramming.HTM#_Toc3751808 ...

  8. Shell脚本编程的常识

    (这些往往是经常用到,但是各种网络上的材料都语焉不详的东西,个人认为比较有用) 七种文件类型 d            目录                                       ...

  9. shell脚本编程常识

    (这些往往是经常用到,但是各种网络上的材料都语焉不详的东西,个人认为比较有用) 七种文件类型 d            目录                                       ...

随机推荐

  1. Mongo集群搭建

    1.集群角色及架构 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置服务器等 mongos,数据库集群请求的入口,所有的请求都通过mongos进行协调,不需要在应用程序添加一个路由选择器 ...

  2. 2、linux防火墙的使用(firewalld)

    2.1.说明: 1.在 RHEL7 里有几种防火墙共存,firewalld.iptables,默认是使用 firewalld 来管理 netfilter 子系统,不过底层调用的命令仍然是 iptabl ...

  3. 22、lnmp_nginx反向代理(负载均衡)、高可用

    负载均衡,根据ip和端口号找到相应的web服务器站点(即端口区分): 22.1.nginx的负载均衡: 1.介绍: 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器.分 ...

  4. 详细解释 使用FileReference类加载和保存本地文件

    一般而言,用户不希望web浏览器中运行的应用程序访问电脑硬盘里的文件.然而,随着基于浏览器(browser-based)的富因特网应用程序的增多,一些应用程序迫切需要访问用户所选择的文件,或者将文件保 ...

  5. Docker搭建Gogs代码仓库——代码自动化运维部署平台(一)

    一.准备工作 1.Gogs 概念: Gogs 是一款极易搭建的自助 Git 服务. 目的: Gogs 的目标是打造一个最简单.最快速和最轻松的方式搭建自助 Git 服务.使用 Go 语言开发使得 Go ...

  6. AcWing 99. 激光炸弹

    地图上有n个目标,用整数x,y表示目标在地图上的位置,每个目标都有一个价值Wi. 注意:不同目标可能在同一位置. 现在有一种新型的激光炸弹,可以摧毁一个包含r个位置的正方形内的所有目标. 激光炸弹的投 ...

  7. MySql:Navicat 连接不上虚拟机上的mysql容器

    1.问题显示 通过windows主机navicat连接虚拟的mysql时报如下错误. 2.问题原因 由于navicat版本的问题,出现连接失败的原因:mysql8 之前的版本中加密规则是mysql_n ...

  8. 码云使用svn无法提交空文件夹

    错误信息: svn: E200015: Commit failed (details follow): svn: E200015: Empty directories is not supported ...

  9. Python+unittest+excel

    接口测试设计思想: 框架结构如下: 目录如下: readme: config下的run_case_config.ini 文件说明: run_mode: 0:获取所有sheet页 1: if case_ ...

  10. webpack(10)webpack-dev-server搭建本地服务器

    前言 当我们使用webpack打包时,发现每次更新了一点代码,都需要重新打包,这样很麻烦,我们希望本地能搭建一个服务器,然后写入新的代码能够自动检测出来,这时候就需要用到webpack-dev-ser ...