Linux的目录结构
目录结构
Linux的目录结构是一个树型结构
Windows系统可以拥有多个盘符
Linux没有盘符的概念,只有一个根目录/,所有文件都在它下面
Linux路径的描述方式
- 在Linux系统中,路径之间的层级关系,使用
:/来表示 - Windows系统中,路径之间的层级关系,使用
:来表示
Linux命令入门
什么是命令、命令行
- 命令行:即Linux终端(terminal),是一种命令提示符。以纯“字符”的形式操作系统,可以使用各种字符化命令对系统发出操作指令
- 命令:即Linux程序。一个命令就是一个Linux的程序。命令没有图形化页面,可以在命令行(终端中)提供字符化的反馈
Linux命令基础格式
无论什么命令,用于什么用途,在Linux中,命令有其通用的格式:
command [-options] [parameter]
- command:命令本身
- -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
- parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等
ls命令入门
ls [-a -l -h] [Linux路径]
- -a -l -h是可选选项
- Linux路径是此命令可选的参数
当不适用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容
Linux系统的命令行终端,在启动的时候,默认会加载:
- 当前登录用户的HOME目录作为当前工作目录,所以ls命令列出的是HOME目录的内容
- HOME目录:每个Linux操作用户在Linux系统的个人账户目录,路径在:/home/用户名
ls命令参数和选项
ls命令的参数
ls [-a -l -h] [Linux路径]
- -a选项,表示:all的意思,即列出全部文件(包含隐藏的文件/文件夹)
- -l选项,表示:以列表(竖向排列)的形式展示内容,并展示更多信息
- -h选项,需要和-l选项搭配使用,以更加人性化的方式显示文件的大小单位
ls命令的组合使用
-
ls -l -a -
ls -la -
ls -al
目录切换相关命令
cd命令
cd切换工作目录
当Linux终端(命令行)打开的时候,会默认以用户的HOME目录作为当前的工作目录
我们可以通过cd命令,更改当前所在的工作目录
cd命令来自英文:change directory
语法:cd [Linux路径]
- cd命令无需选项,只有参数,表示切换到哪个目录下
- cd命令直接执行,不写参数,表示回到HOME目录
pwd命令
pwd查看当前工作目录
通过ls验证当前的工作目录,其实不恰当
通过pwd命令,查看当前所在的工作目录
pwd命令来自:print work directory
相对路径、绝对路径和特殊路径
绝对路径:以根目录为起点,描述路径的一种写法,路径描述以/开头
相对路径:以当前目录为起点,描述路径的一种写法,路径描述无需以/开头
特殊路径符
- . 表示当前目录,比如cd ./Desktop 表示切换到当前目录下的Desktop目录内,和cd Dsektop效果一致
- .. 表示上一级
- ~ 表示HOME目录
mkdir命令
通过mkdir命令可以创建新的目录(文件夹)
mkdir来自英文:make directory
语法:
mkdir [-p] Linux路径
- 参数必填,表示Linux路径,即要创建的文件夹路径,相对路径或绝对路径均可
- -p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级目录
创建文件命令
touch创建文件
可以通过touch命令创建文件
语法:
touch Linux路径
- touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可使用
cat命令 查看文件内容
语法:
cat Linux路径
- cat同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径都可以使用
more命令 查看文件内容(可翻页)
more命令同样可以查看文件内容,同cat不同的是:
- cat是直接将内容全部显示出来
- more支持翻页,如果文件内容过多,可以一页页的展示
语法:
more Linux路径
- 同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用
Linux系统内置有一个文件,路径为:/etc/services,可以使用more命令查看
more/etc/services
- 在查看的过程中,通过空格翻页
- 通过q退出查看
cp 复制文件/文件夹
语法:
cp [-r] 参数1 参数2
- -r选项,可选,用于复制文件夹使用,表示递归
- 参数1,Linux路径,表示被复制的文件或文件夹
- 参数2,Linux路径,表示要复制去的地方
mv
mv命令可以用于移动文件/文件夹
语法:
mv 参数1 参数2
- 参数1,Linux路径,表示被移动的文件或文件夹
- 参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在
rm命令
rm命令可用于删除文件、文件夹
语法:
rm [-r -f] 参数1 参数2 ...参数n
-
同cp命令一样,-r选项用于删除文件夹
-
-f表示force,强制删除(不会弹出提示确认信息)
- 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
- 所以一般普通用户用不到-f选项
-
参数1、参数2、.....、参数N表示要删除的文件或文件夹路径,按照空格隔开
通配符
rm命令支持通配符*,用来做模糊匹配
-
符号*表示通配符,即匹配任意内容(包含空)
- test*,表示匹配任何以test开头的内容
- *test,表示匹配任何以test结尾的内容
- test,表示任何包含test的内容
查找命令
which 查找命令的程序文件
语法:
which 要查找的命令
find 查找指定文件
按文件名查找文件
搜索指定的文件
同样,Linux系统中,我们可以通过find命令去搜索指定的文件
语法:
find 起始路径 -name “被查找的文件名”
按文件大小查找文件
语法:
find 起始路径 -size +|-n[kMG]
- +、-表示大于和小于
- n表示大小数字
- kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB
过滤文件、统计数量
grep
从文件中通过关键字过滤文件行
语法:
grep [-n] 关键字 文件路径
- 选项-n,可选,表示结果中显示匹配的行的行号
- 参数,关键字,必填,表示过滤的关键字,带有空格或其他符号,建议使用“”将关键字包围起来
- 参数,文件路径,必填,表示要过滤内容的文件路径,
可以作为内容输入端口
wc
文件内容的统计,统计行数、单词数量
语法:
wc [-c -m -l -w] 文件路径
- -c,统计bytes数量
- -m,统计字符数量
- -l,统计行数
- -w,统计单词数量
- 文件路径,被统计的文件,可作为内容输入
|管道符
管道符的含义:将管道符左边命令的结果,作为右边命令的输入
echo、反引号、tail、重定向
echo
使用echo命令在命令行输出指定内容
语法:
echo 输出内容
- 无需选项,只有一个参数,表示要输出的内容,复杂内容可以用“”包围
反引号`
被反引号包围的内容,会被作为命令执行,而不是字符
重定向符
-
,将左侧命令的结果,覆盖写入到符号右侧指定的文件中
-
,将左侧命令的结果,追加写入到符号右侧指定文件中
tail 查看文件尾部内容,跟踪文件更改
语法:
tail [-f -num] Linux路径
- 参数,Linux路径,表示被跟踪的文件路径
- 选项,-f,表示持续跟踪
- 选项,-num,表示,查看尾部多少行,不填默认10行