Linux

Shell编程系列(一)-- Shell 基础

2019-05-13  本文已影响0人  XinAnzzZ

一、Shell 概述

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

  2. Shell还是一个功能相当强大的编程语言,易编写、易调试、灵活性较强。Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令。

    我们使用的用于向Linux发送命令的界面就叫做Shell。我们知道,计算机能识别的指令只有0和1,所以说不管是哪一种编程语言,它进行了多少次编译、解释、加工、最终都转化成为了0110这种类似的计算机指令。
    那么Shell充当的角色就是将我们输入的Linux命令进行解释说明,转换成为Linux内核所能够识别的指令,这样,Linux内核才能乖乖的为我们做事。
    同样的,计算机所输出的信息也是二进制数据,Shell也会将这些二进制数据转换为方便我们理解的编程语言。
    所以说,Shell的角色之一就是充当了计算机和人类之间的“翻译官”。从某种角度来讲,我们也可以将windows的操作界面称之为Shell。

二、Shell初体验-Hello World

编写我们第一个Shell脚本,在控制台(博主使用的是XShell工具),输入vim hello.sh,新建一个脚本文件并且进入编辑模式。
输入以下内容然后保存。

#!/bin/bash
# this is my first shell program.
echo "Hello World !"

执行命令 bash ./hello.sh,控制台打印“Hello World !”。这样我们就完成了我们第一个Shell脚本程序。
下面解释一下我们的这些代码。首先#!/bin/bash,它标识了下面的内容是标准的Shell脚本。第二行是注释,Shell的注释方式是前面加“#”。
第三行echo,是将指定内容进行输出的命令。可以理解为System.out.print();。这个脚本就是简单的进行打印输出。

三、Bash 的基本功能

  1. 命令别名与快捷键
快捷键 描述
ctrl + c 强制终止当前命令
ctrl + l 清屏
ctrl + a 光标移动到命令行首
ctrl + e 光标移动到命令行尾
ctrl + u 从光标所在位置删除到行首
ctrl + z 把命令放入后台
ctrl + r 在历史命令中搜索
  1. 历史命令
  1. 多命令顺序执行
多命令执行符 格式 作用
; 命令1 ; 命令2 多个命令顺序执行,命令之间没有任何逻辑联系
&& 命令1 && 命令2 逻辑与。
当命令1正确执行,命令2才会执行。
当命令1执行不正确,则命令2不会执行
¦¦ 命令1 ¦¦ 命令2 逻辑或。
当命令1执行不正确,命令2才会执行。
当命令1正确执行,则命令2不会执行
  1. Shell中特殊符号
符号 作用
? 匹配一个任意字符
* 匹配0个或者n个任意字符
[] 匹配中括号中任意一个字符。
[-] 匹配中括号中任意一个字符,-代表范围。例如[0-9],就匹配数字0到9中任意一个字符
[^] 匹配不是中括号中的任意一个字符
符号 作用
'' 单引号。在单引号中所有的特殊符号都没有特殊含义,例如“$”和“`”。
"" 双引号。在双引号中所有的特殊符号都没有特殊含义,但是“$”、“~”和“\”例外。
`` 反引号,键盘“Esc”下面那个按键。被反引号包含的内容是系统命令。
在Bash中会先执行它,他的作用和“$()”一样,推荐使用后者,因为前者容易和单引号混淆。
$() 和反引号作用一样,用来引用系统命令。
# 在Shell脚本中,用于注释。
$ 用于调用变量的值。
\ 转义符。

Shell的基础内容就介绍到这里,有疑问的同学欢迎评论或者私信我,没疑问但是想搞基的也可以联系我,虽然我很gay但是我真的不搞基。

上一篇下一篇

猜你喜欢

热点阅读