Linux学习笔记 一 第三章 Linux常用命令
写在前面
这个文章是我的一个Linux学习笔记,目前正在更新中...如果有问题,麻烦指出,大家共同进步。PS. 2020-8-21 结束更新。
第三章Linux常用命令
一、命令格式
命令格式:命令 [-选项] [-参数]
例如:ls -la /etc
说明:
a. 个别命令使用不用遵循此格式,例如ls
,没有[选项]和[参数]依然可以使用。
b. 当有多个[选项]时可以写在一起,例如ls -la /etc
c. 有些[选项]是简化后的,例如ls -a /etc
和ls --all /etc
是一样的,当使用完整[选项]时,我们习惯用 --[选项]。
二、文件处理命令
1. 目录处理命令
- 命令名称:ls
英文原意: list
命令路径: /bin/ls
执行权限: 所有用户
功能描述: 显示所有目录文件
语法: ls [-ald] [文件或目录]
-a 显示所有文件,包括隐藏文件
-l 详细信息显示
-d 查看目录属性
备注:
-rw-r--r--
第一个-
是文件类型(- 是文件,d 是目录 , l 是软链接文件)
rw- r-- r--
之后的字符可以分为三组,第一组rw-
意味着文件的所有者权限(u),第二组r--
意味着文件的所有组权限(g), 第三组r--
意味着文件的其它人权限(o),组内的字符r
是读权限,w
是写权限,x
是执行权限。
- 命令名称:mkdir
英文原意: make directories
命令路径: /bin/mkdir
执行权限: 所有用户
功能描述: 创建新目录
语法: mkdir [-p] [要创建的目录名]
-p 递归创建
举例:mkdir -p test/test1
递归创建目录test1
- 命令名称:cd
英文原意: change directory
命令路径: shell 内置命令
执行权限: 所有用户
功能描述: 切换目录
语法: cd [目录]
举例:cd /etc
切换到etc目录
cd ..
回到上一级目录
- 命令名称:pwd
英文原意: print working directory
命令路径: /bin/pwd
执行权限: 所有用户
功能描述: 显示当前目录
语法: pwd [目录]
举例:pwd
显示当前目录
- 命令名称:rmdir
英文原意: remove empty directory
命令路径: /bin/rmdir
执行权限: 所有用户
功能描述: 删除空目录
语法: rmdir [目录名]
举例:rmdir /tmp/test/test1
删除test1目录
- 命令名称:cp
英文原意: copy
命令路径: /bin/cp
执行权限: 所有用户
功能描述: 复制文件或目录
语法: cp -rp [原文件或目录] [目标目录]
-r 复制目录
-p 保留文件属性
举例:cp -r /tmp/test1 /tmp/test2
将目录test1复制到test2中'
- 命令名称:mv
英文原意: move
命令路径: /bin/mv
执行权限: 所有用户
功能描述: 剪切文件、改名
语法: mv [原文件或目录] [目标目录或新文件名]
举例:mv test1.sh test2.sh
将 test1.sh 改为 test2.sh
- 命令名称:rm
英文原意: remove
命令路径: /bin/rm
执行权限: 所有用户
功能描述: 删除文件
语法: rm [原文件或目录]
-r 删除目录
-f 强制删除
举例:rm -rf test1
强制删除目录test1
2. 文件处理命令
- 命令名称:touch
命令路径: /bin/touch
执行权限: 所有用户
功能描述: 创建空文件
语法: touch [文件名]
举例:touch test1.sh
创建 test1.sh
- 命令名称:cat
命令路径: /bin/cat
执行权限: 所有用户
功能描述: 显示文件内容
语法: cat [文件名]
-n 显示行号
举例:cat test1.sh
显示test1.sh的文件内容。
- 命令名称:tac
命令路径: /usr/bin/tac
执行权限: 所有用户
功能描述: 显示文件内容(反向列示)
语法: tac [文件名]
举例:tac test1.sh
反向显示test1.sh的文件内容。
- 命令名称:more
命令路径: /bin/more
执行权限: 所有用户
功能描述: 分页显示文件内容
语法: more [文件名]
举例:more test1.sh
分页显示test1.sh的文件内容。
备注:
按下空格或者f 可以翻页
按下回车 可以换行
按下q或者Q 退出
- 命令名称:less
命令路径: /usr/bin/less
执行权限: 所有用户
功能描述: 分页显示文件内容(可向上翻页)
语法: less [文件名]
举例:less test1.sh
分页显示test1.sh的文件内容。
备注:
按下空格或者f可以向后翻页,b向前翻页
按下回车 可以换行
按下q或者Q 退出
更多指令请查看less --help
- 命令名称:head
命令路径: /usr/bin/head
执行权限: 所有用户
功能描述: 显示文件前几行
语法: head [文件名]
-n 指令显示的行数
举例:head -5 test1.sh
显示test1.sh 前5行的内容。
- 命令名称:tail
命令路径: /usr/bin/tail
执行权限: 所有用户
功能描述: 显示文件后面几行
语法: tail [文件名]
-n 指令显示的行数
-f 动态显示文件末尾的内容
举例:tail -5 test1.sh
显示test1.sh后5行的内容。
3. 链接命令
- 命令名称:ln
英文原意: link
命令路径: /bin/ln
执行权限: 所有用户
功能描述: 剪切文件、改名
语法: ln [原文件] [目标文件]
-s 创建软链接
举例:ln -s test1 test2
创建test2的软链接
备注: linux下软链接和硬链接的区别在linux系统中,链接分两种 :一种被称为硬链接(Hard Link),另一种被称为符号链接或软链接(Symbolic Link)。
1)默认不带参数情况下,ln命令创建的是硬链接。
2)硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点号与源文件不同。
3)ln命令不能对目录创建硬链接,但可以创建软链接,对目录的软链接会经常被用到。
4)删除软链接文件,对源文件及硬链接文件无任何影响;
5)删除文件的硬链接文件,对源文件及软链接文件无任何影响;
6)删除链接文件的原文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状);
7)同时删除原文件及其硬链接文件,整个文件才会被真正的删除。
8)很多硬件设备中的快照功能,使用的就类似硬链接的原理。
9)软连接可以跨文件系统,硬链接不可以跨文件系统。软链接的特征:类似Windows的快捷方式
1.lrwxrwxrwx l 代表软链接 软链接文件权限都为rwxrwxrwx。
2.文件大小,只是符号链接的文件大小。
3.查看软链接文件详细信息时,会有箭头(->)指向原文件
硬链接的特征:
1.硬链接相当于 cp -p + 同步更新。
2.硬链接文件与原文件i node 相同,可以通过 i 节点进行识别。
3.不能够夸分区使用。
4.不能针对目录使用。
三、权限管理命令
- 命令名称:chmod
英文原意: change the permissions mode of a file
命令路径: /bin/chmod
执行权限: 所有用户
功能描述: 改变文件或目录权限
语法: chmod [{ugor}{+-=}{rwx}] [目标文件获目录]
[mode = 421] [目标文件获目录]
-R 递归修改
u = user; g = group; o = other; a = all;
r = read; w = write; x = execute;
权限的数字表示: r = 4; w = 2; x = 1;
举例:chmod +777 test1
给 test1 的所有用户增加所有权限
备注: 文件目录权限总结
代表字符 | 权限 | 对文件的含义 | 对目录的含义 |
---|---|---|---|
r | 读权限 | 可以查看文件内容 | 可以列出目录中的内容 |
w | 写权限 | 可以修改文件内容 | 可以在目录中创建、删除文件 |
x | 执行权限 | 可以执行文件 | 可以进入目录 |
- 命令名称:chown
英文原意: chfileownership
命令路径: /bin/chown
执行权限: 所有用户
功能描述: 改变文件或目录的所有者
语法: chown [用户] [文件或者目录]
举例:chown aaa test1
更改test1目录的所有为aaa。
- 命令名称:chgrp
英文原意: change file group
命令路径: /bin/chgrp
执行权限: 所有用户
功能描述: 改变文件或目录的所属组
语法: chgrp [用户组] [文件或者目录]
举例:chgrp aaa test1
更改test1目录的所属组为aaa。
- 命令名称:umask
英文原意: the user file-creation mask
命令路径: shell 内置命令
执行权限: 所有用户
功能描述: 显示、设置文件的缺省权限
语法: umaks [-S]
-S 以rwx形式显示新建文件缺省权限。
举例:umask 777
设置新建文件的缺省权限为所有人拥有所有权限。
四、文件搜索命令
- 命令名称:find
命令路径: /bin/find
执行权限: 所有用户
功能描述: 文件搜索
语法: find [搜索范围] [匹配条件]
-name 文件名搜索
-iname 文件名搜索(不区分大小写)
-size +-= [文件大小] 文件大小搜索(大于、小于、等于[文件大小])
-user 所有者搜索
-group 所属组搜索
-amin 访问时间 access
-cmin 文件属性修改时间 change
-mmin 修改文件内容时间 modify
-[type] 根据文件类型查找 f 文件,d 目录, l软链接文件
-[inum] 根据文件i node 查找
举例:
find /etc -size +163840 -a -size -204800
在/etc下查找大于80MB小于100MB的文件 -a = all 两个条件同时满足,-o = or 两个条件满足任意一个即可。
find /etc -name inittab -exec ls -l {}\;
在/etc下查找inittab文件并显示其详细信息。-exec/-ok 命令 {}\;
对结果执行操作
- 命令名称:locate
命令路径: /usr/bin/locate
执行权限: 所有用户
功能描述: 在文件资料库中查找文件
语法: locate [文件名]
举例:locate test
查找文件名为test的文件
- 命令名称:which
命令路径: /usr/bin/which
执行权限: 所有用户
功能描述: 搜索命令所在目录及别名信息
语法: which [命令名]
举例:which cd
查找cd所在目录
- 命令名称:whereis
命令路径: /usr/bin/whereis
执行权限: 所有用户
功能描述: 搜索命令所在目录及帮助文档路径
语法: whereis [命令名]
举例:whereis cd
查找cd所在目录以及帮助文档
- 命令名称:grep
命令路径: /bin/grep
执行权限: 所有用户
功能描述: 在文件中搜寻字串匹配的行并输出
语法: grep -iv [指定字串]&ensp [文件]
-i 不区分大小写
-v 排除指定字串
举例:grep mysql /root/install.log
在安装日志中查找字串mysql
五、帮助命令
- 命令名称:man
英文原意: manual
命令路径: /usr/bin/man
执行权限: 所有用户
功能描述: 获得帮助信息
语法: man [命令或配置文件]
举例:man ls
查看ls命令的帮助信息。
- 命令名称:help
命令路径: shell 内置命令
执行权限: 所有用户
功能描述: 获得帮助信息
语法: help [命令]
举例:helpls
查看ls命令的帮助信息。
六、用户管理命令
- 命令名称:useradd
命令路径: /usr/sbin/useradd
执行权限: root
功能描述: 添加新用户
语法: useradd [用户]
举例:useradd test
添加用户名为test的用户
- 命令名称:passwd
命令路径: /usr/bin/passwd
执行权限: 所有用户
功能描述: 设置用户密码
语法: passwd [用户名]
举例:passwd test
设置用户test的密码
- 命令名称:who
命令路径: /usr/bin/who
执行权限: 所有用户
功能描述: 查看登录用户信息
语法: who
举例:who
- 命令名称:w
命令路径: /usr/bin/w
执行权限: 所有用户
功能描述: 查看登录用户的详细信息
语法: w
举例:w
七、压缩解压命令
- 命令名称:gzip
英文原意: GNU zip
命令路径: /bin/gzip
执行权限: 所有用户
功能描述: 压缩文件
语法: gzip [文件]
备注: 压缩后文件格式 .gz
- 命令名称:gunzip
英文原意: GNU unzip
命令路径: /bin/gunzip
执行权限: 所有用户
功能描述: 解压缩.gz的压缩文件
语法: gunzip [压缩文件]
- 命令名称:tar
命令路径: /bin/tar
执行权限: 所有用户
功能描述: 打包目录
语法: tar [选项] [压缩后文件名] [目录]
-c 打包
-v 显示详细信息
-f 指定文件名
-x 解包
-z 打包同时压缩
备注: 压缩后文件格式 .tar.gz
举例:tar -zcf test1.tar.gz test1
将目录test1打包压缩
- 命令名称:zip
命令路径: /bin/zip
执行权限: 所有用户
功能描述: 压缩文件或目录
语法: zip [选项] [压缩后文件名] [目录]
-r 压缩目录或文件
备注: 压缩后文件格式 .zip
- 命令名称:unzip
命令路径: /bin/unzip
执行权限: 所有用户
功能描述: 解压缩文件或目录
语法: unzip [压缩文件]
- 命令名称:bzip2
命令路径: /usr/bin/bzip2
执行权限: 所有用户
功能描述: 压缩文件
语法: zip [选项] [文件]
-k 产生压缩文件后保留原文件
备注: 压缩后文件格式 .bz2
- 命令名称:bunzip2
命令路径: /bin/bunzip2
执行权限: 所有用户
功能描述: 解压缩
语法: unzip [选项] [压缩文件]
-k 解压缩后保留原文件
八、网络命令
- 命令名称:write
命令路径: /usr/bin/write
执行权限: 所有用户
功能描述: 给用户发消息,按Control + D 保存结束
语法: write [用户名]
举例:write test
给用户test 发送消息
- 命令名称:wall
英文原意: write all
命令路径: /usr/bin/wall
执行权限: 所有用户
功能描述: 发送广播消息
语法: all
举例:all test
给所有人发送消息test
- 命令名称:ping
命令路径: /bin/ping
执行权限: 所有用户
功能描述: 测试网络连通性
语法: ping [选项] [IP地址]
-c 指定发送次数
举例:ping 127.0.0.1
本地回环ping测试
- 命令名称:ifconfig
英文原意: interface configure
命令路径: /sbin/ifconfig
执行权限: root
功能描述: 查看和配置网卡信息
语法: ifconfig [网卡名称] [IP地址]
举例:ifconfig eth0 192.168.0.2
设置网卡地址为192.168.0.2
- 命令名称:mail
命令路径: /bin/mail
执行权限: 所有用户
功能描述: 查看发送电子邮件
语法: : mail [用户名]
举例:mail root
给用户root发送电子邮件
- 命令名称:last
命令路径: /usr/bin/last
执行权限: 所有用户
功能描述: 列出目前与过去登入系统的用户信息
语法: : last
举例:last
- 命令名称:lastlog
命令路径: /usr/bin/lastlog
执行权限: 所有用户
功能描述: 检查某特定用户上次登录的时间
语法: : lastlog
举例: `lastlog -u 502
- 命令名称:traceroute
命令路径: /bin/traceroute
执行权限: 所有用户
功能描述: 显示数据包到主机间的路径
语法: : traceroute [目的地址]
举例:traceroute www.baidu.com
显示主机到百度之间的路径
- 命令名称:netstat
命令路径: /bin/netstat
执行权限: 所有用户
功能描述: 显示网络相关信息
语法: : netstat [选项]
-t TCP协议
-u UDP协议
-l 监听
-r 路由
-n 显示IP地址和端口号
举例:netstat -an
查看本机监听的端口
- 命令名称:setup
命令路径: /usr/bin/setup
执行权限: root
功能描述: 配置网络
语法: : setup
举例:setup
- 命令名称:mount
命令路径: /bin/mount
执行权限: 所有用户
功能描述: 查看发送电子邮件
语法: : mount [-t 文件系统]设备文件名 挂载点
举例:mount -t iso 9660 /dev/sr0 /mnt/cdrom
九、常用关机命令
- 命令名称:shutdown
命令路径: /usr/sbin/shutdown
执行权限: root
功能描述: 关机重启命令
语法: : shutdown [选项] [时间]
-c 取消前一个关机指令
-h 关机
-r 重启
举例:shutdown now
立即关机
备注: 其它关机命令
halt
poweroff
logout 退出登录命令
init 0
系统运行级别
0 关机
1 单用户
2 不完全单用户,不含NFS服务
3 完全多用户
4 未分配
5 图形界面
6 重启
cat /etc/inittab 修改系统默认运行级别 id:initdefault
run level 查询系统运行级别