6)Bash常用快捷键

快捷键

作用

ctr1+ a

把光标移动到命令行开头。如果我们输入的命令过长,想要把光标移|

动到命令行开头时使用。

ctr1+e

把光标移动到命令行结尾。

ctr1+c

强制终止当前的命令。

ctr1+ l

清屏,相当于clear命令。

ctrl+u

删除或剪切光标之前的命令。我输入了一行很长的命令,不用使用退格键一个一个字符的删除,使用这个快捷键会更加方便

ctrl+k

删除或剪切光标之后的内容。

ctrl+y

粘贴ctrl+U或ctrl+k剪切的内容。

ctrl+r

在历史命令中搜索,按下ctrl+R之后,就会出现搜索界面,只要输入|

搜索内容,就会从历史命令中搜索。

ctrl+d

退出当前终端。

ctrl+z

暂停,并放入后台。这个快捷键牵扯工作管理的内容,我们在系统管

理章节详细介绍。

ctrl+s

暂停屏幕输出。

ctrl+q

恢复屏幕输出。

7)标准输入输出

设备

设备文件名

文件描述符

类型

键盘

/dev/stdin

0

标准输入

显示器

/dev/sdtout

1

标准输出

显示器

/dev/sdterr

2

标准错误输出

8)输出重定向

类型

符号

作用

标准输出重定向

命令>文件

以覆盖的方式,把命令的正确输出到指定的文件或设备当中。

命令>>文件

以追加的方式,把命令的正确输出到指定的文件或设备当中。

标准错误输出重定向

错误命令2>文件

以覆盖的方式,把命令的错误输出到指定的文件或设备当中。

错误命令2>>文件

错误输出到指定的文件或设备当中。

正确输出和错误输出同时保存

命令>文件 2>&1

以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中。

命令>>文件 2>&1

以追加的方式,把正确输出和错误输出都保存到同一个文件当中。

命令&>文件

以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中。

命令&>>文件

以追加的方式,把正确输出和错误输出都保存到同一个文件当中。

命令>>文件1 2>>文件2

把正确的输出追加到文件中,把错误的输出追加到文件2中。

9)输入重定向

命令 < 文件      把文件作为命令的输入

10)多命令顺序执行

多命令执行

格式

作用

命令1;命令2

多个命令顺序执行,命令之间没有任何逻辑联

逻辑与&&

命令1&&命令2

当命令1正确执行,则命令2才会执行

逻辑或||

命令1ll命令2

当命令1执行不正确,则命令2才会执行;当命令1正确执行,则命令2不会执行

11)管道符 |

格式:  命令1|命令2     #命令1的正确输出作为命令2的操作对象

12)grep   在文件中搜索符合条件的内容

格式:  grep [选项] “搜索内容"

选项:

-i:忽略大小写

-n:输出行号

-v:反向查找

-color=auto搜索出的关键字用颜色显示

13)通配符

通配符

作用

匹配一个任意字符

*

匹配0个或任意多个任意字符,也就是可以匹配任何内容

[ ]

匹配中括号中任意一个字符

[-]

匹配中括号中任意一个字符,-代表一个范围

[~]

逻辑非,表示匹配不是中括号内的一个字符

14)Bash中其他特殊符号

符号

作用

‘ ’

单引号。在单引号中所有的特殊符号,如“$”和“`”(反引号)都没有特殊含义。

” ”

双引号。在双引号中特殊符号都没有特殊含义,但是“$”、”`“和“\\”是例外,拥有“调用变量的值”、“引用命令”和“转义符”的特殊含义。

` `

反引号。反引号括起来的内容是系统命令,在Bash中会先执行它和$()作用一样,不过推荐使用$(),因为反引号非常容易看错。

$()

和反引号作用一样,用来引用系统命令。

#

在Shell脚本中,#开头的行代表注释。

$

用于调用变量的值,如需要调用变量name的值时,需要用Sname的方式得到变量的值。

\

转义符,跟在\\之后的特殊符号将失去特殊含义,变为普通字符。如\$将输出“$”符号,而不当做是变量引用。

5、Bash变量

1)用户自定义变量:本地变量

◆在Bash中,变量的默认类型都是字符串型。如果要进行数值运算,则必修指定变量类型为数值型。

◆变量用等号连接值,等号左右两侧不能有空格。

◆变量的值如果有空格,需要使用单引号或双引号包括。

◆在变量的值中,可以使用“\”转义符。

◆如果需要增加变量的值,那么可以进行变量值的叠加。不过变量需要用双引号包含“$变量名”或用${变量名}包含。

◆如果是把命令的结果作为变量值赋予变量,则需要使用反引号或$()包含命令。

◆环境变量名建议大写,便于区分。

变量定义:  name=“value”

变量叠加:  name=“$name”value

变量调用:  echo Sname

变量查看:  set

变量删除:  unset name

2)环境变量:这种变量中主要保存的是和系统操作环境相关的数据。

3)位置参数变量:这种变量主要是用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是固定的。

4)预定义变量:是Bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的。

Linux 第十四天的更多相关文章

  1. linux(十四)之linux NFS服务管理

    学到这里差不多就结束了linux的基础学习了,其实linux的内容并不难,我们要经常的反复的去操作它,多多和它去联络感情才能很好的掌握这个linux. 加油!今天是星期二.没有什么比努力让人更加热血沸 ...

  2. 攻城狮在路上(叁)Linux(十四)--- 查阅文件内容

    常用命令:cat.tac.nl.more.less.head.tail.od... 一.直接查看文件内容:cat.tac.nl <==一次性全部读取 1.cat [-AbEnTv] 文件名 参数 ...

  3. linux基础-第十四单元 Linux网络原理及基础设置

    第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...

  4. 《Linux内核设计与实现》读书笔记(十四)- 块I/O层

    最近太忙,居然过了2个月才更新第十四章.... 主要内容: 块设备简介 内核访问块设备的方法 内核I/O调度程序 1. 块设备简介 I/O设备主要有2类: 字符设备:只能顺序读写设备中的内容,比如 串 ...

  5. Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗、嗅探、dns欺骗、session劫持

    Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗.嗅探.dns欺骗.session劫持 文/玄魂 目录 Kali Linux Web 渗透测试—第十四课-arp欺骗.嗅探.dns欺 ...

  6. Linux Shell系列教程之(十四) Shell Select教程

    本文是Linux Shell系列教程的第(十四)篇,更多Linux Shell教程请看:Linux Shell系列教程 在上一篇文章:Linux Shell系列教程之(十三)Shell分支语句case ...

  7. 《sed的流艺术之四》-linux命令五分钟系列之二十四

    本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. ...

  8. Linux学习之十四、管线命令

    Linux学习之十四.管线命令 地址:http://vbird.dic.ksu.edu.tw/linux_basic/0320bash_6.php

  9. 《Linux命令行与shell脚本编程大全》 第十四章 学习笔记

    第十四章:呈现数据 理解输入与输出 标准文件描述符 文件描述符 缩写 描述 0 STDIN 标准输入 1 STDOUT 标准输出 2 STDERR 标准错误 1.STDIN 代表标准输入.对于终端界面 ...

随机推荐

  1. [Tools] Wireshark Primer Tutorials

    介绍就不说了,安装也没必要讲,关于如何使用,网上的辣鸡文过多,视频又太冗余. 我推荐看下面有条理的入门教程. 界面说明:http://openmaniak.com/cn/wireshark_use.p ...

  2. hadoop streaming 中跑python程序,自定义模块的导入

    今天在做代码重构,以前将所有python文件放到一个文件夹下,上传到hadoop上跑,没有问题:不过随着任务的复杂性增加,感觉这样甚是不合理,于是做了个重构,建了好几个包存放不同功能的python文件 ...

  3. 排序算法(Gif动图演示)

    冒牌排序(BubbleSort) 冒泡排序是一种比较简单的排序算法,它循环走过需要排序的元素,依次比较相邻的两个元素,如果顺序错误就交换,直至没有元素交换,完成排序. 若对n个人进行排序,我们需要n- ...

  4. html5下F11全屏化的几点注意

    1.实现全屏化 var docElm = document.documentElement; //W3C if (docElm.requestFullscreen) { docElm.requestF ...

  5. linux下的dhcp服务器实现

    一.得到udhcpd(udhcp服务端): 1.解压busybox 2.配置busybox Networking Utilities——> [*] udhcp server(udhcpd) [* ...

  6. oracle中 特殊字符 转义 (&)

    在dml中,若操作的字符中有 & 特殊字符,则会被oracle视作是输入变量的标志,此时需要用转义字符来进行转义. 1.”&“ 转义 这个是Oracle里面用来识别自定义变量的设置,现 ...

  7. Docker registry垃圾回收

    Docker registry垃圾回收 通过: docker run -p 5000:5000 -v /netdata/xxxx/registry:/var/lib/registry registry ...

  8. python--第十七天总结(Django)

    基本配置 一.创建django程序 终端命令:django-admin startproject sitename IDE创建Django程序时,本质上都是自动执行上述命令 其他常用命令: pytho ...

  9. NetCore+MySql+EF 数据库生成实体模型

    NetCore版本    2.1 1.点击“工具”->“NuGet包管理器”->“程序包管理器控制台” 分别安装以下几个包 Mysql 版本: MySql.Data.EntityFrame ...

  10. 网络通信实验(1)STM32F4 以太网简介

    STM32F4 以太网简介 STM32F407 芯片自带以太网模块,该模块包括带专用 DMA 控制器的 MAC 802.3(介质访问控制)控制器,支持介质独立接口 (MII) 和简化介质独立接口 (R ...