Linux基础命令总结
目录
- 1. 快捷键
- 2. 获取帮助
- 3. 文件夹操作
- 4. 文件操作
- 5. 查看文件
- 6. 修改主机名
- 7. Linux文件类型
- 8. Linux目录结构
- 9. 查看磁盘信息
- 10. 绝对路径和相对路径
- 11. 查看已执行的历史命令
- 12. alias命令别名
- 13. 重定向
- 14. Linux 用户管理
- 15. Linux文件权限
- 16. vi编辑器
- 17. 进程
- 18. 服务——后台运行的进程
- 19. ssh配置密钥
- 20. 文件归档
- 21. 日志文件
- 软件安装
1. 快捷键
C = ctrl
- C+U:行末删除到行首
- C+L:等同于clear,清屏
- C+K:行首删除到行末
- C+c:停止当前运行的命令
- C+Z:终止当前运行的命令进程
- C+W:向左删除一个选项
- C+左右方向键:向左\右移动一个选项位
2. 获取帮助
- <命令> --help:关于命令的简短帮助手册
- man <命令>:显示关于命令的完整使用手册
- help:显示当前shell自带的命令
- info <命令>
3. 文件夹操作
- mkdir:创建一个空目录
- -p:创建父文件夹
- mkdir <目录名> <目录名>:在当前的目录下创建多个目录
- rmdir:删除一个空文件夹
- (高危操作)rm:删除文件或文件夹
- -r:递归删除
- -f:忽略任何提示
4. 文件操作
- touch <文件名>:创建一个空文件
- vi <文件名>:保存后得到空文件
- echo > <文件名>:创建文件
- mv [options] 源文件或目录 目标文件或目录
5. 查看文件
- cat:显示文件的所有内容,无格式化
- less:显示文件的一页,可上下翻页,可查找,并高亮显示
- more:显示文件的一页内容,可下翻页
- vi:可查看、可编辑、可查找
- head -n 行数 某个文件
- tail -n 行数 某个文件
6. 修改主机名
- 修改配置文件/etc/hostname (重启生效)
- hostnamectl set-hostname <主机名> (实时生效)
7. Linux文件类型
- 通过长格式查看文件属性,第一个字符代表类型
- -:文件
- d:目录
- l:链接文件
- b:块设备(磁盘、u盘、光盘)(最小可操作的单位为块)
- c:字符设备(远程终端)
8. Linux目录结构
centOS7.5
@startsalt
{
{T
+ /
+++ /home "用户主目录的基点"
+++ /root "超级用户的目录"
+++ /usr "最大的目录,存放着应用程序和文件"
++++ /bin "二进制可执行命令。该目录下存放着普通用户的命令"
++++ /lib "存放着和系统运行相关的库文件"
++++ /sbin "系统的管理命令,这里存放的是系统管理员使用的程序"
++++ /lib64 "存放着和系统运行相关的库文件 "
+++ /etc "系统或应用的配置文件(修改后需要重启系统或重启服务)"
+++ /dev "设备文件,实时更新"
+++ /boot "引导Linux内核的程序和文件"
+++ /mnt "挂载点"
+++ /media "存放着可移除的设备,比如软盘,光盘"
+++ /var "日志文件、网页服务的文件、缓存文件"
+++ /misc "储存着一些特殊的字符的定义"
+++ /tmp "临时文件,重启后自动清空"
+++ /opt "主要给源码安装软件时选择的安装目录位置"
+++ /proc "存放着用户与内核的交互信息"
+++ /sbin "系统的管理命令,这里存放的是系统管理员使用的程序"
+++ /sys "管理设备文件"
+++ /srv "系统启动服务时可以访问的数据库目录"
+++ /run "程序或服务启动"
}
}
@endsalt
9. 查看磁盘信息
- lsblk 查看分区和磁盘
- df -h 查看空间使用情况
- fdisk -l 分区工具查看分区信息
- cfdisk /dev/sda 查看分区信息
10. 绝对路径和相对路径
- 绝对路径:是以根为起始
- 相对路径:是以当前工作目录的位置为起始
- 在每个文件夹内默认都会有两位文件夹
- . :当前工作路径
- .. :当前工作路径的上一级目录
- pwd:查看当前工作路径
11. 查看已执行的历史命令
- Shell下按上/下方向键
- history:显示当前终端的所有历史命令
- !<历史命令行号>:直接执行行号对应的命令
12. alias命令别名
命令:alias <别名>=‘<shell中可执行的命令>’ 添加别名
命令:unalias <别名> :删除别名
13. 重定向
一个进程运行时,有标准输入输出、错误。分别采用不同的通道进行信息交互,0、1、2
可以使用重定向符改变标准输出和错误的显示位置
- >:将标准输出重定向到文件
- >>: 将标准输出重定向到文件(写入方式为追加)
- 2>:将标准错误重定向到文件
- &>:将标准输出和错误重定向到文件
- |:管道符,可以将一个命令的标准输出,作为另一个命令的标准输入
- <执行的命令(可以产生标准输出)> | <接收信息的命令>
yum | grep un
14. Linux 用户管理
- 三类用户:
- 超级管理员 UID为0
- 程序用户 1-999
- 普通用户 1000+
在/etc/passwd文件中,有描述每个用户的字段,每一行代表一个用户的描述信息:
zhangsan:X:1000:1000::/home/zhangsan:/bin/bash
用户名:密码置位:UID:GID:备注:当前用户使用的home目录:用户登陆时使用的Shell(指定为nologin,该用户无法登陆)
-
在/etc/shadow中,保存着用户的密码信息,包括密码密文,密码策略
-
在/etc/group中,保存着用户组的信息,包括组名,组ID
-
useradd <用户名> 创建用户
-
usermod <选项> <用户名> 修改用户信息
-
userdel <用户名> 删除用户
-
passwd 修改密码
-
usermod 修改用户信息(用户ID、组ID、home目录、锁定、解锁定)
批量创建用户
newusers <用户定义的文件>
编写Shell脚本
15. Linux文件权限
| a | u | g | o |
|---|---|---|---|
| all | user | group | other |
| d | rwx | rwx | rwx | root | root |
|---|---|---|---|---|---|
| 文件名 | 文件所属者权限(user) | 文件所属组权限(group) | 其他用户权限(other) | 文件所属者 | 文件所属组 |
文件:644
目录:755
修改/etc/login.defs 修改末行的umask,可以改动创建用户时的Home目录权限
- chmod:修改文件或文件夹的权限
- chown:修改文件或文件夹的所属者和所属组
- chgrp:修改文件或文件夹的从属组
修改文件或文件夹的权限信息
-
字符修改
- u:文件所属者权限
- g:文件所属组权限
- o:其他用户权限
- chmod o+r <对象>
-
八进制
- 4:读
- 2:写
- 1:执行
- 0:不可操作
-
修改一个文件的全部权限就要使用a(all)或者八进制
chmod a=rwx file
或者 chmod 777 file -
修改一个文件的所有者具有读写执行权限
chmod u=rwx file
或者 chmod 700 file
16. vi编辑器
三种模式:
- 命令:打开某个文档,默认进入。任意一种模式下按ESC键
- yy:复制光标所在的一行
- y
y:向下复制光标所在的N行 - p、P:在光标下插入复制的内容、在光标上插入复制的内容
- dd:删除光标所在的一行
- d
d:向下删除光标所在的N行 - u:撤销上一次操作
- gg:跳转到文档首行
- G:跳转到文档末行
gg:跳转到文档第N行
- 输入:i、a、o、insert
- 末行:输入“:”
- set nu:显示行号
- w:保存,不退出
- :w +目录名/文件名 (另存为)
- q:没有编辑的情况下直接退出
- q!:强制退出,不保存
- s /<搜索的字符串>/<替换的字符串>:替换
- % s /
/ /gc:将文档中所有的X替换为Y,且替换前提醒 - N,M s /
/ /gc:将文档中的N到M行中所有的X替换为Y,且替换前提醒 - 66,71 s/^/#/c:将66-71行的行首替换字符为#(批量注释代码)
17. 进程
一个进程是一个运行实例的启动
一个进程是由:分配的内存地址空间
资源与安全:安全特性包括所有权证书和特权
一个或多个程序代码的执行线程
过程的状态
环境包括:
- 局部变量和全局变量
- 分配文件描述符和网络端口。
!父进程与子进程
某个进程通过自身代码调用,可以启动一个新的进程,通常情况复用进程的资源,新创建的进程作为子进程存在
- 子进程依赖父进程
- 杀死父进程,子进程跟着挂
- 父进程定义的局部变量,子进程可访问
- 子进程定义的局部变量,父进程不可访问
进程信号
-
kill
:可以终止某一个进程 -
-9:强制终止进程,无法拦截
-
-15:默认值,正常发送停止指令给进程,进程接收并清理退出
-
killall5 <进程名>
-
ps aux
-
top
-
命令后添加“&”,可以将进程放到后端运行
-
w:查看当前登陆到系统的所有用户
-
whoami:查看当前shell登陆的用户
18. 服务——后台运行的进程
服务——》网络功能——>端口号
需要守护进程(资源),保持网络功能持续提供,端口一直处于打开状态,与进程相关
- systemctl :对服务进行操作
用法:systemctl <动作> <服务的守护进程>>- start:开启
- stop:关闭
- restart:重新启动服务
- reload:重载配置文件
- enable:设置开机自启
- disable:取消开机自启
- status:查看服务状态
centOS7.5网络配置
VM的虚拟网络要与物理网络相通
VMware网络:桥接、NAT查看网卡配置文件:vi /etc/sysconfig/network-scripts/ + 某个网卡
ONBOOT=yes
修改静态IP
BOOTPROTO=none
PADDR=
NETMASK=<掩码>
GATEWAY=<网关IP>
DNS1=
DNS2=
- 重启系统或重启网络
systemctl restart network
- 开启/关闭端口
ifup <网卡名称>
ifdown <网卡名称>
- 查看接口IP
ip add
- 临时关闭防火墙
systemctl stop firewalld
- 临时关闭
selinux setenforce 0
19. ssh配置密钥
1.在SSH 客户端处,生成公钥和私钥
2.将公钥传输到服务端的~/.ssh/authorized_keys
3.开启服务端密钥认证
vi /etc/ssh/sshd_config
将PasswordAuthtication字段的参数改为no
4.重启sshd服务
service sshd status
systemctl restart sshd
5.退出当前登陆,重新使用密钥登陆
排错 sshd -t
20. 文件归档
tar:
tar [必要参数] [选择参数] [文件]
- -z:使用gzip算法压缩
- -c:创建一个名为.tar格式的包文件
- -j:使用bzip2压缩算法
- -J:使用XZ算法压缩
- -v:执行过程显示详情信息
- -f:指定压缩文件名
- -x:从压缩文件中提取文件
- -delete:删除规定文件
- --help:帮助
用法:
使用gz算法压缩文件
tar -zcvf <解压缩文件名/压缩到的目录> <将要压缩的文件>
解压GZ算法的文件
tar -zxvf <解压缩文件>
21. 日志文件
查看错误日志条目
journalctl -xe :查看系统的日志
软件安装
RPM:安装单个软件、通常需要提前准备好安装包,不会自动解决依赖关系
# 安装软件
rpm <必要参数> <某软件名>
-ivh:安装软件
-qa:查询当前已安装的软件
-e:卸载软件
YUM:可通过网络获取最新的软件包,并自动解决依赖关系
yum <参数> <包名>
install:从网络获取并安装
erase:卸载安装包

浙公网安备 33010602011771号