- uname命令 – 显示系统信息
- vmstat命令 – 显示虚拟内存状态
- free命令 – 显示系统内存情况
- stat命令 – 显示文件状态信息
- df命令 – 显示磁盘空间使用情况
- sar命令 – 系统运行状态统计
- top命令 – 实时显示进程动态
- netstat命令 – 显示网络状态
- ifconfig命令 – 显示或设置网络设备
- rm命令 – 移除文件或目录
- mkdir命令 – 创建目录
- rmdir命令 – 删除空目录
- ls命令 – 显示指定工作目录下的内容及属性信息
- touch命令 – 创建文件
- find命令 – 查找和搜索文件
- xargs命令 – 过滤器
- grep命令 – 强大的文本搜索工具
- cat命令 – 在终端设备上显示文件内容
- more命令 – 显示文本文件内容
- less命令 – 分页显示工具
- chmod命令 – 改变文件或目录权限
- pwd命令 – 显示当前路径
- cp命令 – 复制文件或目录
- mv命令 – 移动或改名文件、目录
- cd命令 – 切换目录
- head命令 – 显示文件开头内容
- tail命令 – 查看文件尾部内容
- echo命令 – 输出字符串或提取Shell变量的值
- zip命令 – 压缩文件
- unzip命令 – 解压缩zip文件
- gzip命令 – 压缩和解压文件
- gunzip命令 – 解压文件
- dd命令 – 拷贝文件及转换
linux都是在终端进行命令操作,并且操作基本都是文件操作,因此linux默认每个用户登陆上来之后就会处于自己的家目录中
指令的基本格式:命令名称 [操作选项][操作对象]
linux下文件类型总体有7种:普通文件,目录,管道,套接字,符号连接,块设备,字符设备
普通文件我们通常存储一些数据,目录文件通常存储时目录中有什么文件的文件信息,linux下文件类型不会因为后缀名而区分 uname命令 – 显示系统信息
uname命令 – 显示系统信息
uname命令的英文全称即“Unix name”。
用于显示系统相关信息,比如主机名、内核版本号、硬件架构等。
如果未指定任何选项,其效果相当于执行”uname -s”命令,即显示系统内核的名字。
语法格式: uname [参数]
常用参数:
| -a | 显示系统所有相关信息 |
|---|---|
| -m | 显示计算机硬件架构 |
| -n | 显示主机名称 |
| -r | 显示内核发行版本号 |
| -s | 显示内核名称 |
| -v | 显示内核版本 |
| -p | 显示主机处理器类型 |
| -o | 显示操作系统名称 |
| -i | 显示硬件平台 |
例子:
[dev@bogon ~]$ uname -a Linux bogon 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux [dev@bogon ~]$ uname -m x86_64 [dev@bogon ~]$ uname -n bogon [dev@bogon ~]$ uname -r 3.10.0-514.el7.x86_64
vmstat命令 – 显示虚拟内存状态
vmstat命令 – 显示虚拟内存状态
vmstat命令的含义为显示虚拟内存状态(“Virtual Memory Statistics”),但是它可以报告关于进程、内存、I/O等系统整体运行状态。
语法格式: vmstat [参数]
常用参数:
| -a | 显示活动内页 |
|---|---|
| -f | 显示启动后创建的进程总数 |
| -m | 显示slab信息 |
| -n | 头信息仅显示一次 |
| -s | 以表格方式显示事件计数器和内存状态 |
| -d | 报告磁盘状态 |
| -p | 显示指定的硬盘分区状态 |
| -S | 输出信息的单位 |
例子:
[dev@bogon ~]$ vmstat -a
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free inact active si so bi bo in cs us sy id wa st
1 0 0 1366656 161272 200576 0 0 538 14 214 245 1 3 96 0 0
[dev@bogon ~]$ vmstat -f
2963 forks
[dev@bogon ~]$ vmstat -m
vmstat: your kernel does not support slabinfo or your permissions are insufficient
[dev@bogon ~]$ vmstat -n
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 1365248 1004 274084 0 0 325 9 140 166 1 2 98 0 0
free命令 – 显示系统内存情况
free命令 – 显示系统内存情况
free 命令能够显示系统中物理上的空闲和已用内存,还有交换内存,同时,也能显示被内核使用的缓冲和缓存。这些信息是通过解析文件 /proc/meminfo 而收集到的。
不带任何选项运行 free 命令会显示系统内存,包括空闲、已用、交换、缓冲、缓存和交换的内存总数。
语法格式:free [参数]
常用参数:
| -b | 以Byte显示内存使用情况 |
|---|---|
| -k | 以kb为单位显示内存使用情况 |
| -m | 以mb为单位显示内存使用情况 |
| -g | 以gb为单位显示内存使用情况 |
| -s | 持续显示内存 |
| -t | 显示内存使用总合 |
stat命令 – 显示文件状态信息
stat命令 – 显示文件状态信息
stat命令用来显示文件或文件系统的详细信息
文件的时间属性:
1.最后一次访问时间
2.最后一次修改时间
3.最后一次状态改变时间
语法格式: stat [参数][文件名]
常用参数:
| -L | 支持符号链接 |
|---|---|
| -f | 显示文件系统的信息 |
| -t | 以简洁的方式输出 |
| –help | 显示命令帮助信息 |
| –version | 显示命令版本信息 |
df命令 – 显示磁盘空间使用情况
df命令 – 显示磁盘空间使用情况
df命令的英文全称即“Disk Free”,顾名思义功能是用于显示系统上可使用的磁盘空间。默认显示单位为KB,建议使用“df -h”的参数组合,根据磁盘容量自动变换合适的单位,更利于阅读。
日常普遍用该命令可以查看磁盘被占用了多少空间、还剩多少空间等信息。
语法格式: df [参数] [指定文件]
常用参数:
| -a | 显示所有系统文件 |
|---|---|
| -B | <块大小> 指定显示时的块大小 |
| -h | 以容易阅读的方式显示 |
| -H | 以1000字节为换算单位来显示 |
| -i | 显示索引字节信息 |
| -k | 指定块大小为1KB |
| -l | 只显示本地文件系统 |
| -t | <文件系统类型> 只显示指定类型的文件系统 |
| -T | 输出时显示文件系统类型 |
| – -sync | 在取得磁盘使用信息前,先执行sync命令 |
sar命令 – 系统运行状态统计
sar命令 – 系统运行状态统计
sar命令是Linux下系统运行状态统计工具,它将指定的操作系统状态计数器显示到标准输出设备。
sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。它的特点是可以连续对系统取样,获得大量的取样数据。取样数据和分析的结果都可以存入文件,使用它时消耗的系统资源很小。
语法格式: sar [参数]
常用参数:
| -R | 显示内存状态 |
|---|---|
| -b | 显示I/O速率 |
| -B | 显示换页状态 |
| -d | 显示每个块设备的状态 |
| -i | 状态信息刷新的间隔时间 |
| -u | 显示CPU利用率 |
top命令 – 实时显示进程动态
top命令 – 实时显示进程动态
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,常用于服务端性能分析。
在top命令中按f按可以查看显示的列信息,按对应字母来开启/关闭列,大写字母表示开启,小写字母表示关闭。带*号的是默认列。
语法格式:top [参数]
常用参数:
| -d | 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s |
|---|---|
| -q | 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行 |
| -c | 切换显示模式 |
| -s | 安全模式,将交谈式指令取消, 避免潜在的危机 |
| -i | 不显示任何闲置 (idle) 或无用 (zombie) 的行程 |
| -n | 更新的次数,完成后将会退出 top |
| -b | 批次档模式,搭配 “n” 参数一起使用,可以用来将 top 的结果输出到档案内 |
netstat命令 – 显示网络状态
netstat命令 – 显示网络状态
netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
从整体上看,netstat的输出结果可以分为两个部分:一个是Active Internet connections,称为有源TCP连接,其中”Recv-Q”和”Send-Q”指%0A的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到;另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。
语法格式:netstat [参数]
常用参数:
| -a | 显示所有连线中的Socket |
|---|---|
| -p | 显示正在使用Socket的程序识别码和程序名称 |
| -u | 显示UDP传输协议的连线状况 |
| -i | 显示网络界面信息表单 |
| -n | 直接使用IP地址,不通过域名服务器 |
ifconfig命令 – 显示或设置网络设备
ifconfig命令的英文全称是“network interfaces configuring”,即用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。
语法格式:ifconfig [参数]
常用参数:
| add<地址> | 设置网络设备IPv6的IP地址 |
|---|---|
| del<地址> | 删除网络设备IPv6的IP地址 |
| down | 关闭指定的网络设备 |
| up | 启动指定的网络设备 |
| IP地址 | 指定网络设备的IP地址 |
rm命令 – 移除文件或目录
rm命令 – 移除文件或目录
rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。 rm也是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。
语法格式:rm [参数] [文件]
常用参数:
| -f | 忽略不存在的文件,不会出现警告信息 |
|---|---|
| -i | 删除前会询问用户是否操作 |
| -r/R | 递归删除 |
| -v | 显示指令的详细执行过程 |
–r :递归删除目录中所有文件后,删除目录
例子:
[dev@bogon ~]$ mkdir -p a/b/c [dev@bogon ~]$ ls a Code install third_part 公共 模板 视频 图片 文档 下载 音乐 桌面 [dev@bogon ~]$ rm -rf a [dev@bogon ~]$ ls Code install third_part 公共 模板 视频 图片 文档 下载 音乐 桌面 [dev@bogon ~]$ touch a [dev@bogon ~]$ rm -i a rm:是否删除普通空文件 "a"?Y [dev@bogon ~]$ ls Code install third_part 公共 模板 视频 图片 文档 下载 音乐 桌面 [dev@bogon ~]$ touch a [dev@bogon ~]$ rm -v a 已删除"a"
mkdir命令 – 创建目录
mkdir命令 – 创建目录(新建一个文件夹)
mkdir命令是“make directories”的缩写,用来创建目录。
注意:默认状态下,如果要创建的目录已经存在,则提示已存在,而不会继续创建目录。 所以在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。 mkdir命令还可以同时创建多个目录,是不是很强大呢?
语法格式 :
mkdir [参数] [目录]
常用参数:
| -p | 递归创建多级目录 |
|---|---|
| -m | 建立目录的同时设置目录的权限 |
| -z | 设置安全上下文 |
| -v | 显示目录的创建过程 |
例子:
[dev@bogon ~]$ mkdir -p a/b/c [dev@bogon ~]$ mkdir -m 0664 d [dev@bogon ~]$ ls -l 总用量 0 drwxrwxr-x. 3 dev dev 15 4月 28 14:58 a drwxrwxr-x. 3 dev dev 22 4月 27 09:23 Code drw-rw-r--. 2 dev dev 6 4月 28 14:59 d drwxrwxr-x. 4 dev dev 52 2月 12 2019 install lrwxrwxrwx. 1 dev dev 58 2月 12 2019 third_part -> /home/dev/install/ThirdPartLibForCpp/el7.x86_64/third_part drwxr-xr-x. 2 dev dev 6 2月 12 2019 公共 drwxr-xr-x. 2 dev dev 6 2月 12 2019 模板 drwxr-xr-x. 2 dev dev 6 2月 12 2019 视频 drwxr-xr-x. 2 dev dev 6 2月 12 2019 图片 drwxr-xr-x. 2 dev dev 6 2月 12 2019 文档 drwxr-xr-x. 2 dev dev 6 2月 12 2019 下载 drwxr-xr-x. 2 dev dev 6 2月 12 2019 音乐 drwxr-xr-x. 2 dev dev 6 2月 12 2019 桌面
rmdir命令 – 删除空目录
rmdir命令作用是删除空的目录,英文全称:“remove directory”。
注意:rmdir命令只能删除空目录。当要删除非空目录时,就要使用带有“-R”选项的rm命令。
rmdir命令的“-p”参数可以递归删除指定的多级目录,但是要求每个目录也必须是空目录。
语法格式 : rmdir [参数] [目录名称]
常用参数:
| -p | 用递归的方式删除指定的目录路径中的所有父级目录,非空则报错 |
|---|---|
| – – ignore-fail-on-non-empty | 忽略由于删除非空目录时导致命令出错而产生的错误信息 |
| -v | 显示命令的详细执行过程 |
| – – help | 显示命令的帮助信息 |
| – – version | 显示命令的版本信息 |
ls命令 – 显示指定工作目录下的内容及属性信息
ls命令 – 显示指定工作目录下的内容及属性信息
家目录:
Linux是一个多用户操作系统,可以多个用户在同时在系统上进行不同的操作,容易误删,因此linux给每个用户都会创建一个自己的操作目录—家目录
ls 命令是Linux下最常用的指令之一。ls命令为英文单词 list 的缩写,正如英文单词 list 的意思,其功能是列出指定目录下的内容及其相关属性信息。
默认状态下,ls命令会列出当前目录的内容。而带上参数后,我们可以用ls做更多的事情。作为最基础同时又是使用频率很高的命令,我们很有必要搞清楚ls命令的用法,那么接下来一起看看吧!
语法格式: ls [选项] [文件]
常用参数:
| -a | 显示所有文件及目录 (包括以“.”开头的隐藏文件) |
|---|---|
| -l | 使用长格式列出文件及目录信息 |
| -r | 将文件以相反次序显示(默认依英文字母次序) |
| -t | 根据最后的修改时间排序 |
| -A | 同 -a ,但不列出 “.” (当前目录) 及 “…” (父目录) |
| -S | 根据文件大小排序 |
| -R | 递归列出所有子目录 |
例子:
[dev@bogon ~]$ ls a Code d install third_part 公共 模板 视频 图片 文档 下载 音乐 桌面 [dev@bogon ~]$ ls -a . .bash_history .bashrc .config .esd_auth .lesshst .mozilla third_part .vimrc 公共 图片 音乐 .. .bash_logout .cache .cquery .ICEauthority .LfCache .pki .vim .Xauthority 模板 文档 桌面 a .bash_profile Code d install .local .subversion .VimForCpp .ycm_extra_conf.py 视频 下载 [dev@bogon ~]$ ls -l 总用量 0 drwxrwxr-x. 3 dev dev 15 4月 28 14:58 a drwxrwxr-x. 3 dev dev 22 4月 27 09:23 Code drw-rw-r--. 2 dev dev 6 4月 28 14:59 d drwxrwxr-x. 4 dev dev 52 2月 12 2019 install lrwxrwxrwx. 1 dev dev 58 2月 12 2019 third_part -> /home/dev/install/ThirdPartLibForCpp/el7.x86_64/third_part drwxr-xr-x. 2 dev dev 6 2月 12 2019 公共 drwxr-xr-x. 2 dev dev 6 2月 12 2019 模板 drwxr-xr-x. 2 dev dev 6 2月 12 2019 视频 drwxr-xr-x. 2 dev dev 6 2月 12 2019 图片 drwxr-xr-x. 2 dev dev 6 2月 12 2019 文档 drwxr-xr-x. 2 dev dev 6 2月 12 2019 下载 drwxr-xr-x. 2 dev dev 6 2月 12 2019 音乐 drwxr-xr-x. 2 dev dev 6 2月 12 2019 桌面 [dev@bogon ~]$ ls -r 桌面 音乐 下载 文档 图片 视频 模板 公共 third_part install d Code a
touch命令 – 创建文件
touch命令 – 创建文件
touch命令有两个功能:一是创建新的空文件,二是改变已有文件的时间戳属性。默认会刷新全部的时间属性。
touch命令会根据当前的系统时间更新指定文件的访问时间和修改时间。如果文件不存在,将会创建新的空文件,除非指定了”-c”或”-h”选项。
注意:在修改文件的时间属性的时候,用户必须是文件的属主,或拥有写文件的访问权限。
语法格式:touch [参数] [文件]
常用参数:
| -a | 改变档案的读取时间记录 |
|---|---|
| -m | 改变档案的修改时间记录 |
| -r | 使用参考档的时间记录,与 --file 的效果一样 |
| -c | 不创建新文件 |
| -d | 设定时间与日期,可以使用各种不同的格式 |
| -t | 设定档案的时间记录,格式与 date 命令相同 |
| --no-create | 不创建新文件 |
| --help | 显示帮助信息 |
| --version | 列出版本讯息 |
例子:
[dev@bogon ~]$ touch test{1,2,3}.txt
[dev@bogon ~]$ ls
a Code d install test1.txt test2.txt test3.txt third_part 公共 模板 视频 图片 文档 下载 音乐 桌面
find命令 – 查找和搜索文件
find命令 – 查找和搜索文件
find命令可以根据给定的路径和表达式查找的文件或目录。find参数选项很多,并且支持正则,功能强大。和管道结合使用可以实现复杂的功能,是系统管理者和普通用户必须掌握的命令。
find如不加任何参数,表示查找当前路径下的所有文件和目录,如果服务器负载比较高尽量不要在高峰期使用find命令,find命令模糊搜索还是比较消耗系统资源的。
语法格式: find [参数] [路径] [查找和搜索范围]
常用参数:
| -name | 按名称查找 |
|---|---|
| -size | 按大小查找 |
| -user | 按属性查找 |
| -type | 按类型查找 |
| -iname | 忽略大小写 |
例子:
[dev@bogon ~]$ find /etc -name "*.conf" [dev@bogon ~]$ find /etc -size +1Mxargs命令 – 过滤器
xargs命令 – 过滤器
xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者 stdin 并将其转换成特定命令的命令参数。
xargs也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。xargs的默认命令是 echo,空格是默认定界符。这意味着通过管道传递给 xargs的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代。xargs是构建单行命令的重要组件之一。
语法格式: xargs [参数]
常用参数:
| -n | 多行输出 |
|---|---|
| -d | 自定义一个定界符 |
| -I | 指定一个替换字符串{} |
| -t | 打印出 xargs 执行的命令 |
| -p | 执行每一个命令时弹出确认 |
grep命令 – 强大的文本搜索工具
grep命令 – 强大的文本搜索工具
grep是“global search regular expression and print out the line”的简称,意思是全面搜索正则表达式,并将其打印出来。这个命令可以结合正则表达式使用,它也是linux使用最为广泛的命令。
grep命令的选项用于对搜索过程的补充,而其命令的模式十分灵活,可以是变量、字符串、正则表达式。需要注意的是:一当模式中包含了空格,务必要用双引号将其引起来。
linux系统支持三种形式的grep命令,大儿子就是grep,标准,模仿的代表。二儿子兴趣爱好多-egrep,简称扩展grep命令,其实和grep -E等价,支持基本和扩展的正则表达式。小儿子跑的最快-fgrep,简称快速grep命令,其实和grep -F等价,不支持正则表达式,按照字符串表面意思进行匹配。
语法格式: grep [参数]
常用参数:
| -i | 搜索时,忽略大小写 |
|---|---|
| -c | 只输出匹配行的数量 |
| -l | 只列出符合匹配的文件名,不列出具体的匹配行 |
| -n | 列出所有的匹配行,显示行号 |
| -h | 查询多文件时不显示文件名 |
| -s | 不显示不存在、没有匹配文本的错误信息 |
| -v | 显示不包含匹配文本的所有行 |
| -w | 匹配整词 |
| -x | 匹配整行 |
| -r | 递归搜索 |
| -q | 禁止输出任何结果,已退出状态表示搜索是否成功 |
| -b | 打印匹配行距文件头部的偏移量,以字节为单位 |
| -o | 与-b结合使用,打印匹配的词据文件头部的偏移量,以字节为单位 |
cat命令 – 在终端设备上显示文件内容
Linux系统中有很多个用于查看文件内容的命令,每个命令又都有自己的特点,比如这个cat命令就是用于查看内容较少的纯文本文件的。cat这个命令也很好记,因为cat在英语中是“猫”的意思,小猫咪是不是给您一种娇小、可爱的感觉呢?
注意:当文件内容较大时,文本内容会在屏幕上快速闪动(滚屏),用户往往看不清所显示的具体内容。因此对于较长文件内容可以按Ctrl+S键,停止滚屏;以及Ctrl+Q键可以恢复滚屏;而按Ctrl+C(中断)键则可以终止该命令的执行。或者对于大文件,干脆用more命令吧!
语法格式:cat [参数] [文件]
常用参数:
| -n | 显示行数(空行也编号) |
|---|---|
| -s | 显示行数(多个空行算一个编号) |
| -b | 显示行数(空行不编号) |
| -E | 每行结束处显示$符号 |
| -T | 将TAB字符显示为 ^I符号 |
| -v | 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外 |
| -e | 等价于”-vE”组合 |
| -t | 等价于”-vT”组合 |
| -A | 等价于 -vET组合 |
| –help | 显示帮助信息 |
| –version | 显示版本信息 |
more命令 – 显示文本文件内容
more命令用于将内容较长的文本文件内容(不能在一屏显示完)进行分屏显示,并且支持在显示时定位关键字。而对于内容较少的文本文件内容则推荐使用cat命令查看。
ctrl + f / ctrl + b 进行上下翻页,使用回车按行向下滚动,q退出
语法格式:more [参数] [文件]
常用参数:
| -num | 指定每屏显示的行数 |
|---|---|
| -l | more在通常情况下把 ^L 当作特殊字符, 遇到这个字符就会暂停,-l选项可以阻止这种特性 |
| -f | 计算实际的行数,而非自动换行的行数 |
| -p | 先清除屏幕再显示文本文件的剩余内容 |
| -c | 与-p相似,不滚屏,先显示内容再清除旧内容 |
| -s | 多个空行压缩成一行显示 |
| -u | 禁止下划线 |
| +/pattern | 在每个文档显示前搜寻该字(pattern),然后从该字串之后开始显示 |
| +num | 从第 num 行开始显示 |
命令内部操作:
- Space键:显示文本的下一屏内容
- Enter键:向下n行,需要定义,默认为1行
- 斜线符:接着输入一个模式,可以在文本中寻找下一个相匹配的模式
- H键:显示帮助屏
- B键:显示上一屏内容
- Q键:退出more命令
- Ctrl+F、空格键:向下滚动一屏
- Ctrl+B:返回上一屏
- =: 输出当前的行号
- :f:输出文件名和当前的行号
- V:调用vi编辑器
- !:调用Shell,并执行命令
less命令 – 分页显示工具
浏览文字档案的内容,用less命令显示文件时,PageUp键向上翻页,PageDown键向下翻页,要退出less程序,应按Q键。
less的作用与more十分相似,不同点为less命令允许用户向前或向后浏览文件,而more命令只能向前浏览 。
ctrl + f / ctrl + b 进行上下翻页,上下箭头或者jk上下,q退出
/string 向下查找string字符串,?string向上查找string字符串
语法格式:less [参数] [文件]
常用参数:
| -b | 置缓冲区的大小 |
|---|---|
| -e | 当文件显示结束后,自动离开 |
| -f | 强迫打开特殊文件,例如外围设备代号、目录和二进制文件 |
| -g | 只标志最后搜索的关键词 |
| -i | 忽略搜索时的大小写 |
| -m | 显示类似more命令的百分比 |
| -N | 显示每行的行号 |
| -o | 将less 输出的内容在指定文件中保存起来 |
| -Q | 不使用警告音 |
| -s | 显示连续空行为一行 |
| -S | 在单行显示较长的内容,而不换行显示 |
| -x | 将TAB字符显示为指定个数的空格字符 |
chmod命令 – 改变文件或目录权限
chmod命令的英文原意是“change the permissions mode of a file”,我们简称为“change mode”,意为用来改变文件或目录权限的命令,但是只有文件的属主和超级用户root才能执行这个命令。有两种模式,一种是采用权限字母和操作符表达式;另一种是采用数字。
语法格式: chmod [参数] [文件]
常用参数:
| -c | 若该文件权限确实已经更改,才显示其更改动作 |
|---|---|
| -f | 若该文件权限无法被更改也不显示错误讯息 |
| -v | 显示权限变更的详细资料 |
| -R | 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更) |
pwd命令 – 显示当前路径
pwd命令是“print working directory”中每个单词的首字母缩写,其功能正如所示单词一样,为打印工作目录,即显示当前工作目录的绝对路径。
路劲显示:多层级文件夹之间以 / 作为间隔
[dev@localhost ~]$ pwd /home/dev
当前我们处于/ --根目录下的home目录中的dev目录下,路径中的第一个字符的 / 不是间隔符,而是根目录
Linux下目录结构
swap分区:交换分区–物理内存不够用的时候,作为交换内存使用的,将物理内存中不常用的数据保存到交换分区,腾出内存给新的程序使用。
filesystem分区:文件系统分区–用于实现文件存储的(文件系统分区有多个)
Linux下,磁盘可以有多个分区,但是目录结构只有一个,但是可以给指定的目录(文件夹)挂载分区,即就是给文件夹的存储分配一块磁盘空间
Linux这种ext文件系统中,至少要有一个分区挂在在根目录上。也就是至少要给根目录分配一块空间,因为linux下的目录结构只有一个。
Windows下目录结构
Windows对磁盘进行分区划分,然后给每个分区挂一个目录结构,这个目录结构中的文件数据存储在对应的磁盘区域
路劲的表示分类:
绝对路径:以根目录作为起始的路径(目录结构只有一个,当一个文件的位置从根目录开始表示,则这个路径就是唯一的)
相对路径:以当前所在文件夹作为起始的路劲,就是相对于当前所在位置的路径表示(一个位置会随着所在目录的不同,而路径不同)
在每个目录下有两个特殊的目录:‘.’ ,‘. .’
.:表示当前目录自身,ls和ls .没太大区别
…:表示当前目录的父目录(上一层目录)
linux下以 .(点)开头的文件是隐藏文件
在实际工作中,我们经常会在不同目录之间进行切换,为了防止“迷路”,我们可以使用pwd命令快速查看当前我们所在的目录路径。
语法格式: pwd [参数]
常用参数:
| -L | 显示逻辑路径 |
|---|
cp命令 – 复制文件或目录
cp命令可以理解为英文单词copy的缩写,其功能为复制文件或目录。
cp命令可以将多个文件复制到一个具体的文件名或一个已经存在的目录下,也可以同时复制多个文件到一个指定的目录中。
语法格式:cp [参数] [文件1][文件2]
把文件1拷贝到文件2中
常用参数:
| -f | 若目标文件已存在,则会直接覆盖原文件 |
|---|---|
| -i | 若目标文件已存在,则会询问是否覆盖 |
| -p | 保留源文件或目录的所有属性 |
| -r | 递归复制文件和目录 |
| -d | 当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录 |
| -l | 对源文件建立硬连接,而非复制文件 |
| -s | 对源文件建立符号连接,而非复制文件 |
| -b | 覆盖已存在的文件目标前将目标文件备份 |
| -v | 详细显示cp命令执行的操作过程 |
| -a | 等价于“dpr”选项 |
mv命令 – 移动或改名文件、目录
mv命令是“move”单词的缩写,其功能大致和英文含义一样,可以移动文件或对其改名。
这是一个使用频率超高的文件管理命令,我们需要特别留意它与复制的区别:mv与cp的结果不同。mv命令好像文件“搬家”,文件名称发生改变,但个数并未增加。而cp命令是对文件进行复制操作,文件个数是有增加的。
语法格式:mv [参数][文件1][文件2]
把文件1移动到文件2中
常用参数:
| -i | 若存在同名文件,则向用户询问是否覆盖 |
|---|---|
| -f | 覆盖已有文件时,不进行任何提示 |
| -b | 当文件存在时,覆盖前为其创建一个备份 |
| -u | 当源文件比目标文件新,或者目标文件不存在时,才执行移动此操作 |
cd命令 – 切换目录
cd命令是”change directory”中单词的首字母缩写,其英文释义是改变目录,所以该命令的功能是从当前目录切换到指定目录。
其中目录的路径可分为绝对路径和相对路径。若目录名称省略,则切换至使用者的用户目录(也就是刚登录时所在的目录)。
另外,“~”也表示为用户目录的意思,“.”则是表示目前所在的目录,“…”则表示当前目录位置的上一级目录。
语法格式:cd [参数] [目录名]
常用参数:
| -P | 如果切换的目标目录是一个符号链接,则直接切换到符号链接指向的目标目录 |
|---|---|
| -L | 如果切换的目标目录是一个符号链接,则直接切换到符号链接名所在的目录 |
| – | 仅使用”-“选项时,当前目录将被切换到环境变量”OLDPWD”对应值的目录 |
| ~ | 切换至当前用户目录 |
| … | 切换至当前目录位置的上一级目录 |
head命令 – 显示文件开头内容
head命令以行为单位,取文件的内容,后面不接参数时默认打印前10行。
语法格式:head [参数] [文件]
常用参数:
| -n | 后面接数字,代表显示几行的意思 |
|---|---|
| -c | 指定显示头部内容的字符数 |
| -v | 总是显示文件名的头信息 |
| -q | 不显示文件名的头信息 |
例子:
[dev@localhost ~]$ head -n 2 passwd //显示passwd文件的前两行内容 root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin
tail命令 – 查看文件尾部内容
tail用于显示文件尾部的内容,默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。
语法格式:tail [参数]
常用参数:
| -n | 后面接数字,代表显示几行的意思 |
|---|---|
| -c | 指定显示头部内容的字符数 |
| -f | 一直刷新文件末尾 |
echo命令 – 输出字符串或提取Shell变量的值
echo命令用于在终端设备上输出字符串或变量提取后的值,这是在Linux系统中最常用的几个命令之一,但操作却非常简单。
重定向
功能:改变数据流向,把原本要打印到终端的内容,不在打印,而是写入指定文件
输出重定向分类:
>>:追加重定向
>:输出重定向
输入重定向:
cat < a.txt :cat原本要从键盘(标准输入)读取数据进行打印,但输入重定向后,从a.txt获取内容进行打印
我们正常时这样写的 cat a.txt
[dev@localhost ~]$ ls ./ > a.txt [dev@localhost ~]$ cat a.txt a a.txt Code install passwd third_part 公共 模板 视频 图片 文档 下载 音乐 桌面 [dev@localhost ~]$ echo "nihaoya" >a.txt [dev@localhost ~]$ cat < a.txt nihaoya [dev@localhost ~]$ cat a.txt nihaoya
管道符
功能:连接两个命令,将前边命令的结果不在打印,而是交给后边命令进行处理
需要:打印一个文件的第三行内容
[dev@localhost ~]$ head -n 3 a.txt | tail -n 1 nihaoya
人们一般使用在变量前加上 符 号 的 方 式 提 取 出 变 量 的 值 , 例 如 : 符号的方式提取出变量的值,例如: 符号的方式提取出变量的值,例如:PATH,然后再用echo命令予以输出。或者直接使用echo命令输出一段字符串到屏幕上,起到给用户提示的作用。
语法格式:echo [参数] [字符串]
常用参数:
| -n | 不输出结尾的换行符 |
|---|---|
| -e “a” | 发出警告音 |
| -e “b” | 删除前面的一个字符 |
| -e “c” | 结尾不加换行符 |
| -e “f” | 换行,光标扔停留在原来的坐标位置 |
| -e “n” | 换行,光标移至行首 |
| -e “r” | 光标移至行首,但不换行 |
| -E | 禁止反斜杠转移,与-e参数功能相反 |
| —version | 查看版本信息 |
| –help | 查看帮助信息 |
zip命令 – 压缩文件
zip程序将一个或多个压缩文件与有关文件的信息(名称、路径、日期、上次修改的时间、保护和检查信息以验证文件完整性)一起放入一个压缩存档中。可以使用一个命令将整个目录结构打包到zip存档中。
对于文本文件来说,压缩比为2:1和3:1是常见的。zip只有一种压缩方法(通缩),并且可以在不压缩的情况下存储文件。(如果添加了bzip 2支持,zip也可以使用bzip 2压缩,但这些条目需要一个合理的现代解压缩来解压缩。当选择bzip 2压缩时,它将通货紧缩替换为默认方法。)zip会自动为每个要压缩的文件选择更好的两个文件(通缩或存储,如果选择bzip2,则选择bzip2或Store)。
语法格式:zip [参数] [文件]
常用参数:
| -q | 不显示指令执行过程 |
|---|---|
| -r | 递归处理,将指定目录下的所有文件和子目录一并处理 |
| -z | 替压缩文件加上注释 |
| -v | 显示指令执行过程或显示版本信息 |
| -n<字尾字符串> | 不压缩具有特定字尾字符串的文件 |
unzip命令 – 解压缩zip文件
unzip命令是用于.zip格式文件的解压缩工具 ,unzip命令将列出、测试或从zip格式存档中提取文件,这些文件通常位于MS-DOS系统上。
默认行为(就是没有选项)是从指定的ZIP存档中提取所有的文件到当前目录(及其下面的子目录)。一个配套程序zip(1L)创建ZIP存档;这两个程序都与PKWARE的PKZIP和PKUNZIP为MS-DOS创建的存档文件兼容,但许多情况下,程序选项或默认行为是不同的。
语法格式:unzip [参数] [文件]
常用参数:
| -l | 显示压缩文件内所包含的文件 |
|---|---|
| -v | 执行时显示详细的信息 |
| -c | 将解压缩的结果显示到屏幕上,并对字符做适当的转换 |
| -n | 解压缩时不要覆盖原有的文件 |
| -j | 不处理压缩文件中原有的目录路径 |
gzip命令 – 压缩和解压文件
gzip命令的英文是“GNUzip”,是常用来压缩文件的工具,gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。
gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。
语法格式:gzip [参数]
常用参数:
| -a | 使用ASCII文字模式 |
|---|---|
| -d | 解开压缩文件 |
| -f | 强行压缩文件 |
| -l | 列出压缩文件的相关信息 |
| -c | 把压缩后的文件输出到标准输出设备,不去更动原始文件 |
| -r | 递归处理,将指定目录下的所有文件及子目录一并处理 |
| -q | 不显示警告信息 |
gunzip命令 – 解压文件
gunzip命令用于解压文件,它是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为”.gz”。事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip命令单独完成。
语法格式:gunzip [参数]
常用参数:
| -a或–ascii | 使用ASCII文字模式 |
|---|---|
| -c或–stdout或–to-stdout | 把解压后的文件输出到标准输出设备 |
| -f或-force | 强行解开压缩文件,不理会文件名称或硬连接是否存在以及该文件是否为符号连接 |
| -h或–help | 在线帮助。 |
| -l或–list | 列出压缩文件的相关信息 |
| -L或–license | 显示版本与版权信息 |
| -n或–no-name | 解压缩时,若压缩文件内含有远来的文件名称及时间戳记,则将其忽略不予处理 |
| -N或–name | 解压缩时,若压缩文件内含有原来的文件名称及时间戳记,则将其回存到解开的文件上 |
| -q或–quiet | 不显示警告信息 |
| -r或–recursive | 递归处理,将指定目录下的所有文件及子目录一并处理 |
| -S<压缩字尾字符串>或–suffix<压缩字尾字符串> | 更改压缩字尾字符串 |
| -t或–test | 测试压缩文件是否正确无误 |
| -v或–verbose | 显示指令执行过程 |
| -V或–version | 显示版本信息 |
dd命令 – 拷贝文件及转换
dd命令用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
注意:指定数字的地方若以下列字符结尾则乘以相应的数字:b=512;c=1;k=1024;w=2
语法格式:dd [参数]
常用参数:
| -v | 显示版本信息 |
|---|---|
| -h | 显示帮助信息 |



