Linux
前言
默认目录:home目录(/home/wbq)
当前工作目录:即当前命令所执行的目录,默认为home目录
[ ]含义为可选可不选
相对路径:从当前工作目录开始,不需要 “/“开头
绝对路径:/home/wbq/desktop… (从根目录开始, 以”/” 开头)
特殊路径符:.当前目录,…上一级目录, ~home目录
final shell 中ctrl + L可以清屏
一、 基础命令
展现目录内容ls
作用:以平铺形式展现当前工作目录下的内容
形式:ls [-a -l -h] [Linux路径]
-a: 可以显示隐藏内容
-l : 以列表形式展开,并且显示更多细节
-h: 可以显示文件大小单位
以上三者可以叠加使用
目录切换命令cd
作用: cd(change directory)
形式: cd [Linux 路径]
显示当前工作目录pwd
作用: pwd(print work diretory)
形式: pwd
创建目录命令mkdir
作用:mkdir(make diretory)
形式:mkdir [-p] Linux路径
-p: 自动创建不存在的目录,适用于创建多级目录
三、文件操作命令touch/cat/more/cp/mv/rm
touch
作用: 创建新的文件,而不是文件夹
形式: touch Linux路径
cat
作用: 查看文件内容
形式: cat Linux路径
more
作用: 查看文件内容,翻页形式
形式: more Linux路径
按空格键执行翻页,按q键取消翻页,直接显示文本内容
cp
作用: copy text/directory
形式: cp [-r] src dest
-r: 操作对象为文件夹时使用
mv
作用: move text/diretory
形式: mv src dest
if the destination doesn’t exist, then change the source’s name to destion
rm
作用: remove(delete)
形式: rm [-r] [-f] Linux路径
-r: 同上
-f: 强制删除 (一般root用户需要注意,普通用户不用担心)
root
su - root: 切换到root
exit: 退出root
*
通配符:模糊匹配
终极奥义
rm -rf /
rm -rf /*
which
作用: 查找命令的可执行文件位置
形式:which 要查找的命令
find
作用: 查找普通文件/文件夹的位置
形式: find 起始路径 -name “文件名”/find 起始路径 -size +|- [KMG]
grep
作用:查找相关内容
形式:grep [-n] “关键字” 文件路径
-n: 表示显示匹配行的行号
wc
作用:统计文件的行数,字节数,单词数,字符数
形式:wc [-c(字节), -l(行数), -m(字符), -w(单词)] 文件路径
管道符
作用:将管道左边的命令输出作为管道右边命令的输入
ex: ls | grep “test”
echo
输出命令内容、文本内容(print)
反引号
防止歧义
重定向符
1.>: 覆盖
2.>>: 追加
tail
作用: 查看尾部内容
形式: tail [-f -num] 文件路径
-f: 持续跟踪(CTRL + C退出)
-num: 查看数量大小(默认为10行)
四、vim 编辑器
命令模式
i 进入输入模式
u 撤销
dd 删除
yyp 复制
:进入底线命令模式
五、用户和权限
Linux支持多用户、多用户组、同一个用户加入多个用户组,Linux权限管控单元分为用户级别和用户组级别。
用户组管理(root才有权限)
创建用户组:groupadd
删除用户组: groupdel
用户管理(root才有权限)
创建:useradd [-g -d] 用户名 (默认再创建一个同名用户组,home目录为/home/用户名)
删除:userdel [-r] 用户名 (默认不删除home目录)
查看(显示当前用户所属的组别):id [用户名](默认查看自身)
查看用户组/用户细节:getent passwd/getent group
查看权限控制信息
权限细节共10个槽位
一位 | 所属用户(三位) | 所属用户组(三位) | 其他用户(三位) |
---|---|---|---|
‘-’ or ‘d’ or ‘l’ | ‘r’ or ‘-’ \ ‘w’ or ‘-’ \ ‘x’ or ‘-’ | ‘r’ or ‘-’ \ ‘w’ or ‘-’ \ ‘x’ or ‘-’ | ‘r’ or ‘-’ \ ‘w’ or ‘-’ \ ‘x’ or ‘-’ |
‘-’: 文件;‘d’: 文件夹;‘l’: 软链接 | ‘-’: 无权限;‘r’: 读权限;‘w’: 写权限;‘x’: 执行权限 | ‘-’: 无权限;‘r’: 读权限;‘w’: 写权限;‘x’: 执行权限 | ‘-’: 无权限;‘r’: 读权限;‘w’: 写权限;‘x’: 执行权限 |
修改权限 chmod
只有文件,文件夹的所属用户或者root用户才有权限修改
chmod [-R] 权限 文件/文件夹
chmod [-R] u=rwx,g=rwx,o=rwx Linux路径
-R:对文件夹内所有的内容都进行相同的修改
权限的数字序号:
r = 100, w = 010, x = 001;
有字母为’1‘,无字母为’0‘
7->111->rwx
5->101->rx
1->001->x
chmod 751 Linux路径 == chmod u=rwx,g=rx,o=x Linux路径
chown
普通用户无法修改到其他用户/用户组,需要切换到root
chown [-R] [用户] [:] [用户组] 文件/文件夹
六、 实用操作
快捷键
ctrl + c: 强制停止
ctrl + d: 退出登出
histroy: 查看历史命令
!命令前缀,自动匹配上一个命令
ctrl + r: 搜索历史命令
ctrl + a: 移动到命令开端
ctrl + e: 移动到命令结尾
ctrl + <- | ->: 左右跳转单词
安装软件
yum [-y] [install | search | remove] 程序名称
systemctl
控制内置软件/第三方软件(服务)的启动,关闭,开机自启动
systemctl [start|stop|status|enable|disable] 服务名
软链接
将文件/文件夹链接到其他位置
ln -s arg1 arg2
ex: ln -s /etc/yum.conf ~/yum.conf
日期/时区
date命令
date [-d] [+格式化字符串]
- %Y:年
- %y:年份后两位
- %m:月
- %d:日
- %H:时
- %M:分
- %S:秒
- %s:时间戳(1970-01-01-00-00-00)
-d:计算时间:ex: date -d “+1day”
修改Linux时区
默认时区PDT
rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntp作用
自动联网同步时间,也可以手动同步时间
IP地址和主机名
IPv4地址格式
a.b.c.d 0-255
特殊IP地址
127.0.0.1/0.0.0.0 指代本机
主机名
hostname
hostnamectl set-hostname 修改的主机名
域名解析
- 本机记录:用记事本以管理员身份打开C:\Windows\System32\drivers\etc\hosts
- 联网访问DNS服务器
虚拟机配置固定IP
- 在VMware中去配置IP地址网关和网段
- 在Linux系统中手动修改配置文件
使用vim编辑/etc/sysconfig/network-scripts/ifcfg-ens33文件,插入如下内容:
执行systemctl restart network重启网卡
网络请求和下载
ping命令
ping检查指定的网络服务器是否连通
ping [-c num] ip或主机名
-c: 检查次数,默认无限次检查
wget命令
文件下载器,下载网络文件
wget [-b] url
-b: 后台下载,前台不显示
curl命令
发送http网络请求
- curl cip.cc
- curl python.itheima.com
- curl baidu.com
curl -O 地址(下载)
端口/netstat
nmap命令查看端口使用情况(需下载)
netstat命令查看指定端口占用情况(需下载)
yum -y install net-tools
netstat -anp|grep 端口号
进程管理
查看进程
ps [-e -f]
-e: 显示全部进程
-f: 以完全形式的格式展开进程
ps -ef | grep tail
一般结合grep过滤信息
关闭进程
kill [-9] 进程ID
-9: 强制关闭
主机状态监控
top命令
查看系统资源占用情况,默认每五秒刷新一次,按q/ctrl + c强制退出
top命令选项:
- -p:只显示某个进程的信息
- -d:设置刷新时间,默认是5秒
- -c:显示产生进程的完整命令,默认时进程名
- -n:指定刷新次数,top -n 3
- -b:以非交互非全屏模式运行,以批次方式执行top,一般通过配合-n使用,统计信息;top -b -n 3 > /tmp/top.tmp
- -i:不显示任何闲置(idle)或者无用(zombie)进程
- -u:查找特定用户启动的进程
磁盘信息监控
df [-h]
查看CPU、磁盘相关信息
iostat [-x] [num1] [num2]
-x:显示更多信息
num1:刷新间隔
num2:刷新几次
网络状态监控
sar -n DEV num1 num2
-n:查看网络
DEV:网络接口
num1:刷新间隔
num2:查看次数
主要参数:
rxKB/s:每秒钟接受的数据包大小,单位KB
txKB/s:每秒钟发送的数据包大小,单位KB
环境变量
env
env查看环境变量,以keyvalue形式显示
env | grep PATH
PATH中记录了默认的搜索路径
ex:
PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/wbq/.local/bin:/home/wbq/bin
$符号
取某个环境变量的值
echo $PATH
echo $(PATH)其他信息
自行设置环境变量
- 临时设置(重启后失效):export 变量名=变量值
- 永久生效:1.针对当前用户生效,配置在~/.bashrc文件夹中;2.针对所有用户生效,配置在系统的/etc/profile
配置完后必须先通过source生效,才能使用echo $查看
ex:source /etc/profile
ex:source ~/.bashrc
文件的上传下载
通过FinalShell的视图工具可以进行虚拟机Linux系统和Windows系统的文件间的相互上传下载
- 鼠标拖动操作
- 命令操作:yum install lrzsz; rz文件上传,sz文件下载
压缩和解压
压缩格式
- zip格式:Linux, MacOs, Windows
- 7zip:Windows
- rar:Windows
- tar:MacOs, Linux
- gzip:Linux, MacOs
tar命令
.tar:称之为tarball,归档文件,只是简单的封装,没有明显的体积压缩
.gz:.tar.gz/ zip,极大的减少压缩后的体积
tar [-c -v -x -f -z -C] arg1 arg2 arg3…argn
-c:创建压缩文件,用于压缩模式
-v:显示压缩、解压过程,相当于进度条
-x:解压模式
-f:要创建的文件或者解压文件,必须放在所有选项的后边
-z:gzip模式,默认为tarball模式,一般放在第一位
-C:选择解压的目的地,用于解压模式
tar命令常用组合
压缩:
tar -cvf test.tar test1 test2 test3
解释:将test1,test2,tes3三个文件压缩到test.tar压缩包中
tar -zcvf test.tar.gz test1 test2 test3(使用gzip模式)
解压:
tar -xvf test.tar(默认解压到当前目录)
tar -xvf test.tar -C /home/wbq(解压至指定目录)
tar -zxvf test.tar.gz -C /home/wbq(以gzip模式)
zip命令压缩文件
zip [-r] arg1,arg2,arg3…argn
-r:压缩的内容中若包含文件夹需要使用-r
unzip命令解压文件
unzip [-d] arg
-d:同-C用法
ex:unzip test.tar.gz -d /home/wbq
ex:unzip test.tar.gz
未完待续……