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

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


🚀 欢迎来到我的ZEEKLOG博客: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命令

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

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

pwd命令

pwd

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

在这里插入图片描述

cd命令

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

# 返回上级目录 cd ..# 进入用户目录 cd ~ # 返回最近访问目录 cd -
在这里插入图片描述

touch命令

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

touch [选项] 文件 touch test.txt 
在这里插入图片描述

cat命令

功能:查看文件内容

cat test.txt 
  • -n:对输出的所有行进行编号

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

在这里插入图片描述

mkdir命令

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

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

rm命令

功能:删除文件或目录

rm[-f -i -r -v][路径]rm test.txt 
  • -f :即使文件属性为只读,也直接删除
  • -i:删除前逐一询问确认
  • -r:删除目录及其以下所有文件
在这里插入图片描述

cp命令

功能:复制文件或目录。

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

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

mv 命令

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

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

tail 命令

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

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

vim

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

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

grep 命令

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

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

管道符 |

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

tail -f test.txt|grep "Exception"

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

ps 命令

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

ps aux 
  • a显示一个终端所有的进程
  • u以用户为主的格式来显示程序状况
  • x显示所有程序,包括系统守护进程
  • f显示完整格式输出
在这里插入图片描述

netstat 命令

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

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
📌 收藏本文,下次需要时不迷路!

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


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

在这里插入图片描述

Read more

43-dify案例分享-MCP-Server让工作流秒变第三方可调用服务

43-dify案例分享-MCP-Server让工作流秒变第三方可调用服务

1.前言 之前我们为大家介绍过MCP SSE插件,它能够支持MCP-server在Dify平台上的调用,从而帮助Dify与第三方平台提供的MCP-server进行无缝对接。有些小伙伴提出了疑问:既然Dify可以通过MCP SSE插件调用其他平台的MCP-server,那么Dify的工作流或Chatflow是否也能发布为MCP-server,供其他支持MCP client的工具使用呢?今天,我们将为大家介绍一款Dify插件——mcp-server,它能够实现这一功能,即将Dify的工作流或Chatflow发布为MCP-server,供其他第三方工具调用。 插件名字叫做MCP-server,我们在dify插件市场可以找到这个工具 Mcp-server 是一个由 Dify 社区贡献的 Extension 类型插件。安装后,你可以把任何 Dify 应用转变成符合 MCP 标准的 Server Endpoint,供外部 MCP 客户端直接访问。它的主要功能包括: * **暴露为 MCP 工具:**将 Dify 应用抽象为单一 MCP 工具,供外部 MCP 客户端(如

By Ne0inhk
【MCP】详细了解MCP协议:和function call的区别何在?如何使用MCP?

【MCP】详细了解MCP协议:和function call的区别何在?如何使用MCP?

本文介绍了MCP大模型上下文协议的的概念,并对比了MCP协议和function call的区别,同时用python sdk为例介绍了mcp的使用方式。 1. 什么是MCP? 官网:https://modelcontextprotocol.io/introduction 2025年,Anthropic提出了MCP协议。MCP全称为Model Context Protocol,翻译过来是大模型上下文协议。这个协议的主要为AI大模型和外部工具(比如让AI去查询信息,或者让AI操作本地文件)之间的交互提供了一个统一的处理协议。我们常用的USB TypeC接口(USB-C)统一了USB接口的样式,MCP协议就好比AI大模型中的USB-C,统一了大模型与工具的对接方式。 MCP协议采用了C/S架构,也就是服务端、客户端架构,能支持在客户端设备上调用远程Server提供的服务,同时也支持stdio流式传输模式,也就是在客户端本地启动mcp服务端。只需要在配置文件中新增MCP服务端,就能用上这个MCP服务器提供的各种工具,大大提高了大模型使用外部工具的便捷性。 MCP是开源协议,能让所有A

By Ne0inhk
超详细图文教程:用vscode+copilot(代理模式)便捷使用mcp+一个范例:用自然语言进行3d建模

超详细图文教程:用vscode+copilot(代理模式)便捷使用mcp+一个范例:用自然语言进行3d建模

在vscode使用claude mcp吧! 在vscode更新到最新版本(注意,这是前提)后,内置的copilot可以使用mcp了!!! 关于mcp(Model Context Protocol 模型上下文协议),可以参考我的上一篇文章: MCP个人理解+示例+集成管理+在python中调用示例,给AI大模型装上双手-ZEEKLOG博客 以下是使用教程: 1.点击左下角的齿轮状设置按钮,点击设置 2.在输入面板输入chat.agent.enabled,勾上勾选框 3.点击Ctrl+shift+P,输入reload,点击重新加载窗口,刷新窗口 4.打开copilot后,在右下角将模式改为代理即可。 5.点击工具按钮,开始安装mcp 先去github找到自己想要添加的mcp服务,以blender MCP为例,打开https://github.com/ahujasid/blender-mcp,可以在readme文档里看到详细的安装过程。可以看到,

By Ne0inhk
【大模型系列篇】大模型基建工程:基于 FastAPI 自动构建 SSE MCP 服务器

【大模型系列篇】大模型基建工程:基于 FastAPI 自动构建 SSE MCP 服务器

今天我们将使用FastAPI来构建 MCP 服务器,Anthropic 推出的这个MCP 协议,目的是让 AI 代理和你的应用程序之间的对话变得更顺畅、更清晰。FastAPI 基于 Starlette 和 Uvicorn,采用异步编程模型,可轻松处理高并发请求,尤其适合 MCP 场景下大模型与外部系统的实时交互需求,其性能接近 Node.js 和 Go,在数据库查询、文件操作等 I/O 密集型任务中表现卓越。 开始今天的正题前,我们来回顾下相关的知识内容: 《高性能Python Web服务部署架构解析》、《使用Python开发MCP Server及Inspector工具调试》、《构建智能体MCP客户端:完成大模型与MCP服务端能力集成与最小闭环验证》   FastAPI基础知识 安装依赖 pip install uvicorn, fastapi FastAPI服务代码示例  from fastapi import FastAPI app

By Ne0inhk