Linux基本使用命令(第二天)

141 阅读6分钟

32.调用命令行历史:

#重复前一个命令方法重复前一个命令使用上方向键,并回车执行
按!!并回车执行
输入!-1并回车执行
按Ctrl+p并回车执行
!:0执行前一条命令(去除参数)
!n执行history命令输出对应序号n的命令
!-n执行history历史中倒数第n个命令
!string重复前一个以“string”开头的命令
!?string重复前一个包含string的命令
!string:p仅打印命令历史,而不执行
!:p打印输出!:p打印输出!(上一条命令的最后一个参数)的内容
!:p打印输出!(上一条命令的所有参数)的内容
^string删除上一条命令中的第一个string
^string1^string2将上一条命令中的第一个string1替换为string2
!:gs/string1/string2将上一条命令中所有的string1都替换为string2使用up(向上)和down(向下)键来上下浏览从前输入的命令
ctrl-r来在命令历史中搜索命令(reverse-i-search)`’:
Ctrl+g:从历史搜索模式退出
#要重新调用前一个命令中最后一个参数
!$表示前一个命令中最后一个参数
Esc, .  点击Esc键后松开,然后点击.键
Alt+ .  按住Alt键的同时点击.键

调用命令参数方法:

command !^ 利用上一个命令的第一个参数做command的参数
command !$ 利用上一个命令的最后一个参数做command的参数

command !* 利用上一个命令的全部参数做command的参数
command !:n 利用上一个命令的第n个参数做command的参数
command !n: ^调用第n条命令的第一个参数
command !n:调用第n条命令的最后一个参数command!n:m调用第n条命令的第m个参数command!n:调用第n条命令的所有参数command!string:命令历史中搜索以string开头的命令,并获取它的第一个参数command!string:调用第n条命令的最后一个参数 command !n:m调用第n条命令的第m个参数 command !n:*调用第n条命令的所有参数 command !string:^从命令历史中搜索以string开头的命令,并获取它的第一个参数 command !string:从命令历史中搜索以string开头的命令,并获取它的最后一个参数
command !string:n从命令历史中搜索以string开头的命令,并获取它的第n个参数
command !string:*从命令历史中搜索以string开头的命令,并获取它的所有参数

33.bash快捷键:

Ctrl + l清屏,相当于clear命令
Ctrl + o执行当前命令,并重新显示本命令
Ctrl + s阻止屏幕输出,锁定
Ctrl + q允许屏幕输出,解锁
Ctrl + c终止命令
ctrl + z挂起命令
Ctrl + a光标移到命令行首,相当于Home
Ctrl + e光标移到命令行尾,相当于End
Ctrl + f光标向右移动一个字符
Ctrl + b光标向左移动一个字符
Ctrl + xx光标在命令行首和光标之间移动
Alt + f光标向右移动一个单词尾
Alt + b光标向左移动一个单词首
Ctrl + u从光标处删除至命令行首
Ctrl + k从光标处删除至命令行尾
Alt + r    删除当前整行
Ctrl + w从光标处向左删除至单词首
Alt + d从光标处向右删除至单词尾
Alt + Backspace删除左边单词
Ctrl + d删除光标处的一个字符
Ctrl + h删除光标前的一个字符
Ctrl + y将删除的字符粘贴至光标后
Alt + c从光标处开始向右更改为首字母大写的单词
Alt + u从光标处开始,将右边一个单词更改为大写
Alt + l从光标处开始,将右边一个单词更改为小写
Ctrl + t交换光标处和之前的字符位置
Alt + t交换光标处和之前的单词位置
Alt + #提示输入指定字符后,重复显示该字符#次 34.man命令
1.man页面分组:
不同类型的帮助称为不同的“章节”,统称为Linux手册,man 1 man
1:用户命令
2:系统调用
3:C库调用
4:设备文件及特殊文件
5:配置文件格式
6:游戏
7:杂项
2.查看man手册:man [OPTION...] [SECTION] PAGE...;man[章节]keyword
3.man命令操作:
space, ^v, ^f, ^F:向文件尾翻屏
b, ^b:向文件首部翻屏
d, ^d:向文件尾部翻半屏
u, ^u:向文件首部翻半屏
RETURN, ^N, e, ^E or j or ^J:向文件尾部翻一行
y or ^Y or ^P or k or ^K:向文件首部翻一行
q:退出
#:跳转至第#行
1G:回到文件首部
G:翻至文件尾部
4.常用选项: 列出所有帮助:man -a keyword
搜索man手册:man -k keyword
相当于whatis:man -f keyword
查看man帮助文件路径:man -w [章节] keyword

34.linux下的文件类型:

-:普通文件
d:目录文件direction
l:符号链接文件
b:块设备block
c:字符设备character
p:管道文件pipe
s:套接字文件socket
例: image.png

35.基名:basename:只取文件名;目录名:dirname:只取路径
36.列出文件内容:ls [options][file_or_dirs]

-a:包含隐藏文件
-l:显示额外信息
-R:目录递归
-ld:目录与符号链接信息
-1:文件分行显示
-S:按从小到大排序
-t:按mtime排序
-u:配合-t选项,显示并按atime从新到旧排序
-U:按目录存放顺序显示
-X:按文件后缀排序

37.查看文件状态 stat;文件相关:metadata,data

access time:访问时间,atime:读取文件内容
modify time:修改时间,mtime,改变文件内容
change time :改变时间;ctime:元数据发声改变的时间

38.查看文件类型:file [options][filename]

-b:列出文件辨识结果时,不显示文件名称
-f:filelist列出文件filelist中文件名的文件类型
-F:使用指定分隔符号替换输出文件名后默认的"."分隔符
-L:查看对应软链接对应的文件的文件类型
--help:显示命令在线帮助

39.文件通配符:匹配多个条件,方便管理

*:匹配0个或多个
?:匹配任何单个字符
~:当前用户家目录
~-:前一个工作目录
[0-9]:匹配数字范围
[a-z]:一个字母
[A-Z]:一个字母
[wang]:匹配列表中的任何一个字符

*:不会显示隐藏文件,而且不能删除隐藏文件

image.png

40.touch:创建文件和刷新时间;

-a:仅改变atime和ctime
-m:仅改变mtime和ctime
-t:[[CC]YY]MMDDhhmm[.ss]:指定mtime和atime时间戳
-c:如果文件不存在,则不予创建

41.cp:实现文件或者目录的复制
格式:

image.png

常用选项
-i:如果目标已存在,覆盖前提示是否覆盖
-n:不覆盖,注意两者顺序
-r, -R递归复制目录及内部的所有内容
-a:归档,相当于-dR --preserv=all,常用于备份功能
-d --no-dereference --preserv=links不复制原文件,只复制链接名
--preserv[=ATTR_LIST]:mode:权限;ownership:属主属组;timestamp: ;links
xattr
context
all
-p:等同--preserv=mode,ownership,timestamp
-v: --verbose
-f:--force
-u--update只复制源比目标更新文件或目标不存在的文件
-b目标存在,覆盖前先备份,默认形式为filename~,只保留最近的一个备份
--backup=numbered目标存在,覆盖前先备份加数字后缀,形式为filename.#,可以保留多个版本

42.移动和重命名文件:mv
格式:
image.png
常用选项:

-i:交互式 ,默认覆盖 -f:强制
-b:目标存在,覆盖前先备份
rename:可以批量修改文件名
image.png image.png