我的朗科运维第三课
1.利用vim编辑多文件
vim file1 file2 file3 ……
:next 查看或编辑后一个文档的内容
:prev 查看或编辑前一个文档的内容
:first 查看或编辑第一个文档的内容
:last 查看或编辑最后一个文档的内容
vim -o|-O file1 file2 file3 ……
水平或垂直分屏显示多个文件
Ctrl+w 切换到其他文档
#Ctrl+w 切换到指定文档
Ctrl+w,s|v 水平或垂直分屏显示
:qa 退出
:wa 保存
:r file 加载其他文档到当前界面显示
:!COMMAND 跟shell交互
:w file 保存到file中
:m,nw file 将第m行到第n行保存到file中
:m,+nw file 将第m行到m+n行保存到file中
:.,$w file
2.Centos系统中为我们提供多种shell
如:sh、tcsh、ksh、bash(默认)、zsh、……
直接输入相应的shell名称即可切换到不同的shell
/etc/shells 中保存着shell
3.命令别名:alias
格式:alias [命令的别名]=[系统的命令]
说明:对于每个用户来说,都有一个私有的bash配置文件:~/.bashrc
注意:alias命令的效果仅限于当前shell的生命期;若要永久生效需改bashrc文件,改后得重启才生效,为保证别名有效,通常两种操作都做;
撤销别名:unalias:
格式:unalias NAME
4.命令历史:
history [参数]
参数:-c 清空历史缓冲区中的历史命令;
-d offiset 删除特定历史命令条目
重复使用历史缓冲区中的命令
!# 重复历史命令中编号为#的命令
!STRING 查找最近一次执行过以STRING开头的命令
!?STRING 查找最近一次执行过的包含STRING的命令
!-# 执行历史缓冲中倒数第#条命令
Ctrl+r 在历史缓冲区中实施搜索
!$|^ 查找最后一次命令最后一个参数或第一个参数
![SEQUENCE]:NUMBER 查找第SEQUENCE个命令的第NUMBER个参数
与历史相关个bash变量:
HISTSIZE
HISTFILESIZE
HISTTIMEFORMAT
HISTTIMEFORMAT="%F %T"
HISTCOMTROL
ignoredups 忽略连续且相同的命令的历史缓存
ignorespace 忽略以空白字符开头的命令
ignoreboth 以上两个功能都启用
5.常用快捷键
Ctrl+l 相当于clear,清屏
Ctrl+a 将光标跳转至命令行的行首;
Ctrl+e 将光标跳转至命令行的行尾;
Ctrl+k 删除光标所在位置至行尾的命令行信息;
Ctrl+u 删除光标所在位置至行首的命令行信息;
Ctrl+c 结束前台进程,取消命令的运行;
6应用功能:
'':强引用
"":弱引用
\ bash中定义的转义字符,只能使其后一个字符失去特殊意义;
元字符:
* 匹配任意长度的任意字符,某些特殊位置的"."字符不能被匹配;
? 匹配任意单个字符,必须且只有一个字符被匹配;
[] 匹配指定范围内的人一旦个字符,必须且只有一个字符被匹配;
[a-z]:a,A,b,B,c,C,……y,Y,z 不包括 Z
[A-Z]:A,b,B,c,C,……y,Y,z,Z 不包括 a
字符集:
[:lower:] 所有的小写字母
[:upper:] 所有的大些字母
[:alpha:] 表示所有字母字符
[:digit:] 表示所有的十进制数字 10
[:alnum:] 表示所有的大小写字母以及十进制数字
[:space:] 表示空白字符
[:punct:] 所有的标点符号
^ 取反匹配
7.输出重定向:
>: 覆盖输出重定向
~]# set -C //开启防误覆盖开关
在此开关开启后,可以使用">|"符号继续覆盖重定向
~]# set +C //关闭防误覆盖开关
>>: 追加输出重定向
错误重定向:
2>: 覆盖错误重定向
2>>: 追加错误重定向
合并标准输入和标准输出的重定向:
1) &>, &>>
2)COMMAND >|>> /PATH/TO/SOMEFILE 2>&1
输入重定向:
<: 唯一的输入重定向的符号
<<: Here Document(此处文档)
<<<: Here String(此处字符串)