写在前面
屮哦,写的过程中,虚拟机导致电脑蓝屏两次!!!没有自动保存草稿,@csdn,建议加个自动保存!!!!feeling 瞬间冇得了。只记录文字,不开虚拟机截图了,心累, 黑色星期六20221105
目录
文件操作命令
-
Linux命令基础格式
无论是什么命令,用于什么用途,在Linux中,命令有其通用的格式:
command [-options] [parameter]command :命令本身
[-options] :可选,命令的选项,可以控制命令的行为细节
[parameter] :可选,命令的参数,多数用于命令的指向目标
示例:ls -l /bin/text ·ls 是命令本身,-l是选项,/bin/text 是参数 ·此命令的意思是以列表的形式,列出 /bin/text 目录下的所有内容
-
常用术语或说明
术语 说明 工作目录 当前操作所在的目录。 Home目录 用户的家目录,如root用户的home目录为 /root ,user 用户的home目录为 /user,linux用户登录后默认为home目录。 绝对路径 从根目录开始的路径,以/开头,如 /root/twelve/test.text 相对目录 相对于工作目录的路径,如 当前工作路径是 /root/twelve , 则 text.txt 与/root/twelve/test.text等同 特殊路径符号 .:表示工作目录
..:表示上一级目录,../.. 表示上两级目录,一次类推
~:表示home目录-:表示根目录
管道符 | 左边的结果作为右边的输入
-
ls 命令(list)
作用:列出目录下的内容
语法:ls [-a -l -h] 目录路径
备注:当不使用选项和参数,直接使用ls命令本体时,表示以平铺的形式列出当前工作目录 下的内容。选项 说明 -a all,显示所有的文件,默认情况下 以.开头的文件或文件夹为隐藏文件 -l 以列表的形式列出内容,并展示更多信息 -h 以更加人性化的形式显示文件或文件夹的大小,不能单独使用,必须与-l 组合 在linux中,选项是可以组合使用的,比如 ls的三个选项,可以一起使用,ls -a -l -h, 或简写为 ls -alh。
-
cd 命令(change directory)
作用:切换工作目录
语法:cd [目录路径]
备注:当不使用参数,直接使用cd命令本体时,表示切换到当前用户的home目录。 -
pwd 命令(print work directory)
作用:打印工作目录
语法:pwd
备注:无选项,无参数。 -
mkdir 命令(make directory)
作用:创建文件夹
语法:mkdir [-p] 文件夹路径
备注:选项 -p (parent)表示自动创建不存在的父目录,适用于创建连接多层级的目录。 -
touch 命令
作用:创建文件
语法:touch 文件路径
备注: -
cat 命令
作用:查看文件内容
语法:cat 文件路径
备注: -
more 命令
作用:查看文件内容,与cat命令不同的是more命令支持翻页查看
语法:more 文件路径
备注:空格键翻页,q 退出查看。 -
cp 命令(copy)
作用:复制文件或文件夹
语法:copy [-r] 源文件路径 目标文件路径
备注:选项 -r (recursive)表示递归,用于复制文件夹时使用。 -
mv 命令(move)
作用:移动文件或文件夹
语法:mv 源文件路径 目标文件路径
备注:如果目标文件路径不存在,可以实现改名的效果。 -
rm 命令(remove)
作用:删除文件或文件夹
语法:rm [-r -f] 文件目录1 文件目录2 ...文件目录n
备注:可同时删除多个文件或目录,中间用空格隔开。选项 说明 -r 用于删除文件夹 -f force,强制删除(当前用户俄日管理员时,删除文件会弹出提示信息确认,使用 -f 后不会提示) rm命令支持通配符 * ,用来做模糊删除
rm * :删除所有文件
rm test*:删除所有以test开头的文件
rm *test:删除所有以test结尾的文件
rm *test*:删除所包含test的文件
rm - r -f / 或 rm -r -f /* :删库跑路,慎用!!! -
grep 命令
作用:从文件中根据关键字过滤文件行
语法:grep [-n] 关键字 文件路径
备注:选项 -n 表示在结果中显示匹配的行的行号。如果关键字带有空格或特殊字符,需要用""将其包围。过滤后的结果可作为内容输入端口。 -
wc 命令
作用:统计文件的行数、单词数、大小等
语法:wc [-c -m -w -l] 文件路径
备注:被统计的文件可作为内容输入端口。选项 说明 -c 统计bytes数量 -m 统计字符数量 -w 统计单词数量 -l 统计行数 -
which 命令
作用:查看所使用的一系列命令的程序文件存放路径
语法:which 命令
备注:如查看 cd命令对应的程序文件所在路径 which cd 。 -
find 命令
作用:搜索指定的文件
语法:find 起始路径 -name /- size "被查找的文件名"/文件大小
备注:su -root ,输入密码可以拥有最大的权限,查找更多的文件。选项 说明 -name 通过文件名查找
如查找文件名为test的文件:find / -name "test"
-size 通过文件大小查找,格式为 +/- n[kMG]
如查找小于10M 的文件: find / -size -10M
如查找大于100k的文件:find / -size +100k
find命令支持通配符 * ,用来做模糊查找
find "test*":查找所有以test开头的文件
find "*test":查找所有以test结尾的文件
find "*test*":查找所包含test的文件
- echo 命令
作用:在命令行内输出指定内容
语法:echo 输出的内容
备注:
` ` 飘号用于输出指定的结果,如需输出 工作目前所有的内容,书写格式为
>重定向符:将左边的结果覆盖写入到后边的文件echo `ls`
>>重定向符,将左边的结果追加写入到后边的文件echo "hello" > test.txt
echo ls >>test.txt
- tail 命令
作用:从文件的尾部查看文件的内容
语法:tail [-f -num] 文件路径
备注:选项 说明 -f 表示持续跟踪,当查看的文件内容变化时,tail 的结果会跟着变化 -num 要查看尾部的行数 - vi/vim 命令
作用:编辑文本,vim 是vi 的加强版
语法:
备注:如果文件不存在,则创建。三种工作模式 模式 说明 命令模式 所敲的按键编辑器都理解为命令,此模式下,不能进行自由文本编辑。
命令i:在当前光标位置进入输入模式
命令a:在当前光标位置之后进入输入模式
命令I:在当前光标行的开头进入输入模式
命令A:在当前光标行的结尾进入输入模式
...
输入模式 编辑模式或插入模式。
命令esc 退出输入模式
底线命令模式 以:开始,通常用于文件的保存,退出。
命令 :w 保存
命令:q 退出
命令:wq 保存退出
文件的权限控制
- 通过ls -l 可以以列表的形式查看内容,并显示权限细节
-
序号1,表示文件、文件夹的权限控制信息,首位为文件类型,2-4位为所属用户权限,5-7位为所属用户组权限,8-10位为其他用户权限。
-
序号2,表示文件、文件夹所属用户
-
序号3,表示文件、文件夹所属用户组
权限控制信息 位数 可选值 说明 1 - d l - 表示文件 d表示文件夹 l表示软连接 2 r - r 表示读 w表示写 x表示执行 -表示无 3 w - r 表示读 w表示写 -x表示执行 -表示无 4 x - r 表示读 w表示写 x表示执行 -表示无 5 r - r 表示读 w表示写 x表示执行 -表示无 6 w - r 表示读 w表示写 x表示执行 -表示无 7 x - r 表示读 w表示写 x表示执行 -表示无 8 r - r 表示读 w表示写 x表示执行 -表示无 9 w - r 表示读 w表示写 x表示执行 -表示无 10 x - r 表示读 w表示写 x表示执行 -表示无
-
chmod 命令1
作用:修改文件、文件夹的权限信息
语法:chmod [-R] 权限 文件或文件夹
备注:只有文件或文件夹的所有者或root用户可与修改。选项 说明 -R 对文件夹内的全部内容应用同样的操作 示例 :
将文件权限修改为 :rwxr-x--xchmod u=rwx,g=rx,0=x hello.text
将文件夹test以及文件夹内全部内容权限修改为r wxr-x--x
chmod -R u=rwx,g=rx,o=x test
其中,u表示user所属用户权限,g表示group组权限,0表示other其他用户权限
-
chmod 命令2
作用:修改文件、文件夹的权限信息
语法:chmod [-R] 数字 文件或文件夹
备注:只有文件或文件夹的所有者或root用户可与修改。权限转换为数字序列,r =4 ,w=2,x=1权限的数字序列 数字 权限 0 --- 1 --x 2 -w- 3 -wx 4 r-- 5 r-x 6 rw- 7 rwx 示例 :
将文件权限修改为 :rwxr-x--xchmod 751 text.txt
-
chmodn 命令
作用:修改文件、文件夹的所属用户和用户组
语法:chmodn [-R] [用户][:][用户组] 文件或文件夹
备注:只有文件或文件夹的所有者或root用户可与修改。权限转换为数字序列,r =4 ,w=2,x=1选项 说明 -R 对文件夹内的全部内容应用同样的操作 用户 修改所属用户 用户组 修改所属用户组 : 用于分隔用户与用户组
用户切换与权限
- root用户是linux的超级管理员,普通用户的权限,一般在其Home目录下时候不受限的,一旦出了home目录,大多数的地方,仅有只读和执行权限,无修改权限。
- su 命令(switch user)
作用:切换用户
语法:su [-] [用户名]
备注:使用普通用户,切换到其他用户,需要输入密码,使用root用户切换到普通用户,不需要输入密码。选项 说明 - 表示是否在切换用户后加载环境变量,建议带上 用户名 表示要切换的用户,省略表示切换到root -
exit 命令
作用:退回到上一个用户
语法:exit
备注:也可以使用快捷键 ctrl+d。 -
sudo 命令
作用:临时以root的身份执行普通的命令
语法:sudo 其他命令
备注:不是所有的用户都有权使用sudo,需要为普通用户配置sudo认证。
配置sudo认证的步骤:
(1) 切换到root用户
(2) 执行visudo命令,自动通过vi编辑器打开 /etc/sudoers 文件
(3) 在文件的最后添加:用户名 ALL=(ALL) NOPASSWD:ALL
NOPASSWD:ALL 表示使用sudo命令无需输入密码。
(4) 最后wq保存
用户与用户组
- groupadd 命令
作用:创建用户组
语法:groupadd 用户组名
备注:需要在root 用户下操作,下同。 - groupdel 命令
作用:删除用户组
语法:groupadd 用户组名
备注:需要在root 用户下操作,下同。 - useradd 命令
作用:创建用户
语法:useradd [ -g -d]用户名
备注:需要在root 用户下操作,下同。选项 说明 -g 指定用户组,如不指定,会创建同名的用户组并自动加入,如指定。则指定的组需要存在,如已存在同名组。必须使用 -g -d 指定用户Home路径,如不指定,默认 /home/用户名 - userdel 命令
作用:删除用户
语法:userdel [ -r]用户名
备注:需要在root 用户下操作,下同。选项 -r ,删除用户的Home目录,不使用不删除。 - id 命令
作用:查看用户所属组
语法:id [用户名]
备注:参数 用户名 如果不提供,则查看自身。 - usermod 命令
作用:将指定的用户加入指定的用户组
语法:usermod -aG 用户组 用户名
备注: - getent 命令
作用:查看当前系统中有哪些用户、用户组
语法:getent passwd/group
备注:
getent passwd 查询的结果共有7份信息,分别是:
用户名:密码(x):用户ID:组ID:描述信息(无用):Home目录:执行终端(默认bash)
getent group 查询的结构共有3份信息,分别是:
组名称:组认证(显示为x):组ID
快捷键
快捷键 | 说明 |
---|---|
ctrl + c | 强制停止,如在执行过程中退出执行 |
ctrl + d | 退出或登出,如退出账户,退出某些特定程序的专属页面,不能退出vi/vim |
history | 查看历史命令 |
!命令前缀 | 自动执行上一次匹配前缀的命令,如 !c,执行最近的一次以c开头的命令 |
ctrl + r | 输入内容匹配历史命令 |
ctrl + a | 跳到命令的开头 |
ctrl + e | 跳到命令的结尾 |
ctrl + 键盘左键 | 向左跳一个单词 |
ctrl + 键盘右键 | 向右跳一个单词 |
ctrl + l | 清屏 |
clear | 清屏 |
系统管理配置(centos)
- yum 命令
作用:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动杰佳依赖问题
语法:yum [-y] [install | remove |search] 软件名称
备注:yum 命令需要root权限,yum命令需要联网选项/参数 说明 -y 自动确认,无需手动确认安装或卸载过程 install 安装 remove 卸载 search 搜索 -
systemctl 命令
作用:linux很多软件支持使用systemctl 命令控制启动、停止、开机自启,能够被systemctl 管理的软件,一般也称之为服务。
语法:systemctl start |stop |status |enable |disable 服务名
备注:只有自动注册服务的软件才可以被控制,否则需要手动添加,后面学参数 说明 start 启动 stop 停止 status 查看状态 enable 开启开机自启 disable 关闭开机自启 linux 系统内置服务比较多,比如:
(1) NetworkManager 主网络服务
(2) network 副网络服务
(3) firewalld 防火墙服务
(4) sshd ssh服务 -
ln 命令
作用:在系统中创建软连接,可以将文件、文件夹链接到其他位置。类似于Windows中的快捷方式。
语法:ln -s 参数1 参数2
备注:-s选项代表创建软连接,参数1 被链接的文件或文件夹,参数2 要链接去的目的地
示例:将 /etc/yum.conf 软连接到 home 目录下ln -s /etc/yum.conf ~/yum.conf
-
date 命令
作用:查看系统时间
语法:date [-d] [+格式化字符串]
备注:-d 按照指定的字符串显示日期,一般用于日期计算格式化字符串 说明 %Y 年 %y 年份后两位数字<00..99> %m 月份<01..12> %d 日<01..31> %H 小时<00..23> %M 分钟<00..59> %S 秒<00..60> %s 自1970-01-01 00:00:00到现在的秒数
示例:
-d 的选项,可以按照给定的字符串显示日期,一般用于日期计算
示例:
-d 支持的时间标记:标记 说明 year 年 month 月 day 日 hour 时 minute 分 second 秒 -
修改linux时区
使用root用户,执行两步操作
(1) 删除 /etc/localtime 文件rm -f /etc/localtime
(2) 将 /usr/share/zoneinfo/Asia/Shanghai 文件软连接到 /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
-
自动校准系统时间
我们可以通过ntp程序自动校准系统时间。
安装ntp :yum -y install ntp
启动ntp服务并设置开机自启动
systemctl start ntpd systemctl enable ntpd
ntp 程序在联网后定期进行系统时间的校准。也可以在root用户下手动校准
ntpdate -u ntp.aliyun.com
部分授时服务器 服务器名称 域名或IP 中国国家授时中心 210.72.145.44 NTP服务器(上海) ntp.api.bz 美国 time.nist.gov 复旦 ntp.fudan.edu.cn 微软公司授时主机(美国) time.windows.com 台警大授时中心(中国台湾) asia.pool.ntp.org -
主机名
查看主机名 hostname
修改主机名 hostnamectl set-hostname 主机名 (需root权限) -
wget 命令
作用:非交互式的文件下载器,可以在命令行内下载网络文件
语法:wget [-b] url
备注:-b 设置后台下载,会将日志写入到当前工作目录的 wget-log 文件,该文件可用tail 命令监控下载进度 -
curl 命令
作用:发送http网络请求,可用于:下载文件、获取信息等
语法:curl [-O] url
备注:-O 用于文件下载
示例:访问百度,返回的是页面代码 -
ps 命令
作用:查看系统进程
语法:ps [-e -f]
备注:选项 说明 -e 显示全部进程 -f 已完全格式化的形式展示信息(展示全部信息) 示例:ps -f
字段 说明 UID 进程所属的用户ID PID 进程ID PPID 进程的父ID(启动此进程的其他进程) C 此进程的CPU占用率百分比 STIME 进程的启动时间 TTY 进程的终端序号,如显示 ?表示非终端启动 TIME 进程占用CPU的累计时间 CMD 进程对应的名称或启动路径或启动命令 - kill 命令
作用:关闭进程
语法:kill [-9] 进程ID
备注:选项-9 表示强制关闭 - top 命令
作用:查看 cpu 、内存使用情况,类似于Windows的资源管理器
语法:top[ -p -d -c -n -b -i -u]
备注:默认每隔5秒刷新一次,ctrl +c 或 q 退出选项 说明 -p 只显示某个进程的信息 top -p 1 -d 设置刷新时间,默认5s -c 显示产生进程的完整命令,默认是进程名 -n 指定刷新次数,刷新完后退出 -b 以非交互式的方式运行 -i 不显示任何闲置或无用的进程 -u 查找特定用户启动的进程 top -u root
当top以交互式方式运行是,可以用以下命令操作命令 说明 h键 显示帮助 c 显示进程的完整信息,等同 -c f 可以选择需要展示的项目 M 根据主流内存RES排序 P 根据cpu使用率排序 T 根据时间/使用时间排序 E 切换顶部内存单位显示 e 切换进程内存单位显示 i 不显示闲置或无用线程,等同与 -i -
iostat 命令
作用:查看 cpu、磁盘相关信息
语法:iostat [-x][num1][num2]
备注:-x 显示更多 ,num1 数字,刷新间隔,num2 数字 ,刷新几次 -
sar 命令
作用:查看 网络统计信息
语法:sar -n DEV num1 num2
备注:-n 表示查看网络 ,DEV 表示端口,num1 数字,刷新间隔,num2 数字 ,刷新几次