Shell基础
主要介绍编写Shell脚本时常用的一些基础语法和命令。
CoreJT
中科院自动化所在读直博生,感兴趣的研究方向:文本分类、情感分析、机器阅读理解与问答系统以及对话系统。
展开
-
Shell基础 | (12) 输入/输出重定向
原文地址大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回到您的终端。一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端。同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端.重定向命令列表如下:文章目录1. 输出重定向2. 输入重定向3. Here Document4. /dev/null 文件1. 输出重定向重定向一般通过在命令间插入特定的符号来实现。特别的,这些符号的语法如下所示:command1 > file1上面这个转载 2020-09-24 14:53:54 · 473 阅读 · 0 评论 -
Shell基础 | (11) 文件包含
原文地址Shell文件包含和其他语言一样,Shell 也可以包含外部脚本。这样可以很方便的封装一些公用的代码作为一个独立的文件。Shell 文件包含的语法格式如下:. filename # 注意点号(.)和文件名中间有一空格或source filename实例创建两个 shell 脚本文件。test1.sh 代码如下:#!/bin/bash# author:菜鸟教程# url:www.runoob.comurl="http://www.runoob.com"test转载 2020-09-24 14:01:23 · 153 阅读 · 0 评论 -
Shell基础 | (10) 函数
原文地址linux shell 可以用户定义函数,然后在shell脚本中可以随便调用。shell中函数的定义格式如下:[ function ] funname [()]{ action; [return int;]}说明:可以带function fun() 定义,也可以直接fun() 定义,不带任何参数。参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255下面的例子定义了一个函数并进行调用:#转载 2020-09-23 16:55:23 · 382 阅读 · 0 评论 -
Shell基础 | (9) 流程控制
原文地址文章目录1. if else2. for 循环3. while 语句4. until循环5. case6. 跳出循环6. case ... esac1. if elseifif 语句语法格式:if conditionthen command1 command2 ... commandN fi写成一行(适用于终端命令提示符):if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi转载 2020-09-22 15:06:31 · 207 阅读 · 0 评论 -
Shell基础 | (8) test命令
原文地址Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。文章目录1. 数值测试2. 字符串测试3. 文件测试1. 数值测试num1=100num2=100if test $[num1] -eq $[num2]then echo '两个数相等!'else echo '两个数不相等!'fi输出结果:两个数相等!代码中的 [] 执行基本的算数运算,如:#!/bin/basha=5b=6result=$[a+转载 2020-09-21 11:25:07 · 210 阅读 · 0 评论 -
Shell基础 | (7) printf命令
原文地址上一章节我们学习了 Shell 的 echo 命令,本章节我们来学习 Shell 的另一个输出命令 printf。printf 命令模仿 C 程序库(library)里的 printf() 程序。printf 由 POSIX 标准所定义,因此使用 printf 的脚本比使用 echo 移植性好。printf 使用引用文本或空格分隔的参数,外面可以在 printf 中使用格式化字符串,还可以制定字符串的宽度、左右对齐方式等。默认 printf 不会像 echo 自动添加换行符,我们可以手动添加转载 2020-09-21 11:11:41 · 263 阅读 · 0 评论 -
Shell基础 | (6) echo命令
原文地址Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:echo string您可以使用echo实现更复杂的输出格式控制。显示普通字符串:echo "It is a test"这里的双引号完全可以省略,以下命令与上面实例效果一致:echo It is a test显示转义字符echo "\"It is a test\""结果将是:"It is a test"同样,双引号也可以省略显示变量read 命令从标准输入中读取一行转载 2020-09-20 11:13:18 · 304 阅读 · 0 评论 -
Shell基础 | (5) Shell基本运算符
原文地址Shell 和其他编程语言一样,支持多种运算符,包括:算数运算符关系运算符布尔运算符字符串运算符文件测试运算符原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。expr 是一款表达式计算工具,使用它能完成表达式的求值操作。例如,两个数相加(注意使用的是反引号 ` 而不是单引号 '):#!/bin/bashval=`expr 2 + 2`echo "两数之和为 : $val"执行脚本,输出结果如下所示:两数之转载 2020-09-20 11:02:57 · 249 阅读 · 0 评论 -
Shell基础 | (4) Shell数组
原文地址数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。与大部分编程语言类似,数组元素的下标由0开始。Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:array_name=(value1 value2 ... valuen)实例#!/bin/bash# author:菜鸟教程# url:www.runoob.commy_array=(A B "C" D)我们也可以使用下标来定义数组:转载 2020-09-18 12:42:29 · 427 阅读 · 0 评论 -
Shell基础 | (3) 传递参数
原文地址我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……实例以下实例我们向脚本传递三个参数,并分别输出,其中 $0 为执行的文件名(包含文件路径):#!/bin/bash# author:菜鸟教程# url:www.runoob.comecho "Shell 传递参数实例!";echo "执行的文件名:$0";echo "第一个参数为:$1";echo "第二个参数为转载 2020-09-18 12:31:47 · 316 阅读 · 0 评论 -
Shell基础 | (2) Shell变量
原文地址文章目录1. Shell变量2. Shell 字符串3. Shell数组4. Shell注释1. Shell变量定义变量定义变量时,变量名不加美元符号$,your_name="runoob.com"注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。中间不能有空格,可以使用下划线(_)。不能使用标点符号。不能使用bash里的关键字(可用help命令查看保留关键字转载 2020-09-17 17:31:19 · 243 阅读 · 0 评论 -
Shell基础 | (1) Shell简介
原文地址文章目录1. 简介2. Shell环境3. Shell脚本1. 简介Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。2. Shell环境Shell 编程跟 JavaScript转载 2020-09-17 16:49:05 · 328 阅读 · 0 评论