目录
查找指定文件的位置 find 起始路径 -name “被查找的文件名”
查看文件尾部内容,跟踪文件的最新更改 tail [-f -num] 路径
1、目录结构
树型结构,只有一个根目录 /(顶级目录),所有文件都在它下面
/usr/local/hello.txt (开头/表示根目录,后面/表示层级关系)
Windows 系统可以拥有多个盘符(多个顶级目录)
D:\data\work\hello.txt (\表示层级关系)
2、命令
格式:[命令本身][选项][参数]
展示工作目录下的内容 ls [-a -l -h] [路径]
-a | 全部文件(+隐藏文件) |
-l | 以列表(竖向排列)的形式展示内容,并展示更多信息(4096) |
-h | 表示以易于阅读的形式,列出文件大小,如K、M、G(4096->4.0k)(必须要搭配 -l 使用) |
ls:显示当前目录下的所有文件名称
ls /:显示根目录内容
ls -lh:以人类可读的格式显示当前目录下的所用文件和子目录的大小
目录切换 cd
cd:回到用户的HOME目录
展示当前工作目录 pwd
相对路径
特殊路径符
. | 当前目录 |
.. | 上级目录(切换到上二级目录) |
~ | HOME目录 |
- 当前/home/ipeizheng,要去Desktop目录
cd /home/ipeizheng/Desktop (绝对路径:以根目录/为起点)
cd Desktop(相对路径)
- 当前目录/home/ipeizheng/Desktop,回到/home/ipeizheng
cd (回到home目录)
cd ..(回到上一级目录)
- 切换到home下的test文件夹中的文本文件:~/test/hello.txt
- 切换到上级目录文件夹中的文本文件 :cd ../test/hello.txt
- 切换到HOME内的Desktop目录:cd ~/Desktop
- 切换到当前录下的Desktop目录:cd ./Desktop
- 切换到上二级目录 cd ../..
创建目录 mkdir 路径
-p创建多层目录 mkdir -p love/hello
如果目录已存在,不会自动覆盖该目录
创建文件 touch 文件路径(可以一次性创建多个文件)
查看文件内容 cat 文件路径
翻页查看文件内容 more 文件路径
more /etc/services (空格翻页、q退出查看)
复制文件/文件夹 cp [-r] 原路径 目的路径
-r:复制文件夹
移动文件/文件夹 mv 原路径 目的路径
- 将file.txt移动到directory目录中:mv file.txt directory
- 可以用于重命名文件或目录
删除文件/文件夹 rm [-f] 文件1 文件2 ...
- -f:强制删除(root用户才会弹出提示)
演示:su -root输入密码123456临时切换到root用户->强制删除->exit退出
Rm -rf/ 或者 rm -rf/* 很危险!
- 支持通配符 :*全部、test*以test开头的、*test以test结尾的、*test*包含test
查找命令的程序文件的位置 which 命令
- 查找 ls 命令的完整路径:which ls
- 查找系统中是否存在名为 python 的可执行文件:which python
- `which find` 输出为空,表示系统中不存在'find'命令
查找指定文件的位置 find 起始路径 -name “被查找的文件名”
- find / -name “test”
- 支持通配符模糊查询
- 按文件大小查找 find 起始路径 -size +|-n[kMG]
查找小于10KB的文件:find / -size -10k
- 在根目录及其子目录中查找 :`find / -size +1G -name "*.mp4"`
过滤 grep [-n] 关键字 文件路径 -
- -n 结果中显示匹配的行号
- 过滤ipeizheng关键字 grep “ipeizheng” hello.txt
- 过滤name关键字并显示行号 grep -n “name” hello.txt
- grep 命令可以通过正则表达式进行模式匹配
- 在文件中查找不区分大小写的"pattern" 的字数:`grep -i "pattern" filename | wc -w`
数量统计 wc [-c -m -l -w] 文件路径
-c | bytes数量 |
-m | 字符 |
-l | 行 |
-w | 单词 |
统计文件行数 :wc -l file.txt
管道符 |
- 将左边的命令结果作为右边命令的输入
- cat hello.txt | grep “hello”
- 过滤ls结果:ls | grep Desktop
- 只找路径带有/user/li64的结果:find / -name “test”|grep “user/li64”
- 嵌套使用:cat b.txt | grep apple | grep i
- 统计文件中带有apple关键字的有几行:
cat b.txt | grep apple | wc -l 或 grep "apple" b.txt | wc -l
在命令行输出指定内容 echo 内容
- echo "hello world"
- 输出当前工作路径:echo ‘pwd’
重定向符
将左侧的命令写入到右侧指定的文件中
- >> 追加写
Echo “hello world” >> hello.txt
- > 覆盖写
- 我当前的工作目录是:‘具体的工作目录路径’,并写进work.txtx文件
echo “我当前的工作目录是:’pwd’” > work.txt
查看文件尾部内容,跟踪文件的最新更改 tail [-f -num] 路径
-f | 持续跟踪 |
-num | 查看尾部几行(默认10行) |
- 输出hello并追加到work.txt文件中,通过tail命令持续跟踪文件内容更改
echo “hello” >>work.txt
tail -f work.txt
- 显示当前目录文件 b.txt 的最后5行
tail -5 example.log
- 可以实时监视文件的变化
基于文本界面的文本编辑器vim
- 不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性
- vim 文件路径
如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
如果文件路径表示的文件存在,那么此命令用于编辑已有文件
- 进入命令模式窗口
①vim hello.txt 编辑新文件hello.txt ->进入命令模式
② i :输入模式->输入:you and me
③esc:退回命令模式
④:wq:保存文件并退出
- 命令模式快捷键
- 命令底线模式快捷键
查看命令和帮助手册 -help
列出ls命令的帮助文档:ls -help
查看命令的详细手册 man
Man ls
Man ls > ls-man.txt