linux补全文件名的快捷键,linux :补全,快捷键,history,alias,变量,管道,命令通配符等...

linux bash基础特性

linux基础特性

1 补全

系统支持的shell:#cat/etc/shells

当前系统默认shell:#echo $SHELL

命令补全:若给定的字符能够在系统中唯一的标识某个命令程序文件,按tab键,则能直接补全命令;如果不能被唯一标识,再次按tab键

ec143fb014d20674e29d6771ce3eaaac.png

按tab键

7430c95818632a071914a287dd79391f.png

不能被唯一标识

79d11b258c309edc82a8a62325e0f678.png

路径补全:给出的起始路径下,对应字符能够被唯一匹配,则tab键直接补全路径;若是不能被唯一标识,再次tab键,则会给出相应列表

f943988cde6d1e94b640ac8a322d7ba3.png

tab键

8397dd50928b2abab5f3ba1ca1710a14.png

不能被唯一匹配:

887e9e8f6e9aa76545bce9f70e881444.png

2 快捷键

ctrl+c 终止前台运行的程序9ce485ee230fb02546150d61a7e07b82.png

ctrl+l 清屏 --不是完全清理,相当于翻页

c97abd9536dc7437071d4c03626a2e9a.png

ctrl+ a 将光标移动到命令行的最前端

efb2bbf667042ff75cf4f55621b1fc60.png

ctrl+e 将光标移动到命令行的最末端

847dd3b67416eca7a1ae6b460f10cc9c.png

ctrl+u 删除光标前的所有字符

cd1ea0f1d22af0007e99a1e708bdb6d8.png

ctrl+k 删除光标后的所有字符

0ccfeebef63399fb039d119f5cf9e191.png

ctrl+d 退出 – 等价于exit

bc04d3405248e9d006fd7e854ab2b6ab.png

ctrl+r 搜索历史命令,利用关键词

3 命令历史

命令历史:shell进程会在其会话中保存此前用户提交执行过的命令

History: 可以查看当前执行过的命令

aea3591df478e759cf0ed52bebf61cef.png

HISTSIZE:shell进程可以保存的命令历史的条数;通过echo $HISTSIZE命令查看

711236a35da51f4c44afa0fefd82bbd3.png

HISTFILE 保存当前命令历史

1e6c69fcabbb56164cc593ca215b1ef5.png

HISTFILESIZE:命令历史文件的大小,超出部分会自动删除旧的命令。

history

-c :清空命令历史

62c95de143e181a269e2a616ecb411fc.png

-d n:删除第n条历史命令。

765f58e6d0d760ac9caff336a6a24e2c.png

-r:从文件读取命令历史至历史列表中

088d8691f51bed643a2071a56bbacd8a.png

-w:把历史列表命令追加至历史文件中

history n :显示最近的n条命令。

7268b6ea8a7dec3a1662cdc8fbfe3ca5.png

调用历史列表中的命令:

! n:再一次执行列表中第n条命令

!!:再次执行上一次命令

0bf8e598a41e1b7a0bb17858ed98fc70.png

! STRING::再一次执行最近一次以string开头的命令

082544b4d790eb0b52cbd9bdf637eeb5.png

调用上一个命令的最后一个参数

快捷键:ESC . —ESC+点号

字串符:!$

e992e180b8ee23c8870c87e2aa8111bd.png82d09af10a80721983245843f0de8339.png

ignoredups:忽略重复的命令

ignorespace:忽略以空白字符开头的命令

ignoreboth:以上两者同时生效

修i该变量的值:NAME=“VALUE”

c26091dd4a5fba2ead935f505c787afb.png

9485a3a76de3861e350a2a4fd076aa1d.png

HISTCONTROL=unignoreboth 解除修改

4 命令别名

获取所有可用别名的定义:

alias

定义别名:

alias NAME=“COMMAND” (仅对当前shell生效)

c6ea5d97648cd54ae48e9993c075c857.png

撤销别名:

unalias NAME:撤销NAME命令

b6adca170707982cb6f428355bad84a5.png

永久别名:

vi/etc/bashrc 如下:

eb381ff969ca3e87e9eb35167794545b.png

5 变量

变量是计算内存的单位,其中存放的值可以改变,当shell脚本需要保存一些信息时,如一个文件名或者一个数字,加把它存放在一个变量中,每个变量都有一个名字,所以很容易引用它。使用变量可以保存有用的信息,使系统获取用户相关设置,变量也用于保存暂时信息。

在linux系统中,变量分为本地变量,局部变量和环境变量。

本地变量:生效范围内当前shell进程的某代码片段,通常指函数。

局部变量:又称标准变量或普通变量,指生效范围内当前shell进程,对当前shell或其之外的其他shell进程均无效。

环境(全局)变量:生效范围内为当前shell进程及其子进程。

6 管道

| 管道

管道是linux中很重要的一种通信方式,可以把一个程序的输出结果连接到另一个程序的输入。

tee管道

在数据流的处理过程中将某段信息保存下来,使其皆能够输出到屏幕又能保存到某一个文件中。

0d3ee3df022f49077bfae923ff6e4074.png

tee -a file :以累加的方式,将数据加入file中。

. 点号(英文句号):在linux中点号代表当前目录。

. . 双点号:代表上一级目录。

; 分号:linux在执行多条命令时,用分号分开,顺序独立的执行各条命令,彼此互不干扰。

< ’ '> 反间引号:命令替换

:可以实现变量和命令的替换

7fb3540e716f92f78de5fc2f89008039.png

{ } :做扩建,或者构建代码

*星号:表示通配的作用。

7 命令通配符

命令通配符

含义

*

匹配任意长度的任意字符

匹配任意单个字符

【】

匹配指定范围内的任意单个字符

[^]

匹配指定范围内的任意单个字符

[a-z],[A-Z],[0-9],[a-z0-9]

[[:upper:]] :所有大写字母

[[:lower:]] :所有小写字母

[[:alpha:]] :所有字母

[[:digit:]] :所有数字

[[:alnum:]] :所有的字母和数字

[[:space:]] :所有的空白字符

[[:punct:]] :所有标点符号

[^[:upper]]

[^0-9]

[^[:alnum:]]

如:显示/var目录下所有以1开头,以一个小写字母结尾,且中间出现一位任意字符的文件或目录

323fe82c0d12205c78d8f099cded116c.png

显示/etc目录下,以任意一位非数字开头,且以数字结尾的文件或目录

dfeb77315ee398b1c77037df7979de7a.png

显示/etc目录下,以非大写字母开头,后面跟一个字母及其任意长度任意字符的文件或目录

5aee98a17d8697d6565dbd4e548b0987.png

复制/etc目录下,所有以m开头,以非字结尾的文件或目录至/tmp目录;

24fa28e048bd7fcab0d53533c92fd40a.png45505d15427677dc5356c012f184e6a7.png

复制/usr/share/man目录下,所有以man开头,后跟一个数字结尾的文件或目录至/tmp/man目录下;

663ce8430de74b70b5719b1411c49031.png

复制/etc目录下,所有以.conf结尾,且以m,n,r,p开头的文件或目录至/tmp/conf.d目录下

01d03d48da8dbad70c0ffb4fc7d67364.png

8 常见系统管理类命令

ls :显示指定工作目录下的内容

当执行ls命令时,默认显示的只有非隐藏文件的文件名,以文件名进行排序及文件名代表的颜色显示,当不加参数时,默认列出当前目录的列表信息。(说明,在linux之下,文件名以 . 开头的表示该文件为隐藏文件,如,bashrc)

-a :–all的缩写,显示所有的文件,包括隐藏文件

-A : --almost-all的缩写,显示所有文件,包括隐藏文件,但不包括表示当前目录**.**和上级目录 . . 这两个文件。

-c :和-lt一起使用:显示列表且以ctime(文件状态最后改变时间排序)。和-l一起使用:显示ctime并且以文件名排序,其他情况以ctime排下序。

-d :–directory的缩写,仅列出目录本身,而不是列出目录里面的内容列表。

-f :直接列出结果,不进行排序(ls默认会以文件名排序)

-- color [=when]:是否根据文件类型显示颜色,WHEN可以是never,always或者auto

--full-time :以完整的实际模式显示,类似于ls-l --time-style=full-iso

-g :列表显示结果,和-l类似,但是不显示文件所属者。

-h :将文件内容以GB,kb等易读的方式显示,

-i :结合-l参数,列出每个文件的inode

-l :列出长数据串,显示出文件的属性与权限等数据信息(常用)

-n :和-l类似,只显示所属用户和组 不是名称而是对应的id

-r :–reverse ,将排序结果以倒序方式显示。

-t :以修改时间排序。

f7b05de681b2dd91f5cf668b786e5e8b.png

pwd :显示当前工作目录的命令

pwd是Print working Directory的缩写 ,其功能是显示当前所在工作目录的全路径。主要用在当不确定所在位置时,通过pwd来查看当前目录的绝对路径。

-L :- - logical,显示当前的路径,有链接文件时,直接显示链接文件的路径(不加参数时默认此方式)

-p :- - physical,显示当前路径,有链接文件时,不使用连接路径,直接显示链接文件所指向的文件,当包含多层链接文件时,显示链接文件最终指向的文件。

2200602984e8a1963250a58de0f2c276.png

cd:改变当前工作目录的命令

cd是Change Directory的缩写,用来切换工作目录的命令。

cd [相对路径或绝对路径或特殊符号]说明:不加参数时,默认切换到用户目录,即环境变量HOME指定的目录,如root用户的HOME变量为/root,那么cd命令不带参数便切换到/root目录下。

特殊符号包括 ~,-,. 等。

~ :标识用户主目录,即HOME变量指定的目录,如root用户的主目录为/root

- :表示前一个工作目录

.. :表示上级目录

. :表示当前目录

89fb49f58f935771d89a791975be16c4.png

date :显示或修改系统时间与日期

9 输出重定向

linux系统三种IO设备

标准输人 STDIN------ 0 默认来自于键盘的输入

标准输出 STDOUT--- 1 默认输出到终端窗口

标准错误STDERR--- 2 默认输出到终端窗口

重定向

输入重定向 - - - - 不常用

输出重定向 :使用户将一个命令执行结果重定向到一个文件中,不在终端窗口显示

1> :覆盖

1>>:追加

e67560d5a4098c23e398f1d87a1a1a6b.png

错误重定向

2> :覆盖

2>>:追加

63bc571f7ae57477d88cb3cc7c086faf.png

正确和错误都重定向到一个位置:

2>&1

&>

e0b97cf367c22647a27f98ac418b48be.png

298e4ff8ea7f7a7ca694cbaa79730a61.png

/dev/null :数据黑洞

/dev/zero:吐0机

24aafad75177e9301096b38834564c16.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值