Linux笔记
Linux笔记
Huang_ChunLinux的目录结构
- Linux的目录是一个树形结构
- Linux没有盘符这个概念,只有一个根目录==/==,所有文件都在它下面
- 在Linux系统中,路径之间的层级关系,使用:==/==来表示
- 如:==/user/hello.txt==
Linux命令
Linux命令基础格式
- 命令:即Linux操作指令,是系统内置的程序,可以以字符化的形式去使用
- 命令行:即Linux终端,可以提供字符化的操作页面共命令执行
Linux命令的通用格式
1 command [-options] [paramenter]
- 命令本体,即命令本身
- 可选项,控制命令的行为细节
- 可选参数,控制命令的指向目标
ls命令入门
作用:列出目录下的内容
语法:
1 ls [-a -l -h] [Linux路径]
- -a -l -h是可选的选项
- Linux路径是此命令可选的参数
当不适用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容。
- Home目录:每一个用户在Linux系统的专属目录,默认在:/home/用户名
- 当前工作目录:Linux命令行在执行命令的时候,需要一个工作目录,打开命令行程序(终端)默认设置工作目录在用户的HOME目录。
- ls命令的参数的作用:可以指定要查看的文件夹(目录)的内容,如果不给定参数,就查看单钱工作目录的内容
- ls命令的选项
- -a 选项,可以展示出隐藏的内容, 以==.==开头的文件或文件夹默认被隐藏,需要-a才能显示 出来。
- -l 选项,以列表的形式展示内容,并展示更多细节
- -h 选项,需要和-l选项搭配使用,以更加人性化的形式显示文件的大小单位
- 命令的选项的组合使用:如:ls -alh,等同于 ls -a -l -h。
cd命令(change directory)
作用:切换当前工作目录
语法:
1 cd [linux路径]
- 没有选项,只有参数,表示目标路径
- 使用参数,切换到指定路径
- 不使用参数,切换工作目录到当前用户的HOME
pwd查看当前工作目录(print work directory)
- 作用: 输出当前所在的工作目录
- 没有选项,没有参数,直接使用即可
相对路径和绝对路径
- 相对路径:以根目录做起点,描述路径的方式,路径以==/==开头
- 相对路径:以当前目录做起点,描述了解你的方式,路径不需要以==/==开头
- 特殊路径符:
- . 表示当前目录,比如cd . 或cd ./Desktop
- .. 表示上一级目录,比如: cd .. 或cd ../..
- ~ 表示用户的HOME目录,比如:cd ~ 或cd ~/Desktop
mkdir创建新目录(文件夹)(make directory)
作用:创建新的目录
语法:
1 mkdir [-p] [Linux路径]
参数必填,表示要创建的目录的路径,相对、绝对、特殊路径符都可以使用
-p 选项的作用:可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录。
touch创建文件
作用:创建文件
语法:
1 touch [linux路径]
- touch命令无选项,参数必填,表示要创建的文件路径,相对,绝对,特殊路径符均可以使用
cat查看文件内容
作用:查看文件内容
语法:
1 cat [linux路径]
- cat没有选项,只有必填参数,参数表示:被查看的文件路径,相对,绝对,特殊路径符 都可以使用。
more命令查看文件内容
作用:用于查看文件内容,可翻页查看
语法:
1 more [Linux路径]
- 参数必填,表示要查看的文件的路径,相对,绝对,特殊路径符都可以使用
- 使用空格进行分页,使用q退出查看
cp命令复制文件文件夹copy
作用:复制文件、文件夹
语法:
1 cp [-r] 参数1 参数2
- -r 选项,可选,用于复制文件夹使用,表示递归
- 参数1,Linux路径,表示被复制的文件或文件夹
- 参数2,Linux路径,表示要复制去的地方
mv移动文件或文件夹 move
作用:移动文件或文件夹
语法:
1 mv 参数1 参数2
- 参数1,Linux路径,表示被移动的文件或文件夹
- 参数2,Linux路径,表示要移动到的地方,如果目标不存在,则进行改名。
rm删除文件、文件夹remove
作用:用于删除文件,文件夹
语法:
1 rm [-r -f]参数1 参数2 ...参数N
- 同cp一样,-r选项用于删除文件夹
- -f表示force,强制删除(不会弹出提示确认信息)
- 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
- 所以一般普通用户用不到-f选项
- 参数1、参数2、…表示要删除的文件或文件夹路径,按照空格隔开。
通配符==*==用来模糊匹配,例如:
- test*, 不是匹配任何以test开头的 内容
- *test,表示匹配任何以test结尾的内容
- *test *,表示匹配任何包含test的内容。
which命令
作用:查看所使用的一系列命令的程序文件存放在哪里
语法:
1 which [要查找的命令]
find命令
按文件名查找文件
作用:根据文件名查找文件
语法:
1 find 起始路径 -name "被查找文件名"可使用通配符
按文件大小查找文件
语法:
1 find 起始路径 -size +或-n[KMG]
- +、-表示大于和小于
- n表示大小数字
- KMG表示大小单位,k表示kb,M表示MB,G不是GB
grep命令
作用:从文件中通过关键字过滤文件行
语法:
1 grep [-n] 关键字 文件路径
- 选项-n,可选,表示在结果中显示匹配的行的行号
- 参数,关键字,必填,表示过滤的关键字,带有空格或其他特殊符号,建议使用==“”==将关键字包围起来。
- 参数,文件路径,必填,表示要过滤内容文件路径,可作为==内容输入端口==。
wc命令
作用:统计文件的行数,单词数量等
语法:
1 wc [-c -m -l -w] 文件路径
- 选项,-c,统计bytes数量
- 选项,-m,统计字符数量
- 选项,-l,统计行数
- 选项,-w,统计单词数量
- 参数,文件路径,被统计的文件,可作为==内容输入端口==。
管道符 |
含义:将管道符左边命令的结果,作为左边命令 的输入。
echo命令
- 作用:输出指定内容(同编程语句print)
- 语法:echo 输出的内容
反引号`
- 作用:被包围的内容,会被作为命令执行,而非普通字符。
重定向符
- “>”: 将左侧命令的结果,覆盖写入到符号右侧指定的文件中
- “>>”:将左侧命令的结果,追加写入到符号右侧指定的文件中
tail命令
- 作用:查看文件尾部内容,并可以持续跟踪
- 语法:tail [-f -num] Linux路径
- -f:持续跟踪
- -num启动的时候查看尾部多少行,默认10
vi/vim编译器
- 命令模式:所敲的按键编译器都理解为命令,以目录驱动执行不同的功能,此模式下,不能自由执行文本编译
- 输入模式:也就是所谓编辑模式,插入模式,可以对文件内容进行自由编辑
- 底线命令模式:以==:==开始,通常用于文件的保存,退出
- 语法:vi/vim 文件路径
- 如果文件路径不存在则编辑新文件,否则编辑已有文件。
- 命令模式快捷键:
- 底线命令模式快捷键
Linux用户和权限
su命令(Switch User)和exit命令
作用:切换root账户
语法:
1 su [-] [用户名]切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:==Ctrl + d==
sudo命令
作用:为普通的命令授权,临时一root身份执行
语法:
1 sudo 其他命令
- 在其他命令之前,带上sudo,即可为这一条命令临时赋予root授权
- 但是并不是所有的用户,都有权利使用sudo,我们需要为==普通用户配置sudo认证==
为普通用户配置sudo认证
切换到root用户,执行visudo命令,会自动通过vi编辑器打开: /etc/shudoers
在文件的最后添加:
1 huangchun ALL=(ALL) NOPASSWD:ALL其中最后的NOPASSWD: ALL表示使用sudo命令,无需输入密码
最后通过wq保存
用户组
需要root用户执行
创建用户组:
1 groupadd 用户组名删除用户组:
1 groupdel 用户组名
用户
需要root用户执行
创建用户:
1 useradd [-g -d]用户名
-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已将存在,如已存在同名组,必须使用-g
-d指定用户HOME路径,不指定,HOME目录默认在:/home/用户名
删除用户:
1 userdel [-r] 用户名
- -r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留
查看用户所属组:
1 id [用户名]
- 用户名,被查看的用户,如果不提供则查看自身
修改用户所属组:
1 usernod -aG 用户组 用户名—将指定用户加入指定用户组。
getent
作用:查看当前系统中有哪些用户
语法:
1 getent passwd
- 共有7份信息,分别是:用户名:密码(x):用户id:组id:描述信息:HOME目录:执行终端(默认bash)
作用:查看当前系统中有哪些用户组
语法:
1 getent group
查看权限控制信息
chmod命令
作用:修改文件、文件夹的权限信息。
语法:
1 chmod [-R] 权限 文件或文件夹
- -R,对文件夹内的全部内容应用同样的操作
chown
- 作用:修改文件、文件夹的所属用户和用户组—==root用户执行此命令==
- 语法:chown [-R] [用户] [:] [用户组] 文件或文件夹
- -R 同chmod,对文件夹内全部内容应用相同规则
- 用户,修改所属用户
- 用户组,修改所属用户组
- :,用于分隔用户和用户组
快捷键
- ctrl+c:强制停止,退出当前输入,重新输入
- Ctrl+d:退出或登出
- history:查看历史输入过的命令,通过!前缀自动执行上一次匹配前缀的命令
- Ctrl+r,输入内容去匹配历史命令
- Ctrl+a:跳到命令开头
- Ctrl+e:跳到命令结尾
- Ctrl+左键:向左挑一个单词
- Ctrl+右键:向右跳一个单词
- 清屏:Ctrl+l,clear
yum命令
- 作用:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题
- 语法:yum [-y] [install] [remove] [search] 软件名称
- -y,自动确认,无需手动确认安装或卸载过程
- install:安装
- remove:卸载
- search:搜索
- 需要切换到root,需要联网
systemctl命令
- 作用:控制内置或第三方软件的启动、停止、开机自启
- 语法:systemctl start | stop|status|enable|disable 服务名
- start:启动
- stop:关闭
- status:查看状态
- enable:开启开机自启
- disable:关闭开机自启
ln命令
- 作用:在系统中创建软连接,可以将文件。文件夹连接到其他位置,类似Windows系统中的快捷方式
- 语法: ln -s 参数1 参数2
- -s:创建软连接
- 参数1:被连接的文件或文件夹
- 参数2:要连接去的目的地
date命令
- 作用:查看系统时间
- 语法:date [-d] [+格式化字符串]
- -d按照给定的字符串显示日期,一般用于日期计算
- 格式化字符串:通过特定字符串标记,来控制显示的日期格式
- 使用双引号包围格式化字符串,作为整体
修改Linux时区
ntp的作用
自动联网同步时间
IP地址
- 定义:每一台联网的电脑都会有一个地址,用于和其他计算机进行通讯
- IPv4版本的地址格式是:a.b.c.d,其中abcd表示0-255的数字,如192.168.88.101
- 特殊IP地址:
- 127.0.0.1,这个IP地址用于代指本机
- 0.0.0.0
主机名
主机的名称,用于标识一个计算机
域名解析
- 可以通过主机名找到对应计算机的IP地址,这就是主机名映射(域名解析)
虚拟机配置固定IP
- 在VMware中配置IP地址网关和网段(IP地址的范围)
- 在Linux系统中修改固定IP
网络传输
ping命令
- 作用:检查指定的网络服务器是否连通
- 语法:
ping [-c num] IP或主机名
- -c,检查的次数,不使用-c选项,将无限次数持续检查
- IP或主机名,被检查的服务器的IP地址或主机名地址
wget
- 作用:进行网络文件下载
- 语法:
wget [-b] URL
- -b,后台下载
curl
- 作用:发起网络请求
- 语法:
curl [-O] url
- -O,用于下载使用
端口
- 计算机==程序==之间的通讯,通过IP只能锁定计算机,但是无法设定具体的程序
- 通过端口可以设定计算机上==具体的程序==,确保程序之间进行沟通
- IP地址相当于小区地址,在小区可以有许多住户(程序),而门牌号(端口)就是各个住户(程序)的联系地址
nmap命令
- 作用:查看指定ip的对外暴露端口
- 语法:nmap ip地址
netstat命令
- 作用:查看本机指定端口号的占用情况
- 语法:netstat -anp | gerp 端口号
进程
进程是指程序在操作系统呃逆运行后被注册为系统内的一个进程,并拥有独立的进程ID(进程号)
ps命令
- 作用:管理进程的命令
- 语法: ps -ef查看进程信息
- ps -ef|grep 关键字 过滤指定关键字进程信息
- kill [-9] 进程号 关闭指定进程号的进程
主机状态
top命令
- 作用:查看CPU
- 语法:top
df命令
- 作用:查看磁盘使用率
- 语法: df [-h]
iostat
- 作用:查看磁盘速率等信息
- 语法:iostat [-x] [num1] [num2]
- -x,显示更多信息
sar
- 作用:查看网络情况
- 语法:sar -n DEV
- -n,查看网络,DEV不是查看网络接口
环境变量
- 定义:环境变量是操作系统在运行的时候,记录的一些关键性信息,用以辅助系统运行。
- 在Linux系统中执行:env命令即可查看当前系统中记录的环境变量
- 通过$符号,可以取出环境变量的值
PATH
- 环境变量PATH会记录一组目录,目录之间用: 隔开。这里记录的是命令的路径,当执行命令会从记录中记录的目录中搜索要执行的命令并执行。
- 可以通过修改这个项目的值,加入自定义的命令搜索路径。如export PATH=$PATH:自定义路径
- 修改环境变量
- 临时生效:export 名称=值
- 永久生效:
- 针对用户:~/.bashrc文件中配置
- 针对全部用户:/etc/profile文件中配置
- 配置完成,可以通过source命令立刻生效
上传,下载文件
浏览文件系统,找到合适的文件,右键点击下载,即可传输到本地电脑
浏览文件系统,找到合适的目录,将本地电脑的文件拖拽进入,即可方便的上传数据到Linux中
rz,sz命令
- 通过yum -y install lrzsz可以安装此命令
- rz进行文件上传
- sz进行文件下载
压缩、解压
tar命令
- 作用:进行压缩和解压缩的操作
- 语法:tar [-c -v -x -f -z -C] 参数1 参数2 参数N
zip
- 作用:压缩文件为zip压缩包
- 语法:zip [-r] 参数1 参数2
- -r,被压缩的包含文件夹的时候,需要使用-r选项,和rm,cp等命令的-r效果一致。
unzip
- 作用:解压zip压缩包
- 语法:unzip [-d] 参数
- -d,指定要解压去的位置,同tar的-C选项
- 参数,被解压的zip压缩包文件