当前位置: 首页 > news >正文

【linux学习】linux基本指令02


我是程序员小青蛙,下面来介绍linux基本指令

前言

上一篇介绍了man,touch,mkdir,ls,rm,cd,pwd指令,这些都是一些重要的基本指令,下面介绍另一部分基本指令。


一、cp指令

Linuxcp命令(copy)

作用:复制文件 / 复制文件夹

cp 源文件 目标位置 cp a.txt b.txt # 把 a.txt 复制成 b.txt cp a.txt /home/ # 把 a.txt 复制到 /home 目录下
  • -r/-R递归复制文件夹(最常用)
  • -i:覆盖前询问(防止误覆盖)
  • -p:保留文件权限、时间等属性
  • -a归档复制(相当于 -r -p,保留所有属性,备份常用)
  • -f:强行赋值文件或目录,无论是否存在

cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,而最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后一个目的地并非一个已存在的目录,则会出现错误信息。

二、mv指令

Linuxmv命令(move)

作用:移动文件 / 目录、重命名,没有复制,原文件会消失

mv 源 目标 //同目录 mv old.txt new.txt # 文件重命名 mv dir1 dir2 # 文件夹重命名 //跨目录 mv test.txt /home/ # 移动文件到 /home mv testdir /usr/local/ # 移动文件夹,**不用加 -r**(mv自带递归)

重点:mv移动文件夹不需要-r,和cp不一样!

常用参数:

  • -i:覆盖前询问(防止误覆盖)
  • -f:强制覆盖,不提示
  • -n:不覆盖已存在文件

功能:
1.视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
2.当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
3.当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。

三、cat指令

全称concatenate,核心作用:查看文件内容、合并文件、创建小文件

cat 文件名 cat hello.txt cat 1.txt 2.txt//一次性看多个文件 cat -n hello.txt # 带行号查看
  • -n显示行号(重点)
  • -b:只给非空行加行号
  • -A:显示所有隐藏字符(换行、空格等)
  • -b:对非空输出行编号
  • -n 对输出的所有行进行编号
  • -s 不输出多行空行

进阶使用:

1.快速创建文件并写入内容

cat > test.txt # 输入内容,按 Ctrl+D 保存退出

2.合并文件

cat a.txt b.txt > c.txt # 把a、b内容合并到c.txt

常用参数:

  • cat一次性全部输出,适合小文件
  • less:分页查看,适合大文件
  • head:看前几行
  • tail:看最后几行

四、more指令

作用:分页查看文件内容,适合大文件,一页一页翻cat一次性全部输出不同,more会分屏显示,不会刷屏。

more 文件名 more test.txt

常用快捷键:

  • 空格:向下翻一页
  • 回车:向下翻一行
  • q:退出查看
  • b:向上翻页(部分版本支持)

常用参数:
-n:指定每页显示 n 行
q 退出more

more -5 test.txt # 每页只显示5行

对比 cat /more/less

  • cat:一次性全部输出,适合小文件
  • more:分页查看,只能向下翻,不能回退(老式)
  • less:分页查看,可上下翻、搜索,功能更强,现在更推荐

五、less指令

作用:分页查看文件,功能比more更强,支持上下翻页、搜索,是 Linux 最推荐的文件查看工具

less和more类似,但使用less可以随意浏览文件,而more仅能向前移动,不能向后移动,而且less在查看之前不会加载整个文件,

less 文件名 # 例 less test.txt

翻页

  • 空格 /PgDn:向下翻一页
  • b/PgUp:向上翻一页
  • 回车:向下一行
  • k:向上一行,j:向下一行(vim 风格)

搜索(高频)

  • /关键词:向下搜索
  • ?关键词:向上搜索
  • n:跳到下一个匹配结果
  • N:跳到上一个匹配结果

退出

  • q:退出

常用参数:
-N:显示行号

less -N test.txt

-i:忽略搜索时的大小写
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与/或?u有关)
q: quit,退出

六、head指令

作用:查看文件开头部分内容,默认显示前 10 行

head 文件名 # 默认输出前10行 head test.txt

常用参数:
-n 数字:指定显示前几行

head -n 5 test.txt # 查看前5行 head -5 test.txt # 简写形式,效果一样

-c 数字:查看前多少个字符

head -c 20 test.txt # 查看前20个字符

和管道一起使用

# 查看命令输出的前5行 ls -l | head -n 5

七、tail指令

作用:查看文件末尾内容,默认显示最后 10 行,最常用于看日志

tail 文件名 # 默认输出最后10行 tail test.txt

常用参数:
-n 数字:指定查看最后几行

tail -n 5 test.txt # 查看最后5行 tail -5 test.txt # 简写

-f:实时追踪文件新增内容(看日志神器)

tail -f test.txt # 文件更新时,终端会实时刷新输出,按 Ctrl+C 退出

-c 数字:查看末尾指定字符数

常用组合

# 实时看日志最后10行 tail -f /var/log/messages # 实时看最后20行 tail -n20 -f test.log

head和tail比较
head看文件开头
tail看文件末尾,-f 实时监控

八、与时间相关的指令

date显示
作用:查看 / 设置系统时间、格式化输出时间

date # 直接输出系统当前时间

常用格式:

# 年-月-日 时:分:秒 date +"%Y-%m-%d %H:%M:%S" # 仅日期 date +%Y-%m-%d # 仅时间 date +%H:%M:%S

设置时间(root)

# 设置时间为 2025-05-14 15:30:00 date -s "2025-05-14 15:30:00"

时间戳

# 获取当前时间戳(秒) date +%s # 时间戳转日期 date -d "@1747200000"

九、cal指令

作用:查看日历,默认显示当月日历

cal # 直接输出当前月份日历

查看指定年份全年日历

cal 2026

查看指定年月

cal 5 2026 # 查看2026年5月日历

显示周一为一周第一天

cal -m

显示周数

cal -w

常用参数:
-3:前一个月,这一个,下一个
-j:显示当年中的第几天,从1月1算
-y:显示当前年份的日历

cal -y 2026

口令:cal 查日历,cal 年看全年,cal 月 年看指定月。

十、find指令

作用:在指定目录下,递归查找文件 / 目录,功能极强,Linux 最核心查找命令

核心:递归搜索文件 / 目录,语法:find 搜索路径 [匹配条件] [动作]

在当前目录查找所有文件

find .

. 是隐藏目录,,,.代表当前目录,递归列出所有文件

全局查找(从根目录开始)

find / -name "xxx"

常用参数:
-name按文件名查找(最常用)

# 精确查找 test.txt find . -name "test.txt" # 模糊查找,通配符 * find . -name "*.txt" # 找所有txt文件 find /home -name "log*"

-type按类型查找

  • f:普通文件
  • d:目录
find . -type f # 只找文件 find . -type d # 只找文件夹

-size按文件大小查找

find . -size +10M # 大于10M find . -size -5k # 小于5k

-exec找到后直接执行命令(超级常用)

# 找到所有txt并删除 find . -name "*.txt" -exec rm -f {} \; # 找到后复制 find . -name "*.log" -exec cp {} /tmp \;

常用合计

# 查找 /etc 下所有 .conf 配置文件 find /etc -name "*.conf" # 查找当前目录下大于1G的文件 find . -type f -size +1G # 查找空文件 find . -size 0

十一、grep指令

作用:文本搜索,在文件 / 命令输出里查找指定关键词,过滤内容

grep "关键词" 文件名

常用参数:

-n:显示匹配行的行号

grep -n "root" /etc/passwd

-i忽略大小写查找

grep -i "hello" test.txt

-v反向匹配,显示不包含关键词的行

grep -v "#" test.txt # 过滤掉注释行

-r:递归搜索目录下所有文件

grep -r "error" /var/log/

-o:只输出匹配到的关键词本身

管道高频使用

# 查看进程里的c++程序 ps -ef | grep g++ # 过滤yum输出里的lrzsz yum list | grep lrzsz # 查看端口 netstat -an | grep 80

find和grep的比较

  • find找文件(按文件名、大小、路径)
  • grep找文件里的内容(按关键词)

十二、zip/unzip指令

zip:压缩文件 / 目录

zip 压缩包名.zip 待压缩文件/目录

常用用法:

压缩单个文件

zip test.zip test.txt

压缩目录(必须加-r递归)

zip -r dir.zip mydir/

常用参数:

  • -r:递归压缩目录
  • -q:安静模式,不输出过程
  • -9:最高压缩率

unzip:解压 zip 包

unzip 压缩包名.zip

常用用法:

直接解压到当前目录

unzip test.zip

解压到指定目录-d

unzip test.zip -d /home/

查看压缩包内容(不解压)

unzip -l test.zip

若命令不存在,则安装

# CentOS yum install -y zip unzip # Ubuntu apt install zip unzip

十三、tar指令

作用:打包、压缩、解压文件(.tar、.tar.gz、.tar.bz2 格式)

Linux 上最常用、最重要的压缩解压命令

常用:

压缩:tar -zcvf 包名.tar.gz 要压缩的文件/目录 解压:tar -zxvf 包名.tar.gz

参数:

  • z:用 gzip 压缩 / 解压(.gz格式)
  • x解压(extract)
  • c压缩(create)
  • v:显示过程(verbose)
  • f:指定文件名(必须放最后!
  • t:查看tarfile里面的文件
  • j:bzip2压缩

常见命令:

压缩成 .tar.gz

tar -zcvf myfile.tar.gz mydir/

解压 .tar.gz

tar -zxvf myfile.tar.gz

解压到指定目录

tar -zxvf myfile.tar.gz -d /tmp/

只查看不解压

tar -ztvf myfile.tar.gz

记忆:

  • 看到c压缩(create)
  • 看到x解压(extract)
  • 只要是.tar.gz→ 一律带z

十三、bc指令

作用:Linux 内置的命令行计算器,支持整数、小数、运算、进制转换

bc 2+3 5 10*2.5 25 quit # 退出

常用:

一行直接计算(不用进交互)

echo "100/3" | bc # 保留2位小数 echo "scale=2; 100/3" | bc

进制转换(超级好用)

# 十进制转二进制 echo "obase=2;10" | bc # 二进制转十进制 echo "ibase=2;1010" | bc

常用参数:

scale=N:设置保留 N 位小数

十四、uname

作用:查看系统内核、操作系统、硬件架构信息

uname # 默认只输出内核名称,一般显示 Linux

常用参数:

-a查看全部系统信息(最常用)

uname -a

-r:查看内核版本(运维高频)

uname -r
  • -s:内核名称
  • -n:主机名
  • -m:硬件架构(x86_64 /arm 等)

# 完整信息 uname -a

# 只看内核版本 uname -r

# 看CPU架构 uname -m

也可以使用lscpu看;


总结

对linux的基本指令进行介绍,对用法熟悉就行。谢谢观看。

http://www.jsqmd.com/news/823869/

相关文章:

  • 如何通过LizzieYzy围棋AI分析工具在30天内实现棋力突破:从入门到实战的完整指南
  • 2026最新Xshell-8.0安装教程(官方免费正版,无需破解)
  • 基于Monaco Editor与AI大模型构建Web版智能代码编辑器的实践
  • 个人 AI 记忆系统:我的构想与三个落地方向
  • 跨平台B站视频下载:BilibiliDown完整使用指南
  • 仅限档案学研究者获取:NotebookLM定制提示词库V2.3(含17个NARA/中国第一历史档案馆认证模板)
  • 性价比高的AI应用厂家
  • 终极免费NCM转换指南:3分钟解锁你的网易云音乐
  • 终极指南:如何用免费开源软件FanControl完全掌控你的电脑风扇
  • 「PKUWC2018」Slay the Spire
  • LVGL字体优化实战:如何将中文字库放到外部SPI Flash并动态加载(节省内部RAM)
  • @Autowired 和 @Resource 的区别
  • 国产CPU与自研Wi-Fi 6芯片协同,构建自主可控高速无线连接方案
  • 贪心——划分字母区间
  • COLMAP重建翻车了?NeRF数据预处理中相机位姿估计的3个常见陷阱与调试技巧
  • AI专著生成工具评测:快速产出20万字专著,哪款最值得用?
  • 从Web空间到邮件服务器:Linux磁盘配额quota的3个真实生产环境应用案例详解
  • Source Han Serif CN:7款免费开源字体如何重塑你的中文排版体验
  • C语言条件编译:从语法到工程实践的高级应用指南
  • 它正在定义云安全的AI时代?深度拆解快快云安全AI大模型凭啥突围
  • 2026年智能电话外呼机器人厂家优质推荐榜亲测结果
  • 使用Taotoken的API Key管理功能实现安全的访问控制与审计
  • 告别Activity地狱!用XPage框架3.0.0重构你的Android应用,一个容器搞定所有页面
  • 3大协议支持:LuckyLilliaBot如何让QQ机器人开发更高效
  • 豆包大模型流式响应实战
  • 同城双活:交易链路的稳定性与可靠性探索
  • 使用Taotoken后API调用延迟与稳定性的一月观测记录
  • AI原生IDE新范式:深度解析TRAE的三种协作模式的集成实践
  • 5分钟搞定B站视频下载:BilibiliDown完整指南
  • IP定位系统源码二开版 新增分销功能 PHP地理位置查询系统