文章目录

  • 文件目录管理
  • 文件内容查看
  • 文件内容查询


文件目录管理

1、绝对路径、相对路径

绝对路径:全称,都是以 / 开头的

相对路径:根据当前目录确定

cd :切换目录命令

cd . : 当前目录

cd . . : 返回上一级目录

2、pwd 显示当前用户所在的目录!

3、mkdir 创建目录,-p 递归创建文件夹

4、rmdir 删除目录,-p 递归删除文件夹

rmdir 仅能删除空的目录,如果下面存在文件,需要先删除文件,递归删除多个目录参数 -p 即可。

5、touch创建空文件

举例:touch aaa.txt (touch 后面也可以跟路径,如:touch /test/aaa.txt)

创建多个文件 touch a.txt b.txt

6、cp(复制文件或者目录)

cp 原来的地方 新的地方 !(复制到当前文件夹(此时已在当前文件夹)使用 cp /file ./ ./代表当前文件夹

如果复制一样的文件,会出现提示,y表示可以覆盖,n表示不可以覆盖。

如何查看centos文件夹下的其他目录和文件 centos查看文件夹内容_服务器


cp命令主要参数

-d:若文件为链接文件,则复制链接文件属性而非文件本身

-f:强制复制,若目标文件存在且无法开启,删除后再次尝试

-i:覆盖前询问

-l:创建硬链接

-p:复制文件并复制其所有属性

-r:递归复制,用于目录复制

cp -r /home/user1  /tmp #此处省略 user1,默认为同名复制

-s:创建符号链接(软链接、快捷方式)

-a:相当于-dpr 同时使用

-u:源文件更新时才复制

7、rm(移除文件或者目录!)

-f 强制删除!忽略不存在的文件,不会出现警告.

-r 递归删除目录!

-i 互动,删除询问是否删除

-v:显示步骤

rm  -rf  /  #系统中所有文件就被删除了,删库跑路?

8、mv 移动文件或者目录!重命名文件

mv 命令中根据第二个参数的不同(文件或者目录),mv 命令将目标文件重命名或移至新的目录中。当第二个参数类型是文件时,是重命名。当第二个参数是已经存在的目录名时,源文件或目录参数可以有多个,mv 命令将各参数制定的源文件均移至目标目录中。在跨文件系统移动文件时,mv 先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。

-f 强制

-u 只替换已经更新过的文件(用的比较少)

  • mv *.txt testDir 当前目录下所有以txt结尾文件移动到子目录

9、ls 命令 列出当前目录下的文件和目录信息

  • 常见参数

-a:列出所有文件,包括隐藏文件

-A:列出除了 . 和 … 之外的所有文件

-l:列出详细信息

-h:以合适的单位换算大小,配合 l 使用

-t:按照时间进行排序

-S:按照文件大小排序

文件内容查看

linux 系统中使用以下命令来查看文件的内容:

10、cat 由第一行开始显示文件内容

  • 常用选项
  • -n : 显示行号(包括空行)
  • -b : 显示行号(不包括空行)
  • -s : 自动合并连续两行以上的空白行为一行
  • -E : 在每行结尾上加上$ 符号
  • cat file1 file2 叠加显示两个文件的内容
  • cat file | more 管道符会先执行|左边的命令,然后将结果再代入到后面的命令
  • 使用cat创建文件:
  • cat > file1 << EOF
  • 追加文件内容:
  • cat >> file1 <<EOF
  • 合并文件
  • cat file1 file2 > file3
    将文件 1 和文件 2 内容合并写入新创建文件 3
  • cat file1 file2 >> file3

将文件 1 和文件 2 内容追加到已存在的文件 3 后面

  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写
  • nl 显示的时候,顺道输出行号!

11、more 一页一页的显示文件内容

空格代表翻页,enter表示向下看一行(:f 看行号)

  • 常用选项
  • +n : 从第n行开始显示
  • -n : 定义屏幕的大小为n行
  • +/pattern :在每个文件显示前搜索字符串 pattern,然后从该字符串的前两 行之后开始显示
  • -c:从顶部清屏然后显示
  • -d:提示相关信息
  • -p:通过清除窗口而不是滚屏来对文件进行换页(与-c 类似)
  • -s:连续多个空行显示为一条空行
  • -u:文件中的下划线去掉
  • 空格键:向下滚动一屏
  • Ctrl+F:向下滚动一屏
  • Ctrl+B:返回上一屏
  • =:输出当前行号
  • :f :输出文件名和当前行号
  • q:退出 more

12、less查看文件

  • less 与 more 类似,但是比more 更好的是,他可以往前翻页!
    空格代表翻页,上下键代表反动页面!END表示结束,然后按q , 即可退出。查找字符串 :
    向上查询使用 ? 要查询的字符串
    向下查询使用 / 要查询的字符串
    n继续搜寻下一个,N是向上搜索!
  • 常用选项
  • -b:设置缓冲区大小
  • -e:文件显示结束自动退出
  • -f:强迫打开特殊文件
  • -g:只标志最后搜索的关键词
  • -i:忽略搜索的大小写
  • -m:显示类似 more 命令的百分比
  • -N:显示行号
  • -o filename:将 less 输出的内容保存至指定文件
  • -s:显示连续空行为一行
  • -S:行过长是舍弃超出部分
  • 常用功能
  • /string : 向下搜索字符串 string
  • ?string :向上搜索字符串 string
  • n:重复上一个搜索结果
  • N:反向重复前一个搜索结果
  • b:向前翻整页
  • d:向后翻半页
  • q:退出
  • u:向前翻半页
  • y:向前翻一行
  • 空格:滚动一页
  • 回车:滚动一行
  • page up:向上翻整页
  • page down:向下翻整页

总结more与less:less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

13 、head 只看头几行( -n 表示要看 n 行)

  • head -n 3 file 显示前三行
  • head -n -3 file 显示除了最后三行之外的内容

14 、tail 只看尾巴几行( -n 表示要看 n 行)

  • head -n 3 file 显示最后三行
  • head -n +3 file 显示除了前三行之外的内容

你可以使用man 来查看各个命令的使用文档,如:man cp。

网络配置目录:cd / etc / sysconfig / network-script (CentOS7)

ifconfig 命令查看网络配置 cenos7 目前为 ip addr

  • Ctrl + C 表示“结束进程“

文件内容查询

grep 家族,grep 在文本中查找指定的字符串所在的行

常用选项

  • -E:开启扩展的正则表达式
  • -i:忽略大小写
  • -v:打印没有匹配的行,匹配的不打印
  • -n:显示行号
  • -w:匹配整个单词,不能是单词的某一部分
  • -c:显示匹配的行数,不显示匹配到的内容
  • -o:只显示匹配到的字符串
  • -A n:显示匹配到的字符串所在的行及其 n 行
  • -B n:显示匹配到的字符串所在的行及其 n 行
  • -C n:显示匹配到的字符串所在的行及其前后各 n 行

匹配模式( 正则 )

  • 直接输入字符串本身
  • 匹配字符
  • . :任意一个字符
  • [abc]:a、b、c 中的任意一个
  • [a-zA-Z] :大小写字母中的一个
  • [^123] :除了 1、2、3 之外的所有字符中的一个
  • 匹配次数
  • *:前面的字符 0 次或多次
  • ?:前面的字符 0 次或 1 次
  • {m,n}:前面的字符至少 m 次,至多 n 次
  • 匹配位置
  • ^:锚定行首
  • $:锚定行尾
  • ^$可以匹配空白行
  • \<:单词的词首
    \< like 将匹配 likeme,而不匹配 alike
  • >\:单词的词尾
    like \>匹配 alike,不匹配 liker
  • 实例
  • grep abc /etc/passwd 普通查找
  • grep abc /etc/passwd /etc/shadow 在多个文件中查找
  • grep -n abc file 查找指定字符串并显示匹配行的行号
  • grep -l abc file1 file2 file3 列出包含指定字符串的文件的文件名
  • grep -v abc file1 显示不匹配的行
  • grep ^root /etc/passwd 显示匹配指定行首的行
    显示注释行以及行号
  • grep abc$ 列出文件中所有以abc 结尾的行
  • grep -r root /etc/ 递归查找目录下所有包含字符串的文件的所在行和文件名