Linux常用命令
ls-查看文件信息(list)
相当于Windows下的dir命令
格式:ls [参数] 目录或文件
| 参数 | 含义 | 
|---|---|
| -a | 显示指定目录下所有子目录与文件,包括隐藏文件 | 
| -l | 以长格式显示文件的详细信息 | 
注:列出文件的信息说明:

第一位代表文件类型,”-“表示常规文件,”d”表示文件夹,”c”表示字符设备文件,”b”表示块设备文件,”s”表示管道文件,”l”表示链接文件。
第二位代表存储权限,从左到右,三个为一组。分别代表拥有着,所属组,其他三个的存储执行权限,r代表读(read),w代表写(write),x代表执行,-代表不可读不可写不可执行,在三个权限中,r可用4表示,w用2表示,x用1表示,-用0表示。因此要说明一个文件的可读写执行情况,直接用相应的数字相加即可,比如-wx就用3表示,5就代表r-x(实际上就是八进制的一个数)。方便文件的存储权限修改。
cd-切换工作目录
工作目录:当前操作所在的目录,可用pwd查看当前目录的绝对路径
cd /:回到根目录
cd ..:回到上级目录
cd:回到当前用户主目录
cd -:回到刚才所在目录
mkdir-新建目录
格式:mkdir [参数] 目录名
cat-查看文件内容
格式:cat [参数] 文件名
grep-指定文件中搜索指定字符内容
格式:grep [参数] 文件名
| 参数 | 含义 | 
|---|---|
| -v | 显示不包含匹配文本的所有行 | 
| -n | 显示匹配行及行号 | 
常用的格式为:-nrs
find-查找文件命令
格式:find [路径] [参数]
| 参数 | 含义 | 
|---|---|
| -name  | 
指定搜索的文件名,输出搜索结果 | 
| -user  | 
搜索指定用户所属的文件 | 
rm-删除文件或目录
格式:rm [参数] 文件名
| 参数 | 含义 | 
|---|---|
| -i | 以进行交互式方式执行 | 
| -f | 强制删除,忽略不存在的文件,无需提示 | 
| -r | 递归地删除目录下的内容 | 
cp-复制文件
相当于DOS下的copy命令
格式:cp [参数] 源文件或目录 目标文件或目录
| 参数 | 含义 | 
|---|---|
| -a | 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录 | 
| -f | 删除已经存在的目标文件而不提示 | 
| -i | 交互式复制,在覆盖目标文件之前将给出提示要求用户确认 | 
| -r | 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 | 
mv-移动或重命名文件
相当于DOS下的ren和move的组合
格式:mv [参数] 源文件或目录 目标文件或目录
| 参数 | 含义 | 
|---|---|
| -i | 交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件 | 
| -f | 禁止交互式操作,如有覆盖也不会给出提示 | 
clear-清除屏幕命令
clear命令用来清除屏幕内容
ps-查看进程信息
格式:ps [选项]
| 参数 | 含义 | 
|---|---|
| -a | 显示终端上的所有进程,包括其他用户的进程 | 
| -u | 显示进程的详细状态 | 
| -x | 显示没有控制终端的进程 | 
| -w | 显示加宽,以便显示更多的信息 | 
| -r | 只显示正在运行的进程 | 
top-动态显示运行中的进程
top -d 
| 按键 | 功能 | 
|---|---|
| M | 根据内存使用量来排序 | 
| P | 根据CPU占有率来排序 | 
| T | 根据进程运行时间的长短来排序 | 
| U | 可以根据后面输入的用户名来筛选进程 | 
| K | 可以根据后面输入的PID来杀死进程 | 
| q | 退出 | 
| h | 获得帮助 | 
whoami-我是谁
查看当前系统当前账号的用户名
who-查看当前所有登录系统的用户信息
格式:who [选项]
| 参数 | 含义 | 
|---|---|
| -m或am I | 只显示运行who命令的用户名、登录终端和登录时间 | 
| -q或–count | 只显示用户的登录账号和登录用户的数量 | 
| -u | 在登录时间后显示该用户最后一次操作到当前的时间间隔 | 
| -u或–heading | 显示列标题 | 
w-查看登录当前系统的用户信息
格式:w [选项] [用户名]
| 参数 | 含义 | 
|---|---|
| -h | 不显示各列的标题 | 
| -l | 显示详细信息列表,此为预设值 | 
| -s | 使用短列表,不显示用户登录时间、JCPU和PCPU时间 | 
| -u | 忽略执行程序的名称,以及该程序的PCPU时间 | 
tar-归档管理
格式:tar [参数] 打包文件名 文件
e.g :
- 打包:
tar -cvf a.tar file1 file2 - 解包:
tar -xvf a.tar - 压缩:
tar -zcvf a.tar.gz DirName - 解压:
tar -zxvf a.tar.gz 
| 参数 | 含义 | 
|---|---|
| -c | 生成档案文件 | 
| -v | 列出归档解档的详细过程 | 
| -f | 指定档案文件名称 | 
| -t | 列出档案中包含的文件 | 
| -x | 解开档案文件 | 
gzip-文件压缩命令
格式:gzip [选项] 被压缩文件
自动删除压缩前的文件
| 参数 | 含义 | 
|---|---|
| -d | 解压 | 
file-查看文件类型
格式:file 文件名
man-联机帮助命令
格式:man [选项] 命令名
无参时候代表查找unix命令文档
| 参数 | 含义 | 
|---|---|
| 2 | 系统调用函数 | 
| 3 | C语言库函数 | 
| 5 | 第三方库函数 | 
| 按键 | 功能 | 
|---|---|
| 空格键 | 显示手册页的下一屏 | 
| Enter键 | 一次滚动手册页的一行 | 
| b | 回滚一屏 | 
| f | 前滚一屏 | 
| q | 退出man命令 | 
| h | 列出所有功能键 | 
| /word | 搜索word字符串 | 
Linux系统管理命令
df-检测文件系统的磁盘空间占用和空余情况
格式:df [选项]
| 参数 | 含义 | 
|---|---|
| -a | 显示所有文件系统的磁盘使用情况 | 
| -k | 以k字节为单位显示 | 
| -t <.fs> | 显示各指定文件系统的磁盘空间使用情况 | 
| -T | 显示文件系统 | 
du-统计目录或文件所占磁盘空间的大小
格式:du [选项] 目录或文件名
| 参数 | 含义 | 
|---|---|
| -a | 递归显示指定目录中各文件和子目录中文件占用的数据块 | 
| -s | 显示指定文件或目录占用的数据块 | 
| -b | 以字节为单位显示磁盘占用情况 | 
| -l | 计算所有文件大小,对硬链接文件计算多次 | 
mkfs-格式化命令
格式:mkfs [选项] 设备文件名 [blocks]
| 参数 | 含义 | 
|---|---|
| -V | 详细显示模式 | 
| -t <.fs> | 指定文件系统类型,默认值为 ext2 | 
| -c | 在创建文件系统的同时,进行磁盘坏块检查 | 
| blocks | 文件系统块的大小 | 
rpm-软件包管理
格式:rpm [选项] [软件包名]
| 参数 | 含义 | 
|---|---|
| -i | 指定安装的软件包 | 
| -h | 使用“#”显示详细的安装过程及进度 | 
| -v | 显示安装的详细信息 | 
| -q | 查询系统是否已安装指定的软件包 | 
| -a | 查看系统已安装的所有软件包 | 
| -e | 卸载软件包 | 
| –nodeps | 配合-e参数使用,强制卸载不检查依赖项 | 
su-命令切换用户
su:切换到root用户
格式:su [用户名]
su和su –命令不同之处在于,su -切换到对应的用户时会将当前的工作目录自动转换到切换后的用户的主目录
useradd-添加用户账号(adduser)
格式:useradd [参数] 新建用户账号
useradd -d 主目录名 -m 用户名
| 参数 | 含义 | 
|---|---|
| -d  | 
指定用户登录系统时的主目录,如果不使用该参数,系统自动在/home目录下建立与用户名同名目录为主目录 | 
| -m | 自动建立目录 | 
passwd-设置用户密码
格式:passwd [参数] 用户名
userdel-删除用户
格式:userdel [-r] [用户名]
如果使用参数-r,则表示在删除用户的同时,将该用户的主目录一并删除
chmod-修改文件访问权限
格式:chmod [参数] 文件或目录名
+:添加某个权限
-:取消某个权限
| 参数 | 含义 | 
|---|---|
| u | 属主,即文件或目录的所有者,拥有对文件最大的读写权限 | 
| g | 属组,即与文件属组有相同组ID的所有用户 | 
| o | 表示其他用户,通常只具有浏览权限 | 
| a | 表示以上所以用户 | 
e.g.:chmod a+r DirName -Rchmod 755 file 
chown-修改文件所有者
格式:chown 用户名 文件或目录名
chgrp-修改文件所属组
格式:chgrp 组 文件或用户名
vi工具
vi有两种工作模式:命令模式和输入模式
- a:在当前的光标后面添加文本
 - i:在当前的光标前面添加文本
 - u:撤销上一次操作。
 - r:替换当前光标字符
 - q:命令来退出vi
 - w:保存输入内容(可同时保存文件名 
w filename) - x:删除当前光标所在的字符
 - dd:删除光标所在的行
 - G:到最后一行
 - mG:到指定行
 - :set nu:显示行号
 - /内容:查找指定内容
 
vim设置
打开vim配置文件vim /etc/vim/vimrc
末尾添加需要i的配置
设置行号:set nu
显示光标位置:set ruler
高亮显示当前行:set cursorline
Linux的一些小知识点
路径:Unix/Linux路径由到达定位文件的目录组成
绝对路径:绝对路径是从目录树的树根“/”目录开始往下直至到达文件所经过的所有节点目录
相对路径:相对路径是指目标目录相对于当前目录的位置
通配符:
- 通配符*:可以代表文件名中的任意字符或字符串,但不能与句点打头的文件名匹配。在Unix/Linux系统中以句点打头的文件是隐藏文件
 - 通配符?:可以代表文件名中的任意一个字符。
 - 通配符“[”、“]”、和“-”:用于构成字符组。“[”和“]”将字符组括起来,表示可以匹配字符组中的任意一个。“-”用于表示字符范围。例如,[abc]表示匹配a、b、c中的任意一个,[a-f]表示从a到f范围内的的任意一个字符
 - 转义字符\:如果要使通配符作为普通字符使用,可以在其前面加上转义字符
 
- 常见的Unix/Linux系统目录:
 
| 位置 | 包含 | 
|---|---|
| / | Unix/Linux系统的根目录,包含Unix/Linux系统的所有目录和文件 | 
| /etc | 有关系统设备与管理的配置文件 | 
| /sbin | 存放系统启动时所需的运行程序 | 
| /bin | 该目录中含有常用的命令文件 | 
| /usr/local | 存放用户后期安装的应用程序文件 | 
| /root | 超级用户主目录 | 
| /dev | 接口设备文件目录,保存外围设备代号 | 
| /home | 用户的宿主目录,通常将其设置在独立的分区 | 
- Unix/Linux文件的命名规则:
- 文件名最长可以达到256个字符,可由A~Z、a~z、0~9、.、-、_、等符号组成
 - 文件名区分大小写
 - 文件没有扩展名的概念
 - 使用“/”作为根目录和目录层之间的分隔符
 - 支持相对路径和绝对路径
 
 
在Unix/Linux系统中文件可以没有扩展名
Unix/Linux系统中常用的文件类型有5种:普通文件、目录文件、设备文件、管道文件和链接文件