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. 「模拟8.21」山洞(矩阵优化DP)

    暴力: 正解: 考虑循环矩阵,f[i][j]表示从i点到j点的方案数 我们发现n很小,我们预处理出n次的f[i][j] 然后在矩阵快速幂中,我们要从当前的f[i][j]*f[j][k]-->fi ...

  2. 【模板】Linux下输出文件的对比

    命令格式: diff+[参数]+[文件1或目录1]+[文件2或目录2] 命令参数: 指定要显示多少行的文本.此参数必须与-c或-u参数一并使用. -a或--text diff预设只会逐行比较文本文件. ...

  3. Ubuntu配置apt安装源为清华源[含自动配置脚本]

    Ubuntu配置apt安装源为清华源[含自动配置脚本] 一.备份原配置文件 Ubuntu 的软件源配置文件是/etc/apt/sources.list.将系统自带的该文件做个备份,以防万一. sudo ...

  4. 看完互联网大佬的「LeetCode 刷题手册」, 手撕了 400 道 Leetcode 算法题

    大家好,我是 程序员小熊 ,来自 大厂 的程序猿.相信绝大部分程序猿都有一个进大厂的梦想,但相较于以前,目前大厂的面试,只要是研发相关岗位,算法题基本少不了,所以现在很多人都会去刷 Leetcode ...

  5. Maven安装、配置及基础

    简介: Maven是Apache公司的开源项目,是项目构建工具,用来管理依赖. Maven的优点: 同样的代码实现相同的功能,Maven项目没有Jar包,项目大小更小. maven的优点如何实现: 没 ...

  6. 用java实现斐波那契数列

    斐波那契数列源于数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入的计算问题.假设某种兔子兔子,出生第一个月变成大兔子,大兔子再过一个月能生下一对小兔子,且一年 ...

  7. MySql:CentOS7安装mysql后无法启动服务报错,(需要更新yum源)

    首先:需要更新你的yum源,保证yum源最新. 1.安装: yum install -y mariadb-server 2.启动maria DB服务: systemctl start mariadb. ...

  8. ESP32-http server笔记

    基于ESP-IDF4.1 #include <esp_wifi.h> #include <esp_event.h> #include <esp_log.h> #in ...

  9. ADO.NET整理 [转]

    虽然我们都知道ADO.NET是对数据库的操作,但是要真的说出ADO.NET的具体含义还不是很容易. ADO.NET是ActiveX Data Objects的缩写,它是一个COM组件库,用于在micr ...

  10. 测试基础(四)Jmeter基础使用

    前言 通过测试基础(三) Jmeter安装 - 大风北吹 - 博客园 (cnblogs.com)安装完成Jmeter后,就可以使用Jmeter进行性能测试. 一.线程组 (1).线程组分类 Jmete ...