-
目录
文件管理
- 如果文件不存在就创建文件;如果存在就修改时间属性
- touch [参数选项] 文件名
- 例:
- touch tj.txt(如果不存在则创建tj.txt文件)
- touch tj{1..10}.txt
- (批量创建10个文件,分别为tj1.txt,,,,,tj10.txt)
- 参数选项:
- a:改变档案的读取时间记录
- m:改变档案的修改时间记录
- c:假如目的档案不存在,不会建立新的档案。与--no-create的效果一样
- d:设定时间与日期,可以使用各种不同的格式
- t:设定档案的时间记录,格式与date指令相同
- --help:列出指令格式
- --version:列出版本讯息
- 查看文件的详细信息
- stat 文件名
- 例:
- stat tj.txt
- 展示文本
- echo 字符串(功能类似printf和cout)
- 将字符串写到文件中(覆盖文件中内容)
- echo 字符串>文件名
- 将字符串写到文件中(不覆盖文件中内容)
- echo 字符串>>文件名
- 将命令的失败结果 追加error.log文件的后面
- cat 不存在的目录 &>> error.log
- 例:
- cat aaa.txt &>> tj.txt
-
文件查看
- 查看小文件内容(查看大文件会显示不全)
- cat [参数选项] 文件名
- 例:
- cat tj.txt(查看tj.txt的文件内容)
- cat -n tj.txt(按行号显示tj.txt的文件内容)
- 分屏显示大文件内容
- less [参数选项] 文件名
- 例:
- less tj.txt(查看tj.txt的文件内容)
- less -N tj.txt(按行号显示tj.txt的文件内容)
- 对查询结果的操作
- 0.上下键
- 1.全屏导航
- ctrl+F 向前移动一屏
- ctrl+B 向后移动一屏
- ctrl+D 向前移动半屏
- ctrl+U 向后移动半屏
- 2.单行导航
- j 向前移动一行
- k 向后移动一行
- 3.其它导航
- G 移动到最后一行
- g 移动到第一行
- q或ZZ 退出less命令
- 查看文件的前一部分
- head [参数选项] 文件名
- 查看文件的最后部分
- tail [参数选项] 文件名
- 例:
- tail tj.txt(查看tj.txt文件的最后部分)
- tail -3 tj.txt(查看tj.txt文件的最后3行)
- tail -f tj.txt
- (动态查看tj.txt文件的最后10行,按ctrl+c退出)
- tail -4f tj.txt
- (动态查看tj.txt文件的最后4行,按ctrl+c退出)
- tail -n+2 tj.txt
- (从文件的第2行开始一直显示到文件的末尾)
- tail -c 45 tj.txt
- (显示文件的最后45个字符)
- 参数选项
- -数字:显示文件的最后几行
- -f:循环读取文档最后10行
- -n <行数>:显示文件的内容,从指定行至文件末尾
- -c:显示最后指定的字节数
- 根据关键字搜索文本文件内容或进程
- grep [参数选项] 关键字 文件名
- 例:
- grep 汤 tj.txt
- 展示含有'汤'的语句
- grep -n 汤 tj.txt
- 展示含有'汤'的语句,点明所在行号
- grep -i a tj.txt(忽略大小写查找)
- 展示含有'a'和'A'的语句
- grep -v 汤 tj.txt
- 展示不含有'汤'的语句
- ps -ef | grep sshd
- 展示含有'sshd'的进程
- ps -ef | grep sshd | grep -v "grep"
- 展示含有'sshd'且不含有'grep'的进程
- ps -ef | grep -c sshd
- 展示含有'sshd'的进程的个数
-
vim
- 是文本编辑器
- vi
- 只能是编辑文本内容,不能对字体段落进行排版
- 不支持鼠标操作
- 没有菜单
- 只有命令
- vim
- 是从vi发展出来的一个文本编辑器
- 代码补全,编译及错误跳转等方便编程的功能特别丰富
- 三种模式
- 命令模式->阅读(只能读,不能操作)
- 编辑模式->编辑
- 末行模式->保存
- 命令模式+i->编辑模式
- 命令模式+冒号:->末行模式
- 编辑模式+Esc->命令模式
- 末行模式+2次Esc->命令模式
- 打开和新建文件
- vim 文件名
- 如果文件已经存在,会直接打开该文件
- 如果文件不存在,打开一个临时文件,在保存且退出后,就会新建这个文件
- 进入编辑模式
- i:在当前字符前插入文本
- I:在行首插入文本
- a:在当前字符后添加文本
- A:在行末添加文本
- o:在当前行后面插入一空行
- O:在当前行前面插入一空行
- 进入末行模式保存文件
- :q 当vim进入文件没有对文件内容做任何操作可以按q退出
- :q! 当vim进入文件对文件内容有操作但不想保存退出
- :wq 正常保存退出
- :wq! 强行保存退出,只针对于root用户或文件所有人
- 查看文件并定位到具体行数
- vim 文件名 +行数
- 例:
- vim tj.txt +5
- 查看tj.txt文件并光标定位到第5行
- 如果vim异常退出,在磁盘上可能会保存有交换文件
- vim编辑器为了保证文件的安全性,并不会在原文件上修改;
- 而是产生一个新文件(交换文件),名字为原文件名+swp后缀名,在这个新文件上编辑
- 当编辑完成保存时才会写回原文件中
- 异常退出后,再次使用vim编辑文件时会有提示信息,进行处理即可
- 不要原修改想重写可终止后用rm把交换文件删掉
-
awk
- AWK是一种处理文本文件的语言,是一个强大的文本分析工具
- 过滤和切割
- awk [参数选项] '语法' 文件
- 例:
- cat tj.txt | awk '/zhang|li/'
- 查找tj.txt文件中包含zhang或者li的语句(之间不要加空格,否则空格也会计入其中)
- -F ',' 使用指定字符(此处演示为,)分割
- $ +数字 获取第几段内容
- $0 获取当前行内容
- cat tj.txt | awk -F ' ' '{print $1,$2,$3}'
- 查找tj.txt文件中按照空格为分割符的第1,2,3段
- 切割后按照指定方式展示
- OFS="字符" 向外输出时的段分割字符串
- 例:
- cat tj.txt | awk -F ' ' '{OFS="==="} {print $1,$2,$3}'
- cat tj.txt | awk -F ' ' '{OFS="\t"} {print $1,$2,$3}'
- toupper() 字符转成大写
- tolower() 字符转成小写
- length() 返回字符长度
- 例:
- cat tj.txt | awk -F ' ' '{print tolower($1)}'
- cat tj.txt | awk -F ' ' '{print toupper($1)}'
- 'BEGIN{初始化操作}{每行都执行}END{结束时操作}'
- NR表示当时处理的是第几行,在某种需求时可利用其功能
- 例:
- cat tj.txt | awk -F ' ' 'BEGIN{}{totel=totel+$4}END{print totel}'
- 每一行按照空格切割,计算第4列的总分并显示
- cat tj.txt | awk -F ' ' 'BEGIN{}{totel=totel+$4}END{print totel,NR}'
- 每一行按照空格切割,计算第4列的总分和总人数并显示
- cat tj.txt | awk -F ' ' 'BEGIN{}{totel=totel+$4}END{print totel,NR,(totel/NR)}'
- 每一行按照空格切割,计算第4列的总分和总人数和平均分并显示
-
软连接
- 类似于Windows的快捷方式
- Linux的文件名和文件内容是由2个不同的文件存放的:1个文件装文件名,1个文件装文件内容
- 软连接过程
- 首先一个文件的软连接会先找到文件名的地址,再找到装着文件名的文件,最后才能找到文件中的内容
- 语法
- In -s 目标文件路径 快捷方式路径
- 例:
- In -s aaa/bbb/ccc/ddd/eee/tj.txt tj.txt
- 将aaa/bbb/ccc/ddd/eee目录下的tj.txt文件创建名为tj.txt的软连接在当前目录下
-
文件查找
- 在指定目录下查找文件
- find [参数选项] <指定目录> <指定条件> <指定内容>
- 参数选项
- . 表示在当前文件夹中进行查找
- / 根目录可表全盘查
- -name filename 查找名为filename的文件
- -ctime -n或+n 按时间来查找文件,-n指n天以内,+n指n天以前
- 例:
- find . -name "*.txt"
- 在当前目录下查找所有.txt文件
- find . -ctime -1
- 在当前目录下查找在1天之内操作过的所有文件和文件夹
- find / -name "*.txt"
- 全盘查找所有.txt文件
Linux常用命令-详细3
猜你喜欢
转载自blog.csdn.net/weixin_59624686/article/details/124565084
今日推荐
周排行