Linux_基础篇
欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神!
题目:基础命令整合
版本号 : 1.0,0 作者 : @老王要学习 日期 : 2025.05.09 适用环境 : Centos7
文档说明
本文档为《Linux 基础篇命令整合表》,版本 1.0.0,适用于 CentOS 7 环境。内容涵盖文件目录操作、系统信息监控、网络工具、文本处理等核心命令,包含指令功能描述及实战演示。旨在为 Linux 初学者提供全面且易于理解的命令参考,帮助快速掌握基础操作技能
环境准备
硬件要求
服务器: 2核CPU、2GB内存,20GB硬盘空间
网络: 确保服务器具有固定的IP地址,并且防火墙允许FTP端口(默认22端口)的通信
软件要求
操作系统:Centos7
FTP软件:SecureCRT
软件包:
一、文件与目录操作
指令
功能
ls
列出目录内容
cd
切换目录
pwd
查看当前目录
mkdir
创建目录
touch
创建文件
rm
删除文件或目录
cp
复制文件目录
mv
移动文件或重命名
二、文件内容查看
指令
功能
cat
查看文件内容
more/less
分页查看文件
head -n 6
查看文件前6行
tail -n 8
查看文件后8行
三、权限与用户管理
指令
功能
chmod
修改权限
chown
修改所有者
useradd lw
创建用户lw
passwd lw
给用户lw设置密码
sudo
以管理员(root权限)执行命令
四、系统信息与进程管理
指令
功能
uname -a
显示系统信息
df -h
查看分区使用情况
du -sh [目录]
查看目录大小
top
查看实时监控(按CPU排序)
htop
查看实时监控(交互式界面)
ps aux
查看全部进程
kill -9 [PID]
终止进程
vmstat
虚拟内存统计
iostat
磁盘I/O统计
使用演示:
4.1显示系统信息
[root@laowang ~]# uname -a
#输出如下:
Linux laowang 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
4.2查看分区使用情况
[root@laowang ~]# df -h
#输出如下:
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 12M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mapper/centos-root 17G 5.0G 13G 30% /
/dev/sda1 1014M 151M 864M 15% /boot
tmpfs 378M 0 378M 0% /run/user/0
4.3查看目录大小
[root@laowang ~]# du -sh /etc/
#输出如下:
32M /etc/
4.4查看实时监控(按CPU排序)
[root@laowang ~]# top
#输出如下:
top - 11:39:30 up 13 min, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 104 total, 1 running, 103 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 3861288 total, 3448576 free, 233948 used, 178764 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 3411920 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 125384 3864 2584 S 0.0 0.1 0:00.88 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
5 root 20 0 0 0 0 S 0.0 0.0 0:00.06 kworker/u256:0
6 root 20 0 0 0 0 S 0.0 0.0 0:00.03 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.04 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 S 0.0 0.0 0:00.14 rcu_sched
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-drain
4.5查看实时监控(交互式界面)
#安装htop(最小化安装没有包)
yum -y install htop
4.6查看进程
#查看截取Python进程
[root@laowang ~]# ps aux | grep python
#输出如下:
root 955 0.0 0.4 574280 17464 ? Ssl 11:26 0:00 /usr/bin/python2 -Es /usr/sbin/tuned -l -P
root 8109 0.0 0.0 112828 988 pts/0 S+ 11:45 0:00 grep --color=auto python
4.7虚拟内存统计
[root@laowang ~]# vmstat
#输出如下:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 3275552 2108 346124 0 0 44 14 39 78 0 0 100 0 0
4.8磁盘I/O统计
#安装sysstat
yum install sysstat -y
#使用演示
[root@laowang ~]# iostat
#输出如下:
Linux 3.10.0-1160.el7.x86_64 (laowang) 2025年05月09日 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.07 0.00 0.19 0.01 0.00 99.73
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 3.20 86.79 27.43 311476 98447
scd0 0.01 0.29 0.00 1028 0
dm-0 2.98 81.60 23.11 292864 82939
dm-1 0.02 0.61 0.00 2204 0
五、网络工具
指令
功能
ping
测试网络连接性
ifconfig/ip
查看网络接口
netstat -tulpn
显示网络连接
ss -tulpn
显示所以监听端口
crul/wget
下载文件
使用演示:
5.1测试网络连接性
[root@laowang ~]# ping www.baidu.com
#输出如下:
PING www.a.shifen.com (39.156.70.46) 56(84) bytes of data.
64 bytes from 39.156.70.46 (39.156.70.46): icmp_seq=1 ttl=128 time=6.39 ms
64 bytes from 39.156.70.46 (39.156.70.46): icmp_seq=2 ttl=128 time=5.88 ms
64 bytes from 39.156.70.46 (39.156.70.46): icmp_seq=3 ttl=128 time=21.3 ms
64 bytes from 39.156.70.46 (39.156.70.46): icmp_seq=4 ttl=128 time=5.86 ms
64 bytes from 39.156.70.46 (39.156.70.46): icmp_seq=5 ttl=128 time=8.01 ms
^C
--- www.a.shifen.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5008ms
rtt min/avg/max/mdev = 5.862/9.057/21.322/5.533 ms
5.2查看网络接口
5.2.1ifconfig
[root@laowang ~]# ifconfig
#输出如下:
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.174.10 netmask 255.255.255.0 broadcast 192.168.174.255
inet6 fe80::20c:29ff:fe50:fbad prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:50:fb:ad txqueuelen 1000 (Ethernet)
RX packets 1222 bytes 528893 (516.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 745 bytes 166760 (162.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
5.2.2ip
[root@laowang ~]# ip addr show
#输出如下:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:50:fb:ad brd ff:ff:ff:ff:ff:ff
inet 192.168.174.10/24 brd 192.168.174.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe50:fbad/64 scope link
valid_lft forever preferred_lft forever
5.3查看网络连接
#安装netstat
yum install net-tools -y
#使用演示:
[root@laowang ~]# netstat -tulpn
#输出如下:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 953/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1291/master
tcp6 0 0 :::22 :::* LISTEN 953/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1291/master
udp 0 0 127.0.0.1:323 0.0.0.0:* 673/chronyd
udp6 0 0 ::1:323 :::* 673/chronyd
5.4显示所以监听端口
[root@laowang ~]# ss -tulpn
#输出如下:
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
udp UNCONN 0 0 127.0.0.1:323 *:* users:(("chronyd",pid=673,fd=5))
udp UNCONN 0 0 [::1]:323 [::]:* users:(("chronyd",pid=673,fd=6))
tcp LISTEN 0 128 *:22 *:* users:(("sshd",pid=953,fd=3))
tcp LISTEN 0 100 127.0.0.1:25 *:* users:(("master",pid=1291,fd=13))
tcp LISTEN 0 128 [::]:22 [::]:* users:(("sshd",pid=953,fd=4))
tcp LISTEN 0 100 [::1]:25 [::]:* users:(("master",pid=1291,fd=14))
[root@laowang ~]#
5.5下载文件
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#安装
yum -y isntall wget
#演示如下
wget -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
六、文本处理
指令
功能
grep
文本搜索
sed
文本替换
awk
文本处理
sort
排序
uniq
去重
七、系统版本与内核信息
指令
功能
lsb_release -a
查看Linux发行版信息
cat /etc/os-release
查看操作系统详细信息
hostnamectl
查看主机信息
使用演示:
7.1查看Linux发行版信息
#安装lsb_release
yum install redhat-lsb-core -y
#使用演示
[root@laowang ~]# lsb_release -a
#输出如下:
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.9.2009 (Core)
Release: 7.9.2009
Codename: Core
7.2查看操作系统详细信息
[root@laowang ~]# cat /etc/os-release
#输出如下:
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
7.3查看主机信息
[root@laowang ~]# hostnamectl
#输出如下:
Static hostname: laowang
Icon name: computer-vm
Chassis: vm
Machine ID: 9deafbb4353148659d3b6924312a0b9f
Boot ID: cd90d5f6a8fe4c31bd8bd6e8c7a356de
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-1160.el7.x86_64
Architecture: x86-64
[root@laowang ~]#
八、其他常用命令
指令
功能
man ls
查看ls命令手册
echo
输出文本
|
连接命令(管道符)
>
输出重定向(覆盖)
>>
输出重定向(追加)
九、新手教程
指令
功能
ls --help
查看ls命令选项
键盘Tab键
自动补全命令
history
查看历史命令记录
cp [文件] [文件backup]
操作文件先进行备份