(1)linux是一款操作系统,免费开源,安全高效,稳定,能处理高并发
(2)企业级的项目部署到linux/unix服务器运行
在Linux的内核改进:CentOSE,Redhat,Suse,Ubuntu,红旗Linux
Linux是树状目录结构,最上层根目录是“/”,在这个根目录/下创建其他目录。Linux一切皆文件
第一行
(1)/bin:存放经常使用的命令
(2)/boot:启动Linux使用的核心文件,包括一些连接文件和镜像文件
(3)/dev:设备管理器,所有的硬件用文件形式存储
(4)/etc:存放配置文件
(5)/home:存放普通用户的主目录,每一个用户都有自己的目录。以用户名账号命名
第二行
(1)/lib:库文件目录
(2)/lost+found:恢复文件目录
(3)/media:媒体文件
(4)/mnt:临时挂载点目录
第三行
(1)/opt:存放安装包
(2)/proc:内核和进程文件目录
(3)/root:root用户的根目录
(4)/sbin:系统管理的命令程序
第四行
(1)/srv:存放系统一些网络服务的数据
(2)/tmp:临时文件目录
(3)/usr:用户使用安装的程序
(4)/var:存放经常变动的数据,日志缓存文件
(1)正常模式
在正常模式下,可以使用快捷键。上下左右移动光标,删除字符和删除整行处理内容,复制,粘贴处理数据。
(2)编辑模式
按下i进入。
(3)命令行模式
按下esc回到正常模式,然后保存退出:wq,强制退出:q!,退出:q等
(1)vim hello.java
进入正常模式
(2)按下i进入编辑模式
(3)按下esc后,输入:wq保存
(1)复制:yy 复制向下5行 5yy 粘贴:p
(2)删除:dd 删除向下dd
(3)查找:命令行/关键字,n是下一个
(4)撤销:u
(5)首行:gg,末行:G
(6)显示行号:set nu 和取消行号:set nonu
sync
把内存的数据同步到磁盘,关机重启之前操作
shutdown
(1)shutdown -h now:立即关机
(2)shutdown -h 1:1分钟后关机
(3)shutdown -r now:立即重启
halt 关机
reboot 重启
(1)添加用户
useradd wzl
(2)指定密码
passwd wzl
(3)删除用户
userdel wzl(不删除家目录,推荐)
userdel -r wzl(删除家目录)
(4)查询用户信息
id wzl
(5)切换用户
su - wzl
(6)返回到原来用户
exit
(1)什么是用户组
类似于角色,系统可以对共性的多个用户进行统一管理
(2)增加组
groupadd 组名
(3)删除组
groupdel 组名
(4)指定用户组
useradd -g 组名 用户名
(5)增加用户zhangsan,指定组student
①创建组student
groupadd student
②创建用户指定组
useradd -g student zhangsan
③查看用户信息
id zhangsan
(6)修改用户组
usermod -g 组名 用户名
(7)将用户zhangsan,修改到teacher组
usermod -g teacher zhangsan
(1)用户信息文件/etc/passwd
vim /etc/passwd每一行的注释
用户名:口令:用户id:组id:注释性描述:主目录:登录Shell
(2)组信息配置文件/etc/group
组名:密码:组id:组内用户列表
(3)口令配置文件,密码和登录信息
/etc/shadow
0:关机
1:单用户(找回丢失密码)
2:多用户无网络服务
3:多用户有网络服务
4:保留
5:图形界面
6:重启
运行级别配置文件/etc/inittab
切换运行级别指令init[这里是级别的数字]
init 3 多用户有网服务
init 5 图形界面
init 0 关机
思路:进入单用户模式 init 1, root不需要密码就可以登录
(1)开机时,看到这个界面按回车
(2)输入e
(3) 选择第二个输入e
(4)输入 1 指定单用户模式,回车保存
(5)输入b后就进入了单用户模式
输入指令:passwd root
(1)vim /etc/inittab
(2)修改最后一行id:3:initdefault:
显示当前目录路径
(1)功能:显示当前目录的文件和目录
(2)语法:ls [-a或-l] 路径
(3)常用选项:
ls -a 显示所有文件包括隐藏
ls -l 列表方式显示详细信息,简写ll
(1)功能:切换目录
(2)用法:cd [参数] 路径
(3)参数:
cd ~或cd 回到自己的home目录
cd .. 回到上一层目录
(4)绝对路径:从根目录开始/定位
相对路径:从当前的路径开始定位
(5)应用
案例1:使用绝对路径切换到root目录cd /root
案例2:当前路径是/etc/hgfs使用相对路径到/root目录 cd ../../root
案例3:返回当前的上一级目录 cd ..
案例4:回到家目录 cd或cd~
(1)功能:创建目录
(2)语法:mkdir [选项] 要创建目录
(3)选项:mkdir -p 要创建的多级目录
(4)应用:
实例1:创建一个目录 /home/dog mkdir /home/dog
实例2:创建多级目录 /home/animal/triger mkdir -p /home/animal/triger
(1)功能:删除空目录
(2)语法:rmdir [选项] 要删除空目录
(3)删除非空目录:rm -rf 要删除的目录
(4)应用:
实例1:删除目录 /home/dog rmdir /home/dog
实例2:删除animal目录(非空)rm -rf 要删除的目录
(1)功能:创建空文件
(2)语法: touch 文件名
(3)应用:
案例1:创建空文件 hello.txt touch hello.txt
案例2:同时创建ok1.txt,ok2.txt touch touch ok1.txt ok2.txt
(1)功能:复制
(2)语法:cp [选项] 源文件 目标路径
(3)选项:-r复制整个文件夹
(4)应用
案例1:将/home/aaa.txt拷贝到/home/bbb 单个文件
案例2:将/home/bbb整个目录拷贝到/home/wzl
cp -r /home/bbb /home/wzl
(1)功能:删除
(2)语法:rm [选项] 删除的目录或文件
(3)选项:-r 删除整个文件 -f 强制删除
(4)应用:
案例1:删除/home/aaa.txt rm /home/aaa.txt
案例2:强制删除/home/bbb整个文件夹 rm -rf /home/bbb
(1)功能:移动文件或目录,还可以重命名
(2)语法:
重命名 mv 原先名字 新名字
移动文件 mv 原先文件的路径 移动的路径
(3)应用:
案例1:将/home/aaa.txt文件重名为bbb.txt
mv /home/aaa.txt /home/bbb.txt
案例2:将/home/bbb.txt 文件移动到/root目录下
mv /home/bbb.txt /root
(1)功能:只读查看文件内容
(2)语法: cat [选项] 查看的文件
(3)选项:-n:显示行号
(4)应用:
实例1:查看/etc/profile文件内容,显示行号-n,分页显示more
cat -n /etc/profile | more
(1)功能:按页显示文件内容
(2)语法:more 要查看的文件
(3)应用:查看/etc/profile文件内容 more /etc/profile
(4)快捷键
操作 | 功能说明 |
---|---|
空白键(space) | 代表向下翻一页 |
Enter | 代表向下翻『一行』: |
q | 代表立刻离开 more.不再显示该文件内容。 |
Ctrl+F | 向下滚动一屏 |
Ctrl+B | 返回上一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
(1)功能:按页加载显示文件内容,大型文件效率高
(2)语法:less 要查看的文件
(3)快捷键:
操作 | 功能说明 |
---|---|
空白键 | 向下翻动一页: |
[pagedown] | 向下翻动一页; |
[pageup] | 向上翻动一页: |
/字串 | 向下按寻『字串』的功能: n:向下查找: N:向上查找: |
?字串 | 向上搜寻『字串』的功能: n:向上查找: N:向下查找: |
q | 离开 less 这个程序: |
(1)语法:
ls -l > a.txt 列表内容写入文件a.txt 覆盖写
ls -al > aa.txt 列表全部内容写入文件aa.txt 覆盖写
cat 文件1 > 文件2 将文件1的内容写入文件2覆盖写
echo “内容” >> b.txt 将“内容”追加写入到b.txt文件
(2)应用:
案例1:将/home目录列表覆盖写入/home/info.txt
ll /home > /home/info.txt
案例2:将当前日历信息追加到/home/mycal文件中
cal >> /home/mycal
(1)功能:echo输出内容到控制台
(2)应用:
案例1:使用echo指令输出环境变量路径到控制台
echo $PATH
案例2:使用echo指令输出hello,world
echo "hello,world"
(1)功能:显示文件开头前10行内容
(2)语法:
head 文件 显示文件前10行内容
head -n 5 文件 显示文件前5行内容
(3)举例:
查看/etc/profile前5行代码
head -n 5 /etc/profile
(1)功能:tail指令输出文件尾部内容,默认显示后10行
(2)语法:
tail 文件 查看文件后10行内容
tail -n 5 文件 查看文件后5行内容
tail -f 文件 实时监控文件的更新
(3)应用
实时监控/home/a.txt
tail -f /home/a.txt
(1)功能:查看已经执行的历史指令
(2)语法:history
(3)举例:
案例1:显示所有的历史指令
history
案例2:显示最近使用过的10条历史指令
history 10
案例3:指定执行历史记录的命令
!执行编号
(1)功能:软链接,符号链接,类似快捷方式
(2)语法:ln -s 原目录或目录 软链接名
(3)应用:
案例1:在/home目录下创建软链接linkToRoot,连接到/root目录
ln -s /root /home/linkToRoot
案例2:删除linkToRoot
rm -rf /home/linkToRoot
(1)显示当前时间
date
(2)显示当前年份
date +%Y
(3)显示当前月份
date +%m
(4)显示当前是哪一天
date +%d
(5)格式化显示当前时间
date "+%Y-%m-%d %H:%S:%S"
(6)设置系统当前时间,设置为2022-10-10 22:10:22
date -s "2022-10-10 22:10:22"
(1)显示当前月份的日历
cal
(2)显示2022年的日历
cal 2022
(1)功能:打包指令,文件后缀是.tar.gz
(2)语法:
tar -zcvf XXX.tar.gz 打包的文件或目录(打包)
tar -zxvf XXX.tar.gz 打包的文件或目录(解压)
(3)选项说明
选项 | 功能 |
---|---|
-c | 产生.tar打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-z | 打包同时压缩 |
-x | 解包.tar文件 |
(4)应用
实例1:压缩多个文件,将/home/a.txt和/home/.txt压缩成ab.tar.gz
tar -zcvf ab.tar.gz a.txt b.txt
实例2:将/home的文件夹压缩成myhome.tar.gz
tar -zcvf myhome.tar.gz /home
实例3:将myhome.tar.gz解压到/opt/目录下
tar -zxvf myhome.tar.gz -C /opt/myhome/
实例4:将ab.tar.gz解压到当前目录下
tar -zxvf ab.tar.gz
(1)功能:zip压缩文件,unzip解压文件
(2)语法:
zip [选项] XXX.zip 压缩文件或目录
unzip [选项] XXX.zip
(3)选项:
-r 递归压缩,压缩目录的
-d 解压后文件存放的目录
(4)应用:
案例1将/home下的所有文件压缩成mypackage.zip
zip -r mypackage.zip /home
案例2将mypage.zip解压到/opt/tmp
unzip -d /opt/tmp/ mypackage.zip
(1)功能:gizp压缩文件,gunzip解压文件
(2)语法:
gzip 文件
gunzip 文件.gz
(3)应用:
案例1:gzip压缩,将/home下的hello.txt压缩
gzip /home/hello.txt
案例2:gunzip解压,将/home下的hello.txt.gz解压
gunzip /home/hello.txt.gz
(1)功能:查找文件
(2)语法:find [搜索范围] [选项] 文件名
(3)选项:
选项 | 功能 |
---|---|
-name<查询方式> | 按照指定的文件名查找模式查找文件 |
-user<用户名> | 查找属于指定用户名所有文件 |
-size<文件大小> | 按照指定的文件大小查找文件. |
(4)应用:
案例1:查找/home目录下的hello.txt文件
find /home -name hello.txt
案例2:查找/opt目录下的用户名为wzl的所有文件
find /opt -user wzl
案例3:查找linux下大于20m的文件
find / -size +20M
案例4:查找linux下所有的.txt文件
find / -name *.txt
(1)功能:定位文件路径
(2)语法:locate 搜索文件
(3)选项:每次用之前,使用updatedb指令更新数据库
(4)应用:快速定位hello.txt文件所在的目录 locate hello.txt
(1)功能:grep过滤查找,管道符|将前一个命令的处理结果继续执行
(2)语法:grep [选项] 查找内容 源文件
(3)选项:
选项 | 功能 |
---|---|
-n | 显示匹配行及行号 |
-i | 忽略字母大小写 |
(4)应用:
请在hello.txt文件中,查找”yes”所在行,显示行号
cat wang.txt | grep -ni yes (忽略大小写)
cat wang.txt | grep -n yes (区分大小写)
全部0条评论
快来发表一下你的评论吧 !