Linux学习日志7.2:Bash基本功能

Linux学习日志7.2:Bash基本功能


前言

本系列文章只是我的学习笔记,内容仅供参考(新手上路,如有错误还望各位大佬指正)。具体内容可以观看b站兄弟连的视频教程。

一、历史命令与命令补全

历史命令

语法:history 选项 历史命令保存文件
选项:
-c:清空历史命令
-w:把缓存中的历史命令写入历史命令保存文件
功能:查看历史命令,历史命令保存文件在家目录下的/.bash_history,默认保存一千条文件
使用上下箭头可以调用以前的历史命令
使用“!n”重复执行第n条历史命令
使用“!!”重复执行上一条命令
使用“!字串”重复执行最后一条以该字串开头的命令

命令与文件文件补全

在Bash中,在输入命令或文件时,按Tab键就会自动进行补全名字

二、命令别名与常用快捷键

命令别名

alias 别名=‘原命令’
功能:设定命令别名, 暂时生效,永久生效改家目录下的/.bashrc文件
alias
功能:查看命令别名
unalias 别名
功能:删除别名
命令执行顺序:
1、绝对路径或相对路径
2、执行别名
3、执行Bash内部命令
4、执行$PATH环境变量定义的目录查找顺序找到的第一个命令
在这里插入图片描述

Bash常用快捷键

Ctrl+a:把光标移动到开头
ctrl+e:把光标移动到命令行结尾
ctrl+l:清屏
ctrl+u:删除或剪切光标前的命令
ctrl+k:删除或剪切光标后的内容
ctrl+y:粘贴
ctrl+r:在历史命令里搜索
ctrl+d:退出当前终端
ctrl+z:暂停,并放入后台
ctrl+s:暂停屏幕输出
ctrl+q:恢复屏幕输出

三、输入输出重定向

输出重定向

让命令输出的结果不输出在屏幕上而保存在文件中就是输出重定向,标准输出是显示器
标准输出重定向语法:
命令>文件 以覆盖的方式,把命令的正确输出输出到指定的文件或设备当中
命令>>文件 以追加的方式,把命令的正确输出输出到指定的文件或设备当中
标准错误输出重定向:
错误命令 2>文件 以覆盖的方式,把命令的错误输出输出到指定文件
错误命令 2>>文件 以追加的方式,把命令的错误输出输出到指定的文件或设备当中

正确输出和错误输出同时保存
命令>文件 2.&1:以覆盖的方式把正确输出和错误输出都保存到同一个文件当中
命令 >>文件 2>&1:以最佳的方式吧正确的输出和错误的输出都保存到同一个文件当中
命令 &>文件:以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中
命令 &>>文件:以追加的方式,把正确输出和错误输出都保存到同一个文件当中
命令>>文件1 2>>文件2:把正确的输出追加到文件1中,把错误的输出追加到文件2中

输入重定向

默认键盘是输入,改成文件为输入
语法:wc 选项 文件名
选项:
-c:统计字节数
-w:统计单词数
-l:统计行数
作用:统计,不加选项都统计
命令<文件
在这里插入图片描述

四、多命令顺序执行与管道符

1、多命令顺序执行

多命令执行符号:

符号:;
格式:命令 ;命令
作用: 多个命令顺序执行,命令之间没有任何逻辑联系
符号:&&
格式:命令&&命令
作用:逻辑与当命令1正确执行,则命令2才会执行当命令1执行不正确,则命令2不会执行
符号:||
格式:命令||命令
作用:逻辑或当命令1执行不正确,则命令2才会执行,当命令1正确执行,则命令2不会执行

执行顺序是从左到右依次判断的:
命令1 && 命令2 || 命令3
命令1正确命令2执行否则ml3执行

dd命令

语法 if=输入文件 of=输入文件 bs=字节数 count=个数
选项:
if=输入文件 :指定源文件或源设备可以是磁盘可以复制文件系统
of=输出文件: 指定目标文件或目标设备
bs=字节数:指定一次输入、输出多少字节,即把这些字节看做一个数据块
count=个数:指定输入、输出多少个数据块

在这里插入图片描述

管道符|

语法:命令1|命令2
作用:命令1正确输出作为命令2的操作对象

grep命令

语法:grep 选项 “搜索内容” 文件名
选项:
-i:忽略大小写
-n:输出行号
-v:反向查找
–color=auto 搜索出的关键字用颜色显示
运用管道符完成很多不同的操作比如:
在这里插入图片描述

通配符及其他符号

通配符

? :匹配一个容易字符
* :匹配任意个字符
[]:匹配中括号中任意一个字符。例如:[abc]代表一定匹配一个字符,a或b或c
[-]:匹配中括号中任意一个字符,-代表一个范围。例如[a-z],代表匹配一个小写字母。
[]:逻辑非,表示匹配不是中括号内的一个字符。例如:[0-9 ]代表匹配一个不是数字的字符。

其他特殊符号

‘’:单引号。在单引号中的所有特殊字符,都没有特殊意义。
“”:双引号,在双引号中断特殊符号没有特殊含义。但“KaTeX parse error: Undefined control sequence: \” at position 8: ”、“,”和“\̲”̲是例外,他们的特殊作用分别是“…()作用一样,建议用$()
$():和反引号作用一样,用来引用系统命令。
#:在shelll脚本中,#开头的行代表注释。
: 用 于 调 用 变 量 的 值 , 如 需 调 用 变 量 n a m e 的 值 时 , 需 要 用 :用于调用变量的值,如需调用变量name的值时,需要用 :namename的方式得到变量的值。
:转义符,跟在\之后的特殊符号将失去特殊含义,变为普通字符。如$将输出$符号,而不当做是变量引用。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值