一、Linux的目录结构及用途
- /bin:存放最常用的命令,如
ls
、cat
等,所有用户都可以执行的命令。 - /boot:包含启动Linux系统所需的核心文件,如内核文件和引导加载程序。
- /dev:设备文件目录,包含系统中的所有设备,如硬盘、光驱等。
- /etc:系统配置文件所在目录,包含各种系统级的配置文件。
- /home:用户的主目录,每个用户在此处有独立的子目录。
- /lib:系统库文件目录,包含系统运行所需的共享库文件。
- /media:挂载点目录,用于挂载可移动媒体如光盘。
- /mnt:临时挂载文件系统的挂载点。
- /opt:可选应用软件包的安装目录。
- /root:超级用户(root)的主目录。
- /sbin:系统管理员使用的管理程序,如
ifconfig
、mount
等。 - /tmp:临时文件目录,系统重启时内容会被清空。
- /usr:包含绝大多数的用户工具和应用程序,分为多个子目录如
/usr/bin
、/usr/lib
等。 - /var:变量文件——内容不断变化的文件,如日志文件、邮件等。
二、查看当前所在路径
三、切换路径
四、查看当前目录下的文件
1、ls 选项 参数
常用:-l,-a
-
-l:以长格式显示文件信息,包括权限、所有者、大小和修改时间等。例如,使用
ls -l
可以查看文件的详细信息,如文件类型、权限、链接数、所有者、组、大小和最后修改时间。 -
-a:显示所有文件,包括隐藏文件(以点开头的文件名)。通常,隐藏文件在普通
ls
命令中不会显示,而使用-a
选项可以将其列出。 -
-h:以人类可读的格式显示文件大小,例如使用KB、MB等单位。这使得文件大小的显示更加直观。
-
-r:以相反的顺序列出文件和目录。默认情况下,
ls
按名称升序排列,使用-r
可以反转这个顺序。 -
-t:按照修改时间排序,最新修改的文件和目录排在前面。这对于查找最近修改的文件非常有用。
-
-R:递归地列出当前目录及其子目录中的文件和目录。这在需要查看整个目录树结构时特别有用。
-
-F:在每个文件名后附加一个字符来指示文件类型,例如
/
表示目录,*
表示可执行文件。这有助于快速识别文件类型。 -
--color:使用颜色显示不同类型的文件,增强可读性。这使得目录列表更加直观,便于区分不同类型的文件。
1.1 直接使用
1.2 ls -l 和下面的 ll 一样
2、ll :是字母的 ll ,更加全面,显示了文件大小,变成日期
五、创建目录
mkdir 选项 参数
1. -p:递归创建目录,即如果父目录不存在,会自动创建
2. -v:详细模式,显示命令执行过程中的详细信息
可以看到多了666目录
六、删除目录
rmdir [-p] 参数
1、直接删除,如果目录不为空,会导致删除失败
2、使用 -p ,递归删除的意思,从后面的目录删到第一个主目录
七、创建文件
touch 选项 文件名
选项
-
-a:仅更改文件的访问时间。
-
-c:不创建任何文件。
-
-d time:使用指定的日期和时间,而不是当前时间。
-
-m:仅更改文件的修改时间。
-
-r file:使用参考文件的时间戳。
-
-t time:使用[[CC]YY]MMDDhhmm[.ss]格式指定时间(例如,
9912312359.59
表示1999年12月31日23时59分59秒)。
创建111文件
八、删除目录、文件 —— 加强版
要谨慎使用,因为删除是一整个目录
rm 选项 目录(文件)
选项
-
-f (force)
- 说明:强制删除文件或目录,即使它们是只读的或不存在。使用此选项时,不会显示错误信息,也不会提示确认。
- 示例:
rm -f file.txt
将强制删除名为file.txt的文件,即使它是只读的。
-
-i (interactive)
- 说明:交互式删除文件,在每个文件被删除之前,会提示用户确认是否删除。
- 示例:
rm -i file1.txt
将在删除file1.txt之前询问用户是否确认删除。
-
-r 或 -R (recursive)
- 说明:递归删除目录及其内容。用于删除非空目录。
- 示例:
rm -r mydir/
将递归删除名为mydir的目录及其所有内容。
-
-v (verbose)
- 说明:详细模式,显示删除过程中的详细信息,包括每个被删除的文件或目录名。
- 示例:
rm -v file1.txt
将显示删除file1.txt文件的名字。
-
-d (directory)
- 说明:仅删除空目录,不删除包含文件或子目录的目录。
- 示例:
rm -d emptydir/
将删除名为emptydir的空目录。
删除目录需要加 -r ,如果是文件可以直接删除
删除文件
九、查看文件内容
cat 选项 文件名
选项
常用:-n,-b,-s,-E
-
-A:展示所有文件内容,等同于
-vET
。 -
-b:显示行号,但只对非空行进行编号。
-
-e:等同于
-vE
,显示非打印字符和行尾的$符号。 -
-E:显示行尾的$符号。
-
-n:为所有输出的行编号,从1开始。
-
-s:压缩连续的空行,只显示一个空行。
-
-t:等同于
-vT
,显示制表符。 -
-T:将Tab字符显示为^I。
-
-u:忽略输入文件。
-
-v:显示非打印字符。
案例:查看at.txt的内容
十、分页显示文件内容 —— 往下
可以使用cat,不使用这个
more 选项 文件名
选项
-
+n:从第n行开始显示文件内容。
-
-d:在提示符下显示帮助信息。
-
-c:清除屏幕而不是滚动。
-
-p:不滚动屏幕,而是清屏后显示文本。
-
-s:压缩连续的空行为一个空行。
-
-u:禁止下划线(underline)字符。
-
+/pattern:从匹配模式的第一行开始显示。
-
-number:设置每屏显示的行数为number。
-
b:向后翻页。
-
f:向前翻页。
-
h:显示帮助信息。
-
q:退出more命令。
-
Enter(回车):向下滚动一行。
-
space(空格):向下滚动一屏。
十一、分页显示文件内容 —— 支持上下
可以使用cat,不使用这个
less 选项 文件名
选项
-
-N:显示每行的行号。
-
-S:单行显示长行,不换行。
-
-X:禁用终端清屏功能,退出时恢复屏幕内容。
-
-F:进入“follow mode”,类似于
tail -f
,实时跟踪文件更新。 -
-o file:将输出写入指定文件。
-
-e:退出时关闭所有打开的文件描述符。
-
-I:搜索时忽略大小写。
-
-M:显示带有ANSI颜色转义序列的长行。
-
-R:原始控制字符显示模式,不解释ANSI颜色转义序列。
-
-s n:设置每屏显示的行数为n。
-
-P pattern:高亮显示匹配模式的字符串。
-
-A:显示所有文件内容,等同于
-vET
。 -
-b n:设置缓冲区大小为n千字节。
-
-c:清除屏幕而不是滚动。
-
-d:在提示符下显示帮助信息。
-
-E:显示行尾的$符号。
-
-G:不使用hunk算法优化大文件的搜索速度。
-
-H:显示匹配项的高亮背景。
-
-L:禁止自动换行。
-
-N:显示每行的行号。
-
-O file:将输出写入指定文件,并覆盖原有内容。
-
-Q:不警告文件名中的控制字符。
-
-S:单行显示长行,不换行。
-
-U:禁用下划线(underline)字符。
-
-X:禁用终端清屏功能,退出时恢复屏幕内容。
-
-?:显示简短的帮助信息。
十二、显示前n行内容
head 选项 文件名
选项
-
-n:显示文件的前n行。
-
-c:显示文件的前n个字节。
-
-q:不显示文件名作为标题。
-
-v:显示文件名。
十三、统计文件内容
wc 选项 文件名
选项
-
-l:只显示行数。
-
-w:只显示单词数。
-
-c:只显示字节数。
-
-m:只显示字符数。
-
-L:显示最长的一行的字符数
统计字节数
统计行数
十四、文件、目录复制粘贴
如果粘贴的文件或者目录不存在,会自动创建
cp 选项 原文件 /目录 目录文件/ 目录
选项
-
-a:归档模式,等同于
-dR --preserve=all
。 -
-d:保留链接。
-
-f:强制覆盖目标文件而不提示。
-
-i:覆盖前提示用户确认。
-
-l:创建硬链接而非复制文件。
-
-p:保留文件属性(如修改时间、访问权限等)。
-
-r:递归复制目录及其内容。
-
-s:创建符号链接而非复制文件。
-
-u:仅当源文件比目标文件新或目标文件不存在时才复制。
-
-v:显示详细的操作过程。
复制文件内容
复制目录
可以看到dir目录的所有文件或者目录都被复制过来了
十五、移动文件、目录
如果移动的文件或者目录不存在,会错误
mv 选项 文件/目录 目录文件/ 目录
mv:第一个功能是重命名文件,如果文件存在,而且名相同,会被覆盖
第二个功能是移动
选项
-
-b:在覆盖目标文件之前,为其创建一个备份。
-
-f:强制移动文件,不提示用户确认。
-
-i:在覆盖目标文件之前,提示用户确认。
-
-n:不覆盖任何已存在的目标文件。
-
-u:仅当源文件比目标文件新或目标文件不存在时才移动。
-
-v:显示详细的操作过程。
移动a.txt b.txt 文件 和 dir 目录到 mvdir
十六、文件压缩与解压(一)
1、压缩
gzip 选项 文件名
选项
-
-c:将输出写到标准输出,不删除原始文件。
-
-d:解压缩文件。
-
-f:强制覆盖输出文件而不提示。
-
-h:显示帮助信息。
-
-k:保留原始文件。
-
-l:列出压缩文件的信息。
-
-n:不压缩具有特定后缀的文件(默认为
.gz
)。 -
-N:保存原始文件名和时间戳。
-
-q:安静模式,不显示警告和错误信息。
-
-r:递归地查找指定目录下的所有文件并压缩它们。
-
-t:测试压缩文件的完整性。
-
-v:详细模式,显示压缩或解压缩的过程。
-
--best:使用最佳压缩比(等同于
-9
)。 -
--fast:使用最快的压缩速度(等同于
-1
)。
压缩111文件
2、解压
gunzip 选项 压缩包
选项
-
-c:将输出写到标准输出,不删除原始文件。
-
-f:强制解压缩文件而不提示。
-
-k:保留原始文件。
-
-n:不覆盖输出文件。
-
-N:保存原始文件名和时间戳。
-
-q:安静模式,不显示警告和错误信息。
-
-r:递归地查找指定目录下的所有文件并解压缩它们。
-
-t:测试压缩文件的完整性。
-
-v:详细模式,显示解压缩的过程。
解压111
十七、文件压缩与解压(二)
1、压缩
zip 选项 压缩名 要压缩的文件
选项
-
-0:存储模式,仅存储文件而不进行压缩。
-
-1:最快压缩速度(但压缩率较低)。
-
-9:最佳压缩速度(但压缩率较高)。
-
-A:调整可执行文件的自动解压缩。
-
-b:为压缩文件添加注释。
-
-c:替换现有文件而不提示。
-
-d:从压缩文件中删除指定文件。
-
-D:不创建目录条目。
-
-e:加密压缩文件,提示输入密码。
-
-E:不创建任何目录条目,只保存文件名。
-
-f:刷新压缩文件,更新已有文件。
-
-F:修复已损坏的压缩文件。
-
-g:设置文件的全局注释。
-
-h:显示帮助信息。
-
-i:包括指定文件或目录。
-
-j:不记录目录路径,只保存文件名。
-
-J:删除压缩文件中的绝对路径信息。
-
-k:保留VMS操作系统的文件版本信息。
-
-l:转换LF到CR LF行结束符。
-
-L:将CR LF行结束符转换为LF。
-
-m:移动文件到压缩文件后删除原文件。
-
-n:不压缩具有特定后缀的文件(默认为
.zip
)。 -
-o:覆盖现有文件而不提示。
-
-q:安静模式,不显示警告和错误信息。
-
-r:递归地查找指定目录下的所有文件并压缩它们。
-
-s:包含系统和隐藏文件。
-
-T:测试压缩文件的完整性。
-
-u:更新现有文件。
-
-v:详细模式,显示压缩的过程。
-
-w:在压缩文件中存储文件的完整路径。
-
-x:排除指定文件或目录。
-
-y:直接保存符号链接,而非链接指向的文件。
-
-z:添加注释。
压缩111,压缩包名为ddd
可以看的原文件还存在,多出了ddd的压缩包,跟上面(一)的对比,一个压缩原文件,一个另存
2、解压
解压ddd.zip,但是已经存在111文件了,先把111删除
ddd.zip 里面放着111文件
十八、打包
tar 选项 包名 文件/目录
tar命令不是压缩命令,因为它打包之后的文件比原来的文件大小相同,可以理解为是一个归类包
选项
-c
: 创建一个新的归档文件。-v
: 显示详细信息(可选)。-f
: 指定归档文件的名称。-x
: 从归档文件中提取文件。-v
: 显示详细信息(可选)。-f
: 指定归档文件的名称。-t
: 列出归档文件的内容。-v
: 显示详细信息(可选)。-f
: 指定归档文件的名称。
1、创建tar包
文件内容非常大,需要等
2、查看tar包内容
3、打包后压缩
可以看到usrbin1.tar.gzip