linux常用命令

linux常用命令(50个) - 后知、后觉 - 博客园

1. 概念

VMware Workstation :  是一款功能全面的虚拟机软件,适合开发、测试、多系统运行等场景

centos:是一款免费开源的linux发型版本 , 简单点说就是将linux内核与应用软件做一个打包

2. 命令

符号含义典型用途
.当前目录cp file.txt .
..父目录cd .. 或 ls ../other_dir
~当前用户的家目录

cd ~/Pictures 进入到家目录下的Pictures目录

cd ~ 进入到家目录,就会进入到[yang**qin@localhost ~]$  下

/根目录cd /usr/local

一、文件与目录操作

1. 基础命令
命令功能示例记忆技巧
ls列出目录内容
ls [选项] [目录或文件]  

ls -l (详细列表)   l是use a long listing format(使用长列表格式)

ls -a  全部文档,连同隐藏文件(开头为.的档案)

ls -h 可以以人类可读格式显示文件大小如MB,KB

ls -l a.txt 查看a.txt文件的详细信息
 

LiSt(列表)

cd切换目录

cd ~ (回家目录) 

cd ~/Pictures  切换到Pictures目录下面

cd -                # 返回之前所在的目录

cd  /usr/local/bin # 绝对路径切换,从根目录下切换

cd ./subfolder #相对路径切换

Change Directory
pwd显示当前路径pwdPrint Working Directory
mkdir创建目录

mkdir -p dir1/dir2 (递归创建)

  • -p 选项:自动创建路径中所有不存在的父目录(Parents)

  • 路径格式:可以是绝对路径(以 / 开头)或相对路径

MaKDIRectory
touch创建空文件

touch file.txt

若文件不存在,则创建新文件

若文件存在,则更新文件时间戳

像“触摸”文件(创建/更新时间戳)
vim 创建并打开文件vim file.txt
2. 文件操作
命令功能示例记忆技巧
cp复制文件

基本复制(保留原目录结构)

cp -r dir1 dir2/ 

将 dir1 目录及其内容复制到 dir2 下,生成 dir2/dir1

选项说明:

  • -r:递归复制(必需,用于目录) 

  • dir2/ 末尾的 / 可省略,但加上更明确表示目标是一个目录 

仅复制目录内容(不保留 dir1 外层)

cp -r dir1/. dir2/
  • 作用:仅复制 dir1 内的所有文件和子目录到 dir2 中,不包含 dir1 目录本身

  • -r(或 -R,两者等效)的作用是递归复制

  • 关键点dir1/. 表示 dir1 下的所有内容

 保留文件属性(权限、时间戳等)

cp -a dir1 dir2/
  • 作用:归档模式复制,保留所有文件属性(权限、所有者、时间戳等)

cp file.txt ~/Pictures # 复制 file.txt 到 /Pictures/ 目录下

cp file1.txt file2.txt ~ /Pictures #复制多个文件到目录下

cp -i file.txt  ~ /Pictures  # 覆盖前询问确认 

CoPy(复制)
mv移动/重命名

mv old.txt new.txt

(1) 移动文件/目录

mv file.txt /path/to/destination/  # 将 file.txt 移动到目标目录
mv dir1/ /path/to/destination/    # 移动整个目录

(2) 重命名文件/目录

mv oldname.txt newname.txt        # 文件重命名
mv olddir/ newdir/                # 目录重命名

MoVe(移动)
rm删除文件

rm -rf dir/ (强制删除)

rm file1.txt file2.txt file3.txt 删除多个文件

ReMove(移除)
rmdir删除目录

rmdir  work 

特性rmdirrm
用途仅删除空目录删除文件和非空目录
递归删除❌ 不支持✅ 支持 (-r 或 -R 选项)
删除文件❌ 不能删除文件✅ 可以删除文件
安全性较高(只删空目录,风险小)较低(可能误删重要数据)
常用选项-p(递归删除父级空目录)-r(递归)、-f(强制)等
cat查看文件内容
查看文件

cat file.txt          # 显示文件全部内容
cat -n file.txt       # 显示内容并加上行号(包括空行)
cat -b file.txt       # 显示内容并加上行号(忽略空行)

 合并多个文件

cat file1.txt file2.txt > combined.txt  # 合并文件并保存
cat *.log > all_logs.txt              
# 合并所有 .log 文件

实例:

快速查看日志

cat /var/log/nginx/access.log | tail -n 20  # 查看日志最后20行 
tail -n 100 /var/log/auth.log  # 显示最后100行

tail -f /var/log/nginx/error.log  # 实时跟踪日志更新(Ctrl+C 退出) 选项  , -f 是单词 "follow" 的缩写,表示持续跟踪(即实时监视)文件的更新内容

tail -f test.log | grep "error"  查看实时更新的日志文件是否有报错

CAT(像猫一样“吐出”内容)
less分页查看文件less /var/log/syslog # 分页查看文件,再按q 可退出查看

more限制(可上下翻页) 

more分页查看文件

more a.txt 

 
  • 按 空格键 向下翻一屏。

  • 按 Enter 键 向下翻一行。

  • 底部显示百分比(如 --More--(25%)

 diff  比较文件或者目录的差异
diff [选项] 文件1 文件2       # 比较两个文件
diff [选项] 目录1 目录2     # 比较两个目录

二、文本处理与搜索

命令功能示例记忆技巧
grep

文本搜索

grep [选项] "搜索模式" [文件...] 
#搜索模式:可以是普通字符串或正则表达式 

grep "error" log.txt 

常用选项 : 

选项说明示例
-i忽略大小写grep -i "error" log.txt
-v反向匹配(显示不包含模式的行)grep -v "debug" file.log
-n显示行号grep -n "main" program.c
-c统计匹配行数grep -c "warning" *.log
-l只显示包含匹配项的文件名grep -l "TODO" *.py
-r/-R递归搜索目录grep -r "function" /src/
-w全词匹配grep -w "int" file.c
-A显示匹配行及后面N行grep -A 3 "Exception" log
-B显示匹配行及前面N行grep -B 2 "start" config
-C显示匹配行及前后各N行grep -C 2 "pattern" file
-E使用扩展正则表达式`grep -E "a
-F按字面字符串匹配(不解析正则)grep -F "*.txt" files
--color高亮显示匹配内容grep --color "error" log
Global REgex Print(全局正则搜索)
find

查找文件

find [搜索路径] [匹配条件] [操作]  

不指定路径时:默认从当前目录递归搜索

-name按文件名(区分大小写)find /etc -name "*.conf"
-iname按文件名(不区分大小写)find . -iname "readme*"
-regex使用正则表达式匹配路径find . -regex ".*\.\(txt|log\)"

find / -name "*.conf"   #查找根目录下的文件

find /home -name "*.txt"  # 查找/home下所有.txt文件
find / -type d -name "config"  # 查找全盘名为config的目录

当 * 用于 -name 或 -iname 参数时,它的作用是 模糊匹配文件名:(和正则匹配式中的用法类似)

  • * 匹配任意数量的任意字符(包括零个字符)。

  • ? 匹配单个任意字符(需与 * 区分, 不包含0个字符)  

find 和 grep的区别: 

直接记英文“查找”
head查看文件开头
head [选项] [文件...] 
选项作用示例
-n <行数>显示文件开头的指定行数head -n 5 file.txt
-c <字节数>显示文件开头的指定字节数head -c 100 file.txt
-q静默模式(不显示文件名标题)head -q file1.txt file2.txt
-v详细模式(始终显示文件名标题)head -v file.txt

像“头”部查看

-n → Number of lines(行数)。

c → Characters/bytes(字节数)

tail查看文件结尾

选项作用示例
-n <行数>显示文件末尾的指定行数tail -n 5 file.txt
-c <字节数>显示文件末尾的指定字节数tail -c 100 file.txt
-f实时跟踪文件更新(监控日志)tail -f log.txt
-F类似 -f,但会跟踪文件重命名/重建tail -F log.txt
-q静默模式(不显示文件名标题)tail -q file1.txt file2.txt
-v详细模式(始终显示文件名标题)tail -v file.txt

像“尾巴”一样跟随文件
wc统计行数/单词数
wc [选项] [文件...]
选项作用示例
-l统计行数(Lines)wc -l file.txt
-w统计单词数(Words)wc -w file.txt
-c统计字节数(Bytes)wc -c file.txt
-m统计字符数(Chars)wc -m file.txt
-L显示最长行的长度wc -L file.txt
无选项显示行数、单词数、字节数wc file.txt
Word Count(单词计数)

三、权限与用户管理

命令功能示例记忆技巧
chmod修改权限

chmod 755 script.sh

Change Mode(改模式)
chown修改所有者chown user:group file.txtChange Owner(改所有者)
sudo提权执行命令sudo apt updateSuper User DO(超级用户执行)
passwd修改密码passwd user1PASS WorD(密码)

chmod 

一、权限基础

1. 权限类型

  • r (read):读取权限(文件:查看内容;目录:列出内容)。

  • w (write):写入权限(文件:修改内容;目录:创建/删除文件)。

  • x (execute):执行权限(文件:可运行;目录:可进入)。

2. 用户类别

  • u (user):文件所有者。

  • g (group)所属用户组

  • o (others):其他用户。

  • a (all):所有用户(默认值,相当于 ugo)。

3. 权限表示法

  • 符号模式:用 u/g/o/a  +  +/-/=  +  r/w/x 组合(如 u+x)

  • 数字模式:用 3 位八进制数表示权限(如 755) 

二、基础语法

chmod [选项] 权限模式 文件/目录...
  • 常用选项

    • -R:递归修改目录及其子内容的权限。

    • -v:显示详细操作信息

三、符号模式(直观)

1. 权限操作符

符号作用示例
+添加权限chmod u+x file.sh
-移除权限chmod o-w file.txt
=精确设置权限chmod a=rw file

chmod u+x script.sh      # 给所有者添加执行权限
chmod g-w,o-r file.txt   # 移除组的写权限和其他用户的读权限
chmod a=rw config.conf   # 所有用户设置为读写权限(无执行)
chmod +x program         # 等价于 `a+x`,所有用户添加执行权限

四、数字模式(高效)

1. 权限对应数字

权限数字
r4
w2
x1
-0

2. 数字组合规则

  • 每位数字 = u + g + o 的权限值之和。

  • 示例权限

    • 7 (4+2+1):rwx

    • 6 (4+2+0):rw-

    • 5 (4+0+1):r-x

    • 0 (0+0+0):---

chmod 755 script.sh      # u=rwx (7), g=rx (5), o=rx (5)
chmod 644 file.txt       # u=rw (6), g=r (4), o=r (4)
chmod 600 ~/.ssh/id_rsa  # 仅所有者可读写(安全敏感文件)

五、权限查看

使用 ls -l 查看当前权限:

ls -l file.txt

输出示例:

-rw-r--r-- 1 user group 1024 Jan 1 10:00 file.txt
  • 首字符 - 表示文件,d 表示目录。

  • 后续 9 位:u(rw-)、g(r--)、o(r--)

chown 

一、基础语法

chown [选项] [所有者][:所属组] 文件/目录...
  • 所有者:用户名或 UID(如 root 或 1000)。

  • 所属组:组名或 GID(如 admin 或 1001),需在所有者后加 : 或 . 指定。

  • 选项:常用 -R(递归修改)

二、使用示例 

1. 修改文件所有者

chown alice file.txt      # 将文件所有者改为 alice
sudo chown root /etc/config  # 修改系统文件需 sudo

2. 同时修改所有者和所属组

chown alice:developers project/  # 所有者改为 alice,组改为 developers
chown :admin log.txt            # 仅修改组为 admin(省略所有者)

3. 递归修改目录权限

sudo chown -R www-data:www-data /var/www  # 递归修改网站目录所有者/组

sudo  , su 

sudo和root的概念 

root 用户

  • 身份:Linux 系统的超级管理员,拥有 最高权限(UID=0)。

  • 特点

    • 可以执行任何操作(包括删除系统关键文件)。

    • 默认情况下,直接使用 root 登录或操作存在高风险(容易误操作导致系统崩溃或被入侵)

sudo命令

作用允许 普通用户 临时以 root(或其他用户)权限执行命令,而无需切换到 root 账户

  • 核心功能

    • 权限委托:管理员可以精确控制哪些用户能通过 sudo 执行哪些命令。

    • 审计日志:所有 sudo 操作会被记录(如 /var/log/auth.log),便于追踪责任。

sudo 和root 的 常见问题

Q1: 为什么 sudo 要求输入当前用户密码,而不是 root 密码?

  • 安全设计:确保是用户本人操作,而非他人盗用 root 密码后直接提权。

Q2: 如何切换到 root 用户?

  • 如果用户有 sudo 权限:

    sudo -i   # 切换到 root 并加载环境变量
    sudo su - # 同上

Q3: 没有 sudo 权限怎么办?

  • 需由管理员(root 或有 sudo 权限的用户)将你加入 sudo 组:

    usermod -aG sudo your_username

Q4: sudo 和 su 的区别?

命令需要 root 密码切换用户日志记录推荐场景
sudo当前用户密码可选临时提权执行命令
suroot 密码必须长期切换用户

Q5: sudoers 文件是啥?

/etc/sudoers 是 Linux 系统中 控制 sudo 命令权限的核心配置文件定义了哪些用户/组可以以何种权限执行哪些命令

sudo和su的区别

基本概念对比

特性su (Substitute User)sudo (SuperUser DO)
设计目的切换用户身份以其他用户身份执行单条命令
密码要求需要目标用户的密码需要当前用户的密码
日志记录无详细日志详细记录所有sudo操作
权限控制要么全有要么全无可精细控制每个用户的权限
默认行为切换到root用户以root权限执行单条命令

详细区别解析

1. 认证方式

  • su

    su - username  # 需要输入目标用户的密码

    需要知道目标用户(如root)的密码

  • sudo

    sudo command  # 需要输入当前用户的密码

    只需要知道当前用户的密码(该用户必须在sudoers列表中)

2. 环境变量处理

  • su

    su -  # 连字符(-)会加载目标用户的环境变量
    su    # 不加载目标用户的环境变量
  • sudo

    sudo -i  # 模拟完整登录环境
    sudo -s  # 只切换shell不改变环境变量

3. 权限控制粒度

  • su

    • 二进制控制:要么获得完整权限,要么没有

    • 无法限制用户可以做什么

  • sudo

    • 可以通过/etc/sudoers文件精确控制:

      # 允许用户alice仅重启web服务
      alice ALL=(root) /usr/bin/systemctl restart nginx

使用场景对比

适合使用 su 的情况:

  1. 需要长时间以其他用户身份工作(特别是root)

    su - root
  2. 目标系统没有配置sudo

  3. 需要完全模拟目标用户环境

适合使用 sudo 的情况:

  1. 临时执行需要特权的单个命令

    sudo apt update
  2. 多管理员环境下需要审计跟踪

  3. 需要精细控制用户权限时

四、系统监控与管理

命令功能示例记忆技巧
ps查看进程

ps -aux   当前系统中正在运行的所有进程

“a”代表显示所有的进程(而不管它们属于哪个用户);

“u”代表显示该进程归属的用户;

“x”表示显示一般服务进程(没有连接到终端的服务进程)

常用选项组合: 

选项组合说明
ps -ef显示所有进程的完整信息
ps auxBSD风格显示所有进程详细信息
ps -e显示所有进程
ps -f

显示完整格式输出

进程选择选项

选项说明
-A/-e显示所有进程
-a显示终端上的所有进程(除会话引导进程)
-d显示所有进程(除会话引导进程)
-C cmd按命令名选择
-p pid按PID选择
-u user按用户名选择

Process Status(进程状态)
top动态监控资源

top

退出 top

  • 按 q 键退出

  • 或使用 Ctrl+C 

系统概览区(顶部)

top - 15:30:45 up 2 days,  3:15,  3 users,  load average: 0.52, 0.58, 0.47
Tasks: 215 total,   1 running, 214 sleeping,   0 stopped,   0 zombie
%Cpu(s):  5.3 us,  1.2 sy,  0.0 ni, 93.4 id,  0.1 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  8000000 total,  2000000 free,  3000000 used,  3000000 buff/cache
KiB Swap:  2000000 total,  1900000 free,   100000 used.  4500000 avail Mem
  • 第一行:系统时间、运行时间、登录用户数、系统负载(1/5/15分钟平均值)

  • 第二行:进程总数及状态统计

  • 第三行:CPU使用情况

  • 第四/五行:内存和交换空间使用情况

进程列表区

PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
1234 root      20   0  400000  50000   8000 R   6.2  0.6   0:10.25 firefox

5678 mysql     20   0 2000000 500000  20000 S   3.1  6.3  10:15.20 mysqld

各列含义:

  • PID:进程ID

  • USER:进程所有者

  • PR:优先级

  • NI:nice值

  • VIRT:虚拟内存使用量

  • RES:常驻内存使用量

  • SHR:共享内存大小

  • S:进程状态(R=运行,S=睡眠,Z=僵尸等)

  • %CPU:CPU使用率

  • %MEM:内存使用率

  • TIME+:CPU使用时间

  • COMMAND:命令名称

实用技巧

top -d 2       # 设置刷新间隔为2秒
top -p 1234    # 只监控指定PID
top -u mysql   # 只监控指定用户进程 

与ps命令的区别

特性pstop
显示方式静态快照动态实时
更新频率一次性可配置间隔
交互性
排序需指定可交互排序
资源占用较高
像“顶部”俯瞰所有进程
df查看文件系统的整体的磁盘空间使用情况

df -h 

展示文件系统的总容量,可用空间,已用空间,磁盘空间利用率等 

以可读的格式显示磁盘空间(否则默认显示单位是字节,不直观)

df -a:包含全部的文件系统 

Disk Free(磁盘空闲)
du用于估算文件或者目录所占的磁盘空间大小

du -h  :以人类刻度的格式显示磁盘使用信息

du -s :可查看当前目录的总大小

du -h -s /home/user/documents : 查看    /home/user/documents 目录的大小

free查看内存free -h  (MB单位) 直接记英文“空闲”
systemctl管理服务systemctl restart sshdSystem Control(系统控制)
stat查看文件/目录的详细信息stat file.txt 
netstat查看端口

通过组合不同的选项,netstat可以提供大量的信息,下面是一些常用选项:

  • -a:显示所有的网络连接,包括监听和非监听的。
  • -t:仅显示TCP协议的连接。
  • -u:仅显示UDP协议的连接。
  • -l:仅显示监听的套接字。
  • -n:以数字形式显示地址和端口号,而不是尝试解析服务名称。
  • -p:显示每个连接的进程ID(PID)和程序名称。
  • -r:显示内核路由表。
  • -i:显示网络接口的统计信息。
  • -s:显示每个协议的统计信息

五、网络工具

命令功能示例记忆技巧
ping测试网络连通性ping google.com像“乒”声测试网络
curl发送HTTP请求curl -O https://example.com/file.zipClient URL(客户端URL工具)
ssh远程登录服务器

ssh user@192.168.1.1

  • 加密通信:所有数据传输(包括密码)均加密,防止窃听。

  • 默认端口22

Secure SHell(安全壳)
scp安全复制文件scp file.txt user@remote:/path/Secure CoPy(安全复制)
telnet 用来远程登录操作

telnet  user@192.168.1.1

  • 明文传输:所有数据(包括密码)以明文传输,易被窃听。

  • 默认端口23

ifconfig命令用来查看和配置网络设备

可用来查看 

网络配置,ip地址,子网掩码,mac地址 等信息

interface configuration"(接口配置)
route 

查看和操作内核的 IP 路由表

六、压缩与归档

命令功能示例记忆技巧
tar打包/解压

创建归档文件(打包)

格式:tar -cvf 归档名.tar 文件或目录
注意:归档文件在前面

tar -cvf backup.tar /home/user/docs  # 打包目录
tar -cvf logs.tar *.log      # 打包所有.log文件

解压文件
格式:tar -xvf 归档文件 [ -C 解压目录 ]

tar -xvf archive.tar  #解压到当前目录
tar -xvf file.tar  -C  ./work  # 解压.tar文件到work目录下面

常用选项

  • -c:创建新的归档文件。

  • -x:解压归档文件。

  • -f:指定归档文件名(必须放在最后)

  • -v:显示详细过程(可选)

  • -z:使用 gzip 压缩/解压(.tar.gz 或 .tgz)。

  • -j:使用 bzip2 压缩/解压(.tar.bz2)。

  • -J:使用 xz 压缩/解压(.tar.xz)。

  • -t:列出归档内容(不解压)。

  • -C:指定解压目录

压缩归档文件

tar 支持多种压缩算法,通过 附加选项 指定:

压缩类型命令选项后缀名特点
gzip-z.tar.gz压缩速度快,通用性强
bzip2-j.tar.bz2压缩比高,速度较慢
xz-J.tar.xz压缩比最高,速度慢
不压缩仅打包.tar仅归档,不压缩
tar -zcvf backup.tar.gz /home/user  # gzip压缩

Tape ARchive(磁带归档)
zip压缩为.zip

zip [选项]   压缩包名.zip   文件或目录列表

zip archive.zip file.txt    压缩单个文件 (压缩后的文件名在前)

zip -r archive.zip dir1/   压缩目录(压缩后的文件名在前)

直接记英文“拉链”(压缩)
unzip解压.zip
unzip [选项] 压缩包名.zip

unzip archive.zip

反义“zip”

七、vim编辑器

  1. 普通模式(Normal Mode) :只查看

    • 默认进入的模式,用于导航和操作文本。

    • 切换方式在其他模式下按 Esc 键

  2. 插入模式(Insert Mode) : 编辑

    • 用于输入和编辑文本。

    • 切换方式:在普通模式下按 i(插入)、a(追加)、o(新行)等键。

  3. 命令模式(Command Mode)

    • 执行保存、退出等操作。

    • 切换方式:在普通模式下按 :

普通模式(Normal Mode):默认模式,用于导航和命令操作(按 ESC 返回)

启动 Vim 后的默认模式, 从其他模式按 ESC

光标移动

命令功能
h j k l左、下、上、右移动
w / b跳到下一个/上一个单词开头
e跳到单词结尾
0 / ^跳到行首(^ 是非空格首字符)
$跳到行尾
gg跳到文件开头
G跳到文件末尾
50G跳到第 50 行
Ctrl+f / Ctrl+b向下/向上翻页

编辑操作

命令功能
i在光标前进入插入模式
a在光标后进入插入模式
v进入到 可视模式
o / O在当前行下方/上方插入新行
x删除当前字符
dd删除当前行
yy复制当前行(yank)
p / P粘贴到光标后/前
u撤销(Undo)
Ctrl+r重做(Redo)
r替换当前字符(如 rx 替换为 x
J合并下一行到当前行

查找与替换

命令功能
/word向下查找 word
?word向上查找 word
n / N跳转到下一个/上一个匹配
:%s/old/new/g全局替换 old 为 new
:10,20s/old/new/g替换 10-20 行的内容
命令模式 
命令功能说明
:w保存文件
:w!强制保存(只读文件时)
:q退出 Vim
:q!强制退出(不保存修改)
:wq / :x保存并退出
:e <文件名>打开新文件
:e!重新加载当前文件(放弃修改)
:saveas <路径>另存为文件
插入模式(Insert Mode)编辑文本(通过 ia 等键进入)

基本操作

命令功能
ESC返回普通模式
Ctrl+h删除前一个字符(Backspace)
Ctrl+w删除前一个单词
Ctrl+u删除到行首
Ctrl+[等同于 ESC

自动补全

命令功能
Ctrl+n / Ctrl+p向下/向上补全单词
Ctrl+x + Ctrl+f文件名补全
Ctrl+x + Ctrl+o代码补全(需插件)
 
模式切换总结
操作功能
i / a / o进入插入模式
v / V / Ctrl+v进入可视模式
ESC / Ctrl+[返回普通模式


 

九、yum

yum 是 RPM (Red-Hat Package Manager)红帽软件包管理器 包管理器的前端工具,  它简化了软件包的安装、更新和依赖管理

基本语法
  • yum [option] [command] [package...]: 基本语法,其中 [option] 为可选, [command] 为命令名称, [package] 为要安装的软件包名称
[command] 常用命令
  • yum install: 安装指定软件包及其依赖软件包。例如:yum install httpd
  • yum update: 更新系统中已经安装的所有软件包及其依赖软件包。例如:yum update
  • yum search: 搜索可以安装的软件包。例如:yum search mysql
  • yum info: 查看软件包详细信息。例如:yum info httpd
  • yum list: 列出所有已安装或可安装的软件包。例如:yum list installed
  • yum remove: 卸载指定软件包及其依赖软件包。例如:yum remove httpd
  • yum upgrade: 升级所有软件包到最新版本。例如:yum upgrade
  • yum clean: 清除缓存。例如:yum clean all

十、其他命令 

命令

作用
重定向

 标准输出重定向

覆盖输出到文件 

ls -l > filelist.txt  # 将ls输出写入filelist.txt(覆盖原有内容)

追加输出到文件 

date >> logfile.txt  # 将date输出追加到logfile.txt末尾

创建空文件 (等效于touch)

> filelist.txt

标准错误输出重定向 

将命令的错误输出重定向到文件内 

ls m.file 2> error.txt 

同时将重定向标准输出和错误输出

讲命令的标准输出和错误输出都重定向到同一个文件

ls &> output.txt 

标准输入重定向

把指定文件的内容作为命令的输入

wc -l < data.txt  # 统计data.txt的行数

ctrl + c

当执行linux命令卡住的时候,可强制退出

cat /etc/passwd

查看所有用户基本信息

sudo yum install 

sudo yum install [选项] <软件包名1> <软件包名2>...
选项说明
-y自动回答 "yes"(非交互式安装)
--nogpgcheck跳过 GPG 签名验证(不推荐)
--downloadonly仅下载不安装
--enablerepo=<仓库名>临时启用指定仓库

举例: 

sudo yum install tree #安装tree 

注意事项: 需要root权限(通过sudo 或者直接切换到root用户)

tree

安装tree:sudo yum install tree

tree  #显示当前目录树 

tree  ~/Pictures    #显示指定目录树

tree -d # 只显示目录,不显示文件

tree | tail -n 1 #统计文件下目录和文件的数量 

tree --du -h #显示磁盘的占用情况

kill

kill [选项] <进程ID(PID)>  用于终止进程的命令,通过发送指定的信号来控制进程的行为

kill PID   # 默认情况下,kill命令发送SIGTERM(信号15),这可以请求进程终止

kill -l       # 命令列出所有可用信号 

kill -9 1234 # 强制终止进程(信号9)

kill -SIGSTOP 1234  # 向 PID 为 1234 的进程发送 SIGSTOP

kill 1234 5678 9012 终止多个进程

最常用的信号是:

  • SIGKILL(信号9):立即结束进程,不能被捕获或忽略。
  • SIGTERM(信号15):正常结束进程,可以被捕获或忽略。
  • SIGSTOP(信号19):暂停进程,不能被捕获、忽略或结束。
  • SIGCONT(信号18):继续执行被暂停的进程。
  • SIGINT(信号2):通常是Ctrl+C产生的信号,可以被进程捕获或忽略

crontab

 cron table :cron是时间的意思, table指的是定时任务的配置文件  

管理用户级的定时任务,实现自动化执行命令或脚本(如备份、日志清理、定时任务等)

crontab -l  查看当前的定时任务 

useradd 
创建用户sudo useradd -m username
设置密码sudo passwd username
locate

 是一个快速查找文件的工具,它通过搜索 预建的数据库(而非实时扫描磁盘)来定位文件

1. 工作原理

  • 数据库驱动locate不实时搜索磁盘,而是查询updatedb生成的数据库

  • 数据库位置:通常位于/var/lib/mlocate/mlocate.db

  • 更新频率:系统通常每天自动更新数据库(通过cron任务)

2.基本用法 

安装 locate: sudo yum install mlocate 

更新数据库:  sudo updatedb

简单搜索: locate [选项] 文件名或模式

3.实际使用

locate b.txt  #输出所有路径中包含b.txt的文件
locate "*.jpg" #查看所有jpg的文件

locate和find的区别: 

1. locate是非实时的,需要依赖数据库更新 ; find是实时的

2.locate只支持简单的文件名搜索 ; find支持较多形式

clear清除当前屏幕上的文字
ln

用于创建文件或目录的 链接(Link),分为 硬链接(Hard Link) 和 符号链接(Symbolic Link,软链接)

ln [选项] 源文件 目标链接
创建硬链接ln source.txt hardlink.txt  
创建软链接ln -s source.txt symlink.txt

链接类型对比

特性硬链接 (Hard Link)符号链接 (Symbolic Link/软链接)
inode号与源文件相同分配新的inode
跨文件系统不支持支持
链接目录不允许(仅超级用户可尝试)允许
原始文件删除仍可访问(数据存在)链接失效
文件大小与源文件相同存储的是路径长度
示例命令ln source.txt hardlinkln -s source.txt softlink
  • 需要跨文件系统或链接目录 → 软链接

  • 需要数据冗余保护 → 硬链接(但需注意限制)

inode : 

inode 是文件系统中的一种数据结构,它存储了文件或目录的大部分元数据,而不是文件内容本身。元数据包含了文件的权限、所有者、文件大小、创建时间、修改时间、访问时间等信息。每个文件和目录在文件系统中都对应一个唯一的 inode 编号,通过这个编号可以找到对应的 inode 以及相关的元数据

管道符 | 

将一个命令的输出传递给另一个命令作为输入的符号

cat /var/log/nginx/access.log | tail -n 20     # 查看日志最后20行

查看某个进行的占有率

top 

htop

ps 与 grep : 

查看cpu占有率

ps -eo pid,pcpu,comm | grep "进程名或 PID" | awk '{print $2}'

查看内容占有率

ps -eo pid,pmem,comm | grep "进程名或 PID" | awk '{print $2}'

id 用户名

查看用户 UID/GID 及所属组 

passwd 

修改当前用户密码   

用户:yangsuqin

密码:qwerty246824

修改登录密码 

用户  linux  

密码 linux246824 

以上也是root用户的密码 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值