【Linux 系列】Linux 命令/快捷键详解

🚀 欢迎来到我的CSDN博客:Optimistic _ chen

✨ 一名热爱技术与分享的全栈开发者,在这里记录成长,专注分享编程技术与实战经验,助力你的技术成长之路,与你共同进步!


🚀我的专栏推荐:

专栏 内容特色 适合人群
🔥C语言从入门到精通 系统讲解基础语法、指针、内存管理、项目实战 零基础新手、考研党、复习
🔥Java基础语法 系统解释了基础语法、类与对象、继承 Java初学者
🔥Java核心技术 面向对象、集合框架、多线程、网络编程、新特性解析 有一定语法基础的开发者
🔥Java EE 进阶实战 Servlet、JSP、SpringBoot、MyBatis、项目案例拆解 想快速入门Java Web开发的同学
🔥Java数据结构与算法 图解数据结构、LeetCode刷题解析、大厂面试算法题 面试备战、算法爱好者、计算机专业学生

🚀我的承诺:

✅ 文章配套代码:每篇技术文章都提供完整的可运行代码示例

✅ 持续更新:专栏内容定期更新,紧跟技术趋势

✅ 答疑交流:欢迎在文章评论区留言讨论,我会及时回复(支持互粉)


🚀 关注我,解锁更多技术干货!
⏳ 每天进步一点点,未来惊艳所有人!✍️ 持续更新中,记得⭐收藏关注⭐不迷路 ✨

📌 标签:#技术博客  #编程学习  #Java  #C语言  #算法  #程序员

文章目录

Linux 的历史

来源

  说到Linux,不得不追溯到其精神先驱------UNIX操作系统 。它由美国贝尔实验室的肯·汤普逊、丹尼斯·里奇和道格拉斯·麦克罗伊等人合作开发,从1970年代开始流行,其影响延续至今。

  而Linux的诞生则与1990年代的开源运动 浪潮紧密相关。当时,GNU项目已经为创建一个自由的类UNIX操作系统准备了大量基础组件,唯独缺少一个成熟可用的内核 。就在这样的背景下,1991年 ,芬兰学生林纳斯·托瓦兹开始编写一个新的操作系统内核 ,并将其命名为Linux 。同年, Linux 0.01版本作为第一个公开版本发布,此后的几年间,Linux逐渐发展壮大,并得到了许多贡献者的支持和帮助。

  1994年 ,Linux 1.0版本发布,这是Linux的第一个稳定版本 。并迅速获得了广泛的关注和认可;

  进入2000年代 ,凭借其开源、稳定和高效的特性,Linux在服务器领域确立了主导地位,并逐渐渗透到个人电脑、移动设备(如Android系统)和嵌入式设备等众多领域。

  直到今天,Linux已经成为全球最受欢迎的操作系统之一,得到了广泛的应用和支持。它的开源特性和强大的性能使其成为开发者和企业的首选,也促进了技术的创新和发展。

应用

  Linux是一种自由和开放源代码的类UNIX操作系统 ,严格来讲,Linux只是操作系统内核本身,但通常采用"Linux内核"来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统,它包括GUI组件和许多其他实用工具。

GUI(通用公共许可协议):是一个广泛被使用的自由软件许可协议条款 ,最初由理查德斯托曼为GNU计划而撰写,GPL给予了计算机程序自由软件的定义, 任何基于GPL软件开发衍生的产品在发布时必须采用GPL许可证方式,且必须公开源代码。

应用领域:

  • 服务器操作系统:Linux在互联网服务器领域非常流行,许多大型网站和服务使用Linux作为其服务器操作系统
  • 超级计算机:Linux在超级计算机领域也非常流行
  • 移动设备:Android操作系统是基于Linux内核开发的
  • 虚拟化:Linux提供了强大的虚拟化技术,如KVM和Docker,可以用于创建和管理虚拟机和容器。
  • 软件开发:Linux是开源操作系统,因此非常适合作为软件开发平台,非常适合作为开发环境。

环境搭建

  1. 使用虚拟机软件,将Linux搭建在虚拟机上使用。
  2. 使用云服务器,在腾讯、阿里、华为等各大服务器厂商处直接购买(很划算)

  使⽤云服务器不仅环境搭建简单,避免折腾,同时还有⼀个最⼤的好处,部署在云服务器上的项⽬可以直接被外⽹访问到,就能让我们⾃⼰写的程序真的去给别⼈去使⽤(在同学面前装起来)

  接下来使用终端软件连接到Linux,终端软件是⼀类⼯具软件,可以和远程的主机建⽴⽹络连接,从⽽对主机进⾏⼀些操作。比如我们设置好的云服务器,通过终端软件就可以操作。

  博主使用的是XShell,感觉很不错,推荐。具体的操作步骤大佬们可以自己尝试,摸索。

Linux常用命令

HOME目录

每一个用户在Linux系统中都有自己的专属工作目录,称为home目录

  • 普通用户的HOME目录,默认在:/home/用户名
  • root用户的HOME目录,在: /root

Linux的树状目录结构:

  • Linux只有一个顶级(根)目录 : /
  • .是当前目录
  • ..是当前目录的上级目录

绝对路径 :形如 /usr/share/a 以根⽬录开头的,称为绝对路径
相对路径 :形如 ./logs 以. .. 开头的,称为相对路径

我们敲的所有的Linux命令,都可以使⽤tab键来尝试补全,加快效率

如果命令或者⽬录敲错了,可以ctrl+c取消当前的命令

ls命令

功能:在命令行中,以平铺的形式展示当前工作目录下的内容(文件或文件夹)

powershell 复制代码
语法  [选项]    [目录或文件]
ls [-l -h -a] [linux路径] 
  • linux路径:被查看的文件夹,表示查看当前工作目录
  • -l :以列表的形式查看
  • -a:列出⽬录下的所有⽂件,包括隐藏文件(以 .开头的文件或者文件夹默认被隐藏)
  • -d: 将目录像文件一样显示,不显示其下的文件
  • -k:以k字节的形式表示文件大小

pwd命令

powershell 复制代码
pwd 

功能:显示用户当前所在目录

cd命令

功能:改变规则目录,将当前⼯作⽬录改变到指定的⽬录下。

powershell 复制代码
# 返回上级目录
cd ..

# 进入用户目录
cd ~

# 返回最近访问目录
cd -

touch命令

功能:touch命令参数可更改⽂档或⽬录的⽇期时间,包括存取时间和更改时间,或者新建⼀个不存在的⽂件

powershell 复制代码
touch [选项] 文件
touch test.txt

cat命令

功能:查看文件内容

powershell 复制代码
cat test.txt
  • -n:对输出的所有行进行编号

因这个文件是刚刚创建的,还没有输入内容,所以没有输出

mkdir命令

功能:在当前目录下创建一个名为 "dirname" 的目录

powershell 复制代码
mkdir [-p] linux路径
mkdir -p test/test1
  • -p:自动创建不存在的父目录

rm命令

功能:删除文件或目录

powershell 复制代码
rm [-f -i -r -v] [路径]
rm test.txt
  • -f :即使文件属性为只读,也直接删除
  • -i:删除前逐一询问确认
  • -r:删除目录及其以下所有文件

cp命令

功能:复制文件或目录。

说明:cp指令⽤于复制⽂件或⽬录,如同时指定两个以上的⽂件或⽬录 ,且最后的⽬的地是⼀个已经存在的⽬录,则它会把前⾯指定的所有⽂件或⽬录复制到此⽬录 中。若同时指定多个⽂件或⽬录,⽽最后的⽬的地并⾮⼀个已存在的⽬录,则会出现错误信息

powershell 复制代码
cp [选项] 源文件或目录 目标文件或目录
cp test1.txt test2.txt 
#复制当前目录下test1.txt 为 test2.txt
  • -f:强制复制文件或目录,不论目的文件或目录是否存在
  • -i:覆盖文件之前先询问用户
  • -r:递归处理,将指定目录下的文件与子目录一并处理

mv 命令

功能:移动文件或目录
说明:目标文件或目录不存在,则进行改名

powershell 复制代码
mv [选项] 源文件或目录 目标文件或目录
mv test1.txt test2.txt
  • -f: force强制的意思,如果目标已经存在,不询问而直接覆盖
  • -i:若目标文件已经存在,就会询问是否覆盖

tail 命令

功能:⽤于显⽰指定⽂件末尾内容,不指定⽂件时,作为输⼊信息进⾏处理。常⽤查看⽇志⽂件。

powershell 复制代码
tail [参数] 目标文件
tail -10 test1.txt
  • -f:持续跟踪文件修改
  • -n:查看尾部多少行,默认10

vim

vim是一个知名文本编辑器,使用vim可以进行文本编辑(相当于记事本)

powershell 复制代码
vim [文件名]
  1. 普通模式 :打开后默认模式,键盘的按键表⽰⼀些特殊功能的快捷键。
  2. 插入模式 :通过普通模式进入,使用i键进入到插入模式,(左下⻆提⽰--INSERT--)然后就可以像记事本⼀样正常编辑了。
  3. 保存 :插入模式下不能保存文件,需要Esc退回到普通模式
  4. 退出 :从普通模式退出
模式 常见命令 描述
普通模式 i 在当前光标位置进入插入模式
普通模式 ↑ k 向上移动光标
普通模式 ↓ j 向下移动光标
普通模式 ← h 向左移动光标
普通模式 → l 向右移动光标
插入模式 Esc 任何情况下都能回到普通模式
保存 :wq 保存并退出
保存 :q 仅退出
保存 :q! 强制退出
保存 :w 仅保存
保存 :set nu 显示行号
保存 :set paste 显示粘贴模式

grep 命令

功能:用于查找文件中是否包含指定字符串,并显示对应行(过滤)

powershell 复制代码
grep [参数]   [文件]
grep "hello" Hello.java
  • -n:显示行数
  • -w: 全字匹配,要求整个单词都完全相同的结果才能匹配出来,⽽不仅仅是⼀个单词的⼀部分
  • -r:递归查找,可以搜索多级目录下的所有文件
  • --color:高亮查找到的结果

管道符 |

管道是⼀种古⽼的"进程间通信"⽅式.
功能:将前⼀个指令标准输出的内容,作为第⼆个指令的标准输⼊内容,经常和grep一起使用。

powershell 复制代码
tail -f test.txt|grep "Exception"

实时监控 test.txt 文件的变化,只显示包含 "Exception" 字符串的新行,忽略所有不包含 "Exception" 的内容。特别适合监控和过滤日志文件

ps 命令

功能:用于查看当前系统上运行的进程

powershell 复制代码
ps aux
  • a显示一个终端所有的进程
  • u以用户为主的格式来显示程序状况
  • x显示所有程序,包括系统守护进程
  • f显示完整格式输出

netstat 命令

功能:查看系统上的网络状态

powershell 复制代码
netstat [参数]
netstat -anp
  • -a显示所有正在或不在侦听的套接字
  • -n娴熟数字形式地址而不是去解析主机
  • -p显示套接字所属进程的PID和名称

Linux常用快捷键

更多命令可以通过-- help查看:命令帮助手册

ctrl + c:强制停止/退出当前输入,重新输入
ctrl + d退出账户的登录
history:查看历史输入的命令
! 命令前缀:自动执行上一次匹配前缀的命令
ctrl + a:跳到命令开头
ctrl + e:跳到命令结尾
ctrl + ←:向左跳一个单词
ctrl + →:向右跳一个单词
ctrl + l:清空终端内容
clear:清空终端内容
当然,列举的这些命令和快捷键都是比较常用的,需要更多命令或快捷键可以去管网查看,同样可以平时多写写代码也就记住了,不需要单独拿出来背哦~ ~ ~

完结撒花!🎉

如果这篇博客对你有帮助,不妨点个赞支持一下吧!👍
你的鼓励是我创作的最大动力~

✨ 想获取更多干货? 欢迎关注我的专栏 → optimistic_chen

📌 收藏本文,下次需要时不迷路!

我们下期再见!💫 持续更新中......


悄悄说:点击主页有更多精彩内容哦~ 😊

相关推荐
@兽血沸腾31 分钟前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
且从容.4 小时前
Ubuntu安装flume
linux·ubuntu·flume
承渊政道4 小时前
Linux网络学习【Reactor反应堆模式】
linux·网络·学习·ubuntu·reactor
讯捷蓝达6 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
且从容.7 小时前
ubuntu安装flink
linux·ubuntu·flink
数字新视界8 小时前
动环监控信创适配在智能机房管理中的应用价值与未来展望
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
爱和冰阔落8 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
程序员沉梦听雨8 小时前
WSL2的安装与使用
linux·wsl
微小的鱼9 小时前
Linux的渲染与显示系统链路
android·java·linux
lisanmengmeng9 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器