Linux 第十四天
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 第十四天的更多相关文章
- linux(十四)之linux NFS服务管理
学到这里差不多就结束了linux的基础学习了,其实linux的内容并不难,我们要经常的反复的去操作它,多多和它去联络感情才能很好的掌握这个linux. 加油!今天是星期二.没有什么比努力让人更加热血沸 ...
- 攻城狮在路上(叁)Linux(十四)--- 查阅文件内容
常用命令:cat.tac.nl.more.less.head.tail.od... 一.直接查看文件内容:cat.tac.nl <==一次性全部读取 1.cat [-AbEnTv] 文件名 参数 ...
- linux基础-第十四单元 Linux网络原理及基础设置
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...
- 《Linux内核设计与实现》读书笔记(十四)- 块I/O层
最近太忙,居然过了2个月才更新第十四章.... 主要内容: 块设备简介 内核访问块设备的方法 内核I/O调度程序 1. 块设备简介 I/O设备主要有2类: 字符设备:只能顺序读写设备中的内容,比如 串 ...
- Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗、嗅探、dns欺骗、session劫持
Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗.嗅探.dns欺骗.session劫持 文/玄魂 目录 Kali Linux Web 渗透测试—第十四课-arp欺骗.嗅探.dns欺 ...
- Linux Shell系列教程之(十四) Shell Select教程
本文是Linux Shell系列教程的第(十四)篇,更多Linux Shell教程请看:Linux Shell系列教程 在上一篇文章:Linux Shell系列教程之(十三)Shell分支语句case ...
- 《sed的流艺术之四》-linux命令五分钟系列之二十四
本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. ...
- Linux学习之十四、管线命令
Linux学习之十四.管线命令 地址:http://vbird.dic.ksu.edu.tw/linux_basic/0320bash_6.php
- 《Linux命令行与shell脚本编程大全》 第十四章 学习笔记
第十四章:呈现数据 理解输入与输出 标准文件描述符 文件描述符 缩写 描述 0 STDIN 标准输入 1 STDOUT 标准输出 2 STDERR 标准错误 1.STDIN 代表标准输入.对于终端界面 ...
随机推荐
- C++字符串按照指定规则切割的功能模板类,常用的一段检测记录运行时间的代码
template <typename T> struct vector_split { typedef typename std::vector<T>::iterator it ...
- Java框架spring 学习笔记(十一):aop相关概念
为什么要引入aop? 比如如下情景: 在父类的方法名称发送了变化,在子类调用的方法也需要变化,当工程规模越来越大的时候,维护起来相当不方便,于是就引入了横向切面aop. aop的相关概念: 连接点:类 ...
- 域名系统DNS以及跨域问题
域名到Ip地址解析是由分布在因特网上的许多域名服务器程序共同完成的.运行域名服务器程序的机器是域名服务器 域名到ip地址的解析过程: 当一个应用进程需要把主机名解析为ip地址时,该应用就调用解析程 ...
- java中mysql查询报错java.sql.SQLException: Before start of result set
异常:java.sql.SQLException: Before start of result set 解决方法:使用rs.getString();前一定要加上rs.next(); sm = con ...
- 20175126《Java程序设计》第四周学习总结
# 20175126 2016-2017-2 <Java程序设计>第四周学习总结 ## 教材学习内容总结 - 本周学习方式主要为手动敲打教材代码和观看APP上的视频资源自学. - 学习内容 ...
- JVM深入理解
JVM深入理解 一.JVM介绍 JVM应用百度百科的原话是: JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过 ...
- 在javaScript中把非数值类型的数据自动转换为数值类型的两种方式
一.使用Number()函数. 二.使用parseInt()/parseFloat()函数. 详情: 一.使用Number()函数将非数值类型的数据自动的转化为数组类型 Number()函数可以将任何 ...
- 《剑指Offer》第1题(Java实现):在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
一.题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该 ...
- CentOS7.2 1511部署RabbitMQ
一.安装RabbitMQ依赖的的Erlang最小支持包(当然也可以安装完整的Erlang) 1.下载RabbitMQ的Erlang最小支持包源文件 git clone https://github.c ...
- go语言学习逻辑运算符if判断,iota的理解
第一天学习go语言,首先吐槽一下,配置go语言浪费了我两个小时的时间 不是在百度,就是在百度的路上,这里介绍一下我的go语言的版本和开发平台 go语言1.12版本,之前没有用过在早的版本了首先记录一下 ...