通配符
定义:shell 内建的符号
⽤途:操作多个相似(有简单规律)的⽂件
常⽤通配符
- *匹配任何字符串
- ? 匹配1个字符串
- [xyz] 匹配xyz任意⼀个字符
- [a-z] 匹配⼀个范围
- [!xyz] 或 [^xyz] 不匹配
⽂本查看命令
cat
head
tail
- 常⽤参数 -f ⽂件内容更新后,显示信息同步更新
wc
wc -l a.txt
查看a.txt有多少行
more
- 一页一页的显示,逐页阅读,
- 按空白键(space)就往下一页显示
- 按 b 键就会往回(back)一页显示
- 还有搜寻字串的功能 。
- more命令从前向后读取文件,因此在启动时就加载整个文件
- more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能
- 没有办法向前面翻, 只能往后面看
常用参数
- +n 从笫n行开始显示
- -n 定义屏幕大小为n行
- +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
- -c 从顶部清屏,然后显示
- -d 提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
- -l 忽略Ctrl+l(换页)字符
- -p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
- -s 把连续的多个空行显示为一行
- -u 把文件内容中的下画线去掉
常用操作命令
- Enter 向下n行,需要定义。默认为1行
- Ctrl+F 向下滚动一屏
- 空格键 向下滚动一屏
- Ctrl+B 返回上一屏
- = 输出当前行的行号
- :f 输出文件名和当前行的行号
- V 调用vi编辑器
- !命令 调用Shell,并执行命令
- q 退出more
例子
more +3 test.log
从第三行开始显示日志内容
more -4 test.log
将日志内容设置为每屏显示4行
more +/liu test.log
从文件中查找第一个出现"liu"字符串的行,并从该处前两行开始显示输出
less
- 不止可以向下搜,也可以向上搜
- 可以使用 [pageup] [pagedown] 等按 键的功能来往前往后翻看文件
- 使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动
- 而且 less 在查看之前不会加载整个文件。
常用参数
- -N 显示每行的行号
- -s 显示连续空行为一行
- -i 忽略搜索时的大小写
常用操作命令
- Q 退出less 命令
- u 向前滚动半页
- y 向前滚动一行
- 空格键 滚动一行
- 回车键 滚动一页
- [pagedown]: 向下翻动一页
- [pageup]: 向上翻动一页
- b 向后翻一页
- d 向后翻半页
- ps查看进程信息并通过less分页显示同时显示行号
ps -ef|less -N
例子
-
less test2.log test.log
浏览多个文件
说明:输入 :n后,切换到 test.log
输入 :p 后,切换到test2.log
-
当正在浏览一个文件时,也可以使用 :e命令 打开另一个文件
less file1
:e file2
ls命令
- 时间太过久远,文件时间只显示年份,使用如下命令显示完整时间
ls -l --full-time
如果乱码,则用LANG=en_US修改语言 - -l ⻓格式显示⽂件
- -a 显示隐藏⽂件
- -r 逆序显示
- -t 按照时间顺序显示
- -R 递归显示
打包压缩解压命令
tar命令(对gzip,bzip2文件操作)
-
压缩文件(文件中带有软链接)
tar -hcvf knox_ocdp knox/
-
解压文件(带有软链接)
tar -xvf knox1.0.0.3_ocdp
-
参数c compress
-
参数x
tar xf {要解压的文件} -C {解压到哪个目录} -
参数f filename
-
tar cf file.tar {要打包的文件}
-
参数z 对gzip文件压缩或者解压
tar zcf a.tar.gz b
把文件类型为gzip的b文件打包并压缩成a.tar.gz压缩文件
tar zxf a.tar.gz -C ../
把文件类型为tar.gz的a文件解压到上级目录中
注意 .tar.gz
可以缩写为.tgz
-
参数j 对bzip2文件进行压缩或者解压
tar jcf a.tar.bz2 b
把文件类型为bzip2的b文件打包并压缩成a.tar.bz2压缩文件
tar jxf a.tar.gz -C ../
把文件类型为tar.bz2的a文件解压到上级目录中
注意 .tar.bz2
可以缩写为.tbz2
-
后者执行速度慢于前者,因为bzip2的压缩比更高,所以耗时
ll -h查看压缩后的文件
Vim编辑器
模式
- 正常模式(Normal-Mode) - 插入模式(Insert-Mode) - 命令模式(Command-Mode) - 可视模式(Viisual-Mode)
man vi
可以获得相应的帮助
vim是一个同vi向上兼容的文本编辑器i 小写的i会进入光标当前位置,并同时进入插入模式
I 大写的I会进入这行的开头,并同时进入插入模式
a 小写的a会进入光标下一个位置,并同时进入插入模式
A 大写的A会进入光标所在行的末尾,并同时进入插入模式
o 小写的o会进入光标所在行下一行并创建空白行进入插入模式
O 大写的O会进入光标所在行上一行并创建空白行进入插入模式HJKL 左下上右移动
yy 复制当前光标所在整行
3yy 从当前光标所在行算起,往下复制三行
y$ 从光标位置复制到当前行末尾dd 剪切光标所在当前行
d$ 剪切光标到当前行末尾p粘贴到当前行的下一行(会新创建一行)
x 对当前字符进行删除
r 对当前字符进行替换撤销指令 u(回退到过去直到oldest)
重做 ctrl+r(回退到最新直到newest):set nu 列出行号
:set nonu 省略行号
:set nohlsearch 关闭高亮显示
:set hlsearch 开启高亮显示
:set paste 开启粘贴模式(为了防止有时候从windows复制过来格式错误)
vim /etc/vimrc
在最后一行添加set nu等配置,可全局生效行号显示gg 回到首行
G 回到末行
^ 跳到当前行首
$ 跳到当前行尾:w /root/a.txt 保存到/root/a.txt位置(文档路径前有空格) 另存为的意思
;/gaofeng 查找文档中的gaofeng字符串,默认光标跳转到第一个查找位置,输入n会接着往下找,shift+n会向上查找
:! ifconfig 在vim中进行命令结果查看,查看完后enter回到vim中
: s/old/new 将光标所在行中的第一个old字符进行替换,替换为new
: s/old/new 将光标所在行中的所有的old字符进行替换,替换为new
:%s/old/new 将整个文件中的第一个old字符进行替换,替换为new
:%s/old/new/g 将整个文件中的所有old字符进行替换,替换为new
:3,5s/old/new/g 将第3行跟第5行之间进行替换操作,old换成new且全部换三种进入可视模式的操作
- v 字符可视模式
- V 行可视模式
- ctrl+v 块可视模式
配合d和I(大写i)命令可以进行块的便利操作