1、创建文件命令
- touch
一般格式:touch [选项][文件或目录名]
功能介绍:修改文件或者目录的时间属性,创建文件
常用选项:
| 选项 | 说明 |
|---|---|
| a | 改变档案的读取时间记录 |
| m | 改变档案的修改时间记录 |
| c | 假如目的档案不存在,不会建立新的档案。与–no-create的效果一样 |
| r | 使用参考档的时间记录,与–file的效果一样 |
| d | 设定时间与日期,可以使用各种不同的格式 |
| t | 设定档案的时间记录,格式与date指令相同 |
| –help | 列出指令格式 |
| –version | 列出版本讯息 |
注意:若文件不存在,系统会创建一个新的文件
示例:touch testfile testfile文件已存在查看该文件的时间属性
touch test.txt test.txt在当前工作目录下不存在,将创建一个名为“test”的txt文件
2、修改文件命令
- vi/vim
一般格式:无一般格式
功能介绍:文本编辑器/程序开发工具,内置3种工作模式,分别为命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)
常用选项:用户刚启动vi/vim,便进入了命令模式,此状态下敲击键盘动作会被vim识别成命令,常用的命令选项有:
| 选项 | 说明 |
|---|---|
| i/a/o | 切换到输入模式,以输入字符 |
| x | 删除当前光标所在处的字符 |
| : | 切换到底线命令模式,以在最底一行输入命令 |
输入模式:用户在命令模式按下i/a/o就进入了命令模式,在输入模式中可以按照通用编辑规则对文本进行编辑。
底线命令模式:在命令模式按下:(英文冒号)即可进入底线命令模式。底线命令模式可以输入单个或多个字符的命令,可用的命令非常多,基本的命令选项有:
| 选项 | 说明 |
|---|---|
| q | 退出程序 |
| w | 保存文件 |
注意:命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令
vim工作模式切换流程如下图所示:
示例:vim /etc/sysctl.conf ,打开配置文件
vim text.txt 打开txt文件
3、文件查看命令
- cat
一般格式:cat [选项] [文件路径]
功能介绍:用于查看内容较少的纯文本文件
常用选项:
| 选项 | 说明 |
|---|---|
| -n | 对输出的所有内容,显示行编号 |
| -b | 对非空文件内容,显示行编号 |
| -E | 在每行结束处显示$ |
注意:无
示例:cat -n textfile1 > textfile2 、把textfile1的文档内容加上行号后输入到textfile2文档中
cat /dev/null > /etc/test.txt 清空 /etc/test.txt文档内容
- more
一般格式:more [选项] [文件路径]
功能介绍:查看内容较多的纯文本文件
常用选项:
| 选项 | 说明 |
|---|---|
| -num | 一次显示的行数 |
| -s | 当遇到有连续两行以上的空白行,就代换为一行的空白行 |
| +/pattern | 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示 |
| +num | 从第num行开始显示 |
注意:more命令类似cat,不过会以一页一页的形式显示,更方便使用者逐页阅读,常用操作有查看下一页(空格键)和查看上一页(b键)
示例:more -s testfile 逐页显示testfile文档内容,如有连续两行以上空白行则以一行空白行显示
more +20 text.txt 从第20行起开始显示text文档内容
- tail
一般格式:tail [选项] [文件路径]
功能介绍:查看文件的后N行内容或持续刷新内容
常用选项:
| 选项 | 说明 |
|---|---|
| -f | 循环读取 |
| -v | 显示详细的处理信息 |
| -c<数目> | 显示文件末尾的字节数 |
| -n<行数> | 显示文件的尾部n行内容 |
注意:tail命令默认显示文件最后10行
示例:tail -f notes.log 实时查看文件notes.log的最新信息
tail -n +20 notes.log 显示文件notes.log的内容,从第20行至文章末尾
4、文件查找命令
- grep
一般格式:grep [选项] [范本样式] [文件或目录]
功能介绍:查找文件里符合要求的字符串
常用选项:
| 选项 | 说明 |
|---|---|
| -c | 显示符合范本样式的行数总数 |
| -n | 打印匹配行的内容并显示行号 |
| -v | 显示不包含范本样式的所有行 |
| -i | 忽略大小写 |
注意:若不指定任何文件名称,或是所给予的文件名为-,则grep指令会从标准输入设备读取数据
示例:grep test *file ,在当前目录中,查找后缀有file字样的文件中包含test字符串的文件,并打印出该字符串的行
grep -in moon text.txt,忽略大小写,在text.txt文件中搜寻moon并显示匹配行号
grep -n a$ 123.txt 搜寻以a为行尾的内容,并显示行号
- diff
一般格式:diff [选项] [文件或目录1] [文件或目录2]
功能介绍:比较文件的差异
常用选项:
| 选项 | 说明 |
|---|---|
| -b | 不检查空格字符的不同 |
| -c | 显示全部内容并标注不同之处 |
| -i | 不检查大小写的不同 |
| -r | 当file1和file2是目录时,递归作用到各文件和目录上 |
注意:diff以逐行的方式,比较文本文件的异同处,如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录
示例:diff -I files1 files2 不检查大小写的不同,比较文件files1和files2的差异
- echo
一般格式:echo 字符串
功能介绍:在终端输出字符串或变量提取后的值
常用选项:
| 选项 | 说明 |
|---|---|
| -n | 不换行输出 |
| -e | 出现特殊字符特别加以处理而不会按照一般形式输出 |
注意:无
示例:echo hello world 输出hello world
echo $JAVA_HOME 输出java的环境变量JAVA_HOME的路径



