Linux常用命令大全(超详细!!!)

文章目录

  • 1.Linux是什么
    • 1.1 关于Linux我们主要学习什么
    • 1.1 学习Linux常见命令的前置知识
  • 2. Linux常见命令
    • 2.1 ls命令
    • 2.2 cd命令
    • 2.3 pwd命令
    • 2.4 touch命令
    • 2.5 cat命令
    • 2.6 echo命令
    • 2.7 vim命令
    • 2.8 mkdir 命令
    • 2.9 rm命令
    • 2.10 cp命令
    • 2.11 mv命令
    • 2.12 grep命令
    • 2.13 ps命令
    • 2.14 netstat命令
  • 3. Linux常见面试题

1.Linux是什么

在学习Linux的常用命令之前,我们先介绍下Linux是什么——Linux也是一种操作系统,和Windows是“并列”关系。

1.1 关于Linux我们主要学习什么

1.基础命令:Linux 虽然也有图形化界面, 但是在 服务器 / 嵌入式设备上往往都是通过命令行的方式操作的. 因此学习
Linux 命令就是使用 Linux 的重要基础.
2. 部署Javaweb项目:我们自己写的 web 程序, 要想让其他的用户能够访问, 就需要发布到服务器上. 这是我们接下里重点学习
的内容(下一节介绍)

1.1 学习Linux常见命令的前置知识

学习Linux常见命令之前,我们可以先了解一下以下的知识:
在这里插入图片描述

2. Linux常见命令

2.1 ls命令

ls : 列出当前目录/指定目录下都有哪些文件,相当于我们Windows中双击某个目录去查看里面的文件。

  • ls

列出当前目录下有哪些文件,如图:

在这里插入图片描述
其中的蓝色的是目录,白色的是文件。

  • ls list

其中list为指定目录,ls后面跟一个具体的目录,表示列出指定目录下有哪些文件,如图:
在这里插入图片描述
其中的"/“表示Linux中的根目录,与我们Windows系统中的"此电脑"类似。
需要注意的是,当我们查看指定目录的时候就不用加”/",ls后面直接跟上目录即可,不然就出现了下面的错误。
在这里插入图片描述

  • ls -l

显示文件的详细信息
在这里插入图片描述
值得注意的是,Linux也为我们提供了"ll"命令,和"ls -l"命令是一样的,后续我们可以使用"ll"命令即可。

  • ls -a

列出目录下的所有文件,包括以 . 开头的隐含文件。
在这里插入图片描述

2.2 cd命令

cd:切换当前目录(change directory),相当于我们Windows中双击某个目录。
cd后面要跟上我们要切换的目录的路径,可以是绝对路径也可以是相对路径。其中绝对路径是以/开头,而相对路径是以./(表示当前目录)或…/(表示当前目录的上一级)开头,其中的./也是经常省略的

  • cd /
    绝对路径的方式
    在这里插入图片描述
  • cd ./
    相对路径的方式(从当前路径开始)
    在这里插入图片描述
    ./也可以省略,如下图:
    在这里插入图片描述
  • cd ../
    相对路径的方式(从当前路径的上一级开始)
    比如按我们上面的举例,我们现在所在目录为forum,上一级为home目录,即/root。我们所在的~目录就是/root目录。我们现在切换到root下的log目录,操作如下:
    在这里插入图片描述
    在这里插入图片描述
  • cd
    cd后面什么都不加的情况下,此时就会回到home目录,类似于我们打游戏的时候的回城。
    在这里插入图片描述

2.3 pwd命令

在上面我们介绍了cd命令,是切换目录的,很多时候我们切换过几次目录后就可能不知道我们具体所在的目录了,这个pwd命令就是防止我们迷路的。

  • pwd
    显示当前目录的完整路径
    在这里插入图片描述

2.4 touch命令

  • touch 文件名
    用来创建一个文件
    在这里插入图片描述

创建完之后Linux并没有给我们任何反馈,这些肯定就会有人疑惑了,那它到底创建成功没有呢?其实创建成功了,在Linux中有一句话就是这么说的,没有消息就是最好的消息(no news is good news)。我们也可以通过上面介绍的ls命令进行查看当前目录下的文件,如下图:

在这里插入图片描述

2.5 cat命令

  • cat

查看文件内容
在装好的Linux下都有yum.conf文件,我们就拿这个文件进行举例,如下图:我们先切换到etc目录,然后查看其中yum.conf文件的内容

在这里插入图片描述
需要注意的是cat读取一些简单短小的文件可以,但当读取非常大的文件的时候就不适用了。

2.6 echo命令

echo: 用来写文件

  • echo 内容 > 文件名
    这里的">"则是重定向的意思。需要注意的是echo的写入方式不是以追加的方式,而是清空文件内容再进行写入。
    在这里插入图片描述
    正如我们上面说的,没有消息就是最好的消息,当我们通过echo命令写入文件后,并没有任何反馈,我们可以使用上述介绍的cat命令查看111.txt文件的内容来验证是否写入成功,结果发现是写入成功的。

2.7 vim命令

在上面我们介绍了cat命令是查看文件内容的,echo命令是往文件中写内容的,但他们都是针对简单短小的文件的,如果是针对复杂的文件进行复杂的编辑,那么应该怎么处理呢?这就可以用到我们的vim命令了,它就相当于Linux上的文本编辑器,和我们经常使用的记事本类似。
这里我们介绍vim的三个最基本的用法。

  1. 打开文件
  2. 编辑文件
  3. 保存退出
  • 打开文件 : vim 文件名/文件路径
    以我们上面创建的111.txt文件为例,如下图:
    在这里插入图片描述
    进来之后就可以看到以下界面。
    在这里插入图片描述
    到了这里很多人就开始敲键盘进行编辑了,结果发现在键盘上敲了半天没有反应,这是为什么呢?
    这是vim 打开文件后默认是普通模式. 普通模式下键盘的按键表示一些特殊功能的快捷键. 我们 需要进入插入模式才能进行文本编辑.

  • 编辑文件
    按下 i 键可以进入到插入模式. (左下角提示 --INSERT-- ) 然后就可以像记事本一样正常编辑了.
    在这里插入图片描述

  • 保存退出:先按esc回到普通模式再输入":wq" 再按回车。
    在编辑完文件后我们发现并没有"×"让我们关闭页面,也不能使用ctrl+s保存文件,在Linux中我们是先通过"esc"按键回到"普通模式"然后输入":wq"进行退出。
    在这里插入图片描述

2.8 mkdir 命令

mkdir:创建目录(make directory)

  • mkdir 目录名
    创建一个目录,与我们Windows中新建一个文件夹类似。

在这里插入图片描述

  • mkdir -p 目录1/目录2/目录3

同时我们也可以递归创建目录,比如我们要创建aa//bb/cc,如下图:
在这里插入图片描述
在这里插入图片描述

2.9 rm命令

rm:删除目录/删除文件

  • rm 文件名

这是指删除指定的文件,一般在我们删除时,Linux都会提示我们是否确认删除,确认一下即可,如图:

在这里插入图片描述

  • rm -r 目录名

在上面我们提到直接使用rm+文件名可以直接删除文件,但当我们这样删除一个目录的时候,Linux则会提示不能删除,这是一个目录。如下图:

在这里插入图片描述
此时就需要用到rm -r 进行递归删除这个目录和该目录里的所有文件,如下图:
在这里插入图片描述

细心的小伙伴这个时候就会发现,当我们递归删除一个目录的时候,每删除一个目录系统都会询问是否删除,那当我们要递归删除一个成千上万的目录的时候也需要这样一个一个的确定吗,答案是否定的,这就是我们接下来要介绍的命令了

  • rm -rf 目录名

这里的f表示的是强制删除,当加上之后我们再进行删除的时候系统就不会一次次的确定了。如下图,我们先递归依次创建出aa,bb,cc目录,然后再进行递归删除。
在这里插入图片描述

2.10 cp命令

cp: 复制文件或目录

  • cp 源文件 目标文件

现在我们有一个111.txt文件,我们现在将它复制一份命名为222.txt,操作如下:
在这里插入图片描述
需要注意的是,拷贝操作有时也是很危险的,如果我们拷贝的目标文件已经存在,此时进行拷贝就会出现 “覆盖” 的情况。

  • cp -r 源目录 目的目录

上面我们介绍的是复制文件,当然cp命令也是可以复制目录的,加一个 -r 即可。
已知我们已经有一个aaa目录,里面有一个text.txt文件,我们现在将aaa目录拷贝到bbb目录,操作如下:
在这里插入图片描述

2.11 mv命令

mv: 移动或重命名文件或目录

  • mv 源文件 目标文件

上面我们已经有一个bbb目录,里面有一个text.txt文件,我们现在将这个text.txt文件移到到ccc目录下并重命名为text2.txt,操作如下
在这里插入图片描述
上面介绍的是将一个文件移到到其他目录下,如果移到的源文件和目标文件本身就在同一个目录下,此时就相当于给这个文件改名字,和Windows中的重命名类似。我们现在将ccc目录下的text2.txt文件重命名为text.txt,操作如下:

在这里插入图片描述

  • mv 源目录 目标目录

和上面的rm命令不同的是,我们移动目录的时候不用加-r表示递归移动,直接移动即可。现在我们将ccc目录移到到bbb目录下,操作如下:
在这里插入图片描述

2.12 grep命令

grep: 字符串匹配

  • grep 字符串 文件名

快速搜索某个文件中是否包含某个特定字符串。操作如下:
在这里插入图片描述
同时,grep还可以在多个文件中搜索,具体操作如下:
在这里插入图片描述
当然,grep不仅有搜索的功能,它还能搭配不同的命令进行联动,这也就是我们接下来要介绍的几种命令。

2.13 ps命令

ps : 查看进程

  • ps

这样直接通过ps能查看的内容非常有限,通常要使用一些固定选项。
在这里插入图片描述

  • ps aux
    列出系统中的所有进程(关于aux我们可以通过man查看帮助手册了解——man aux)
    在这里插入图片描述
  • ps aux | grep mysql
    在上面我们介绍grep的时候说过它通常是和其他命令搭配使用的,这就是其中的一种,通过该命令我们就可以查看包含mysql的进程。
    在这里插入图片描述

2.14 netstat命令

netstat:用来查询网络状态

  • netstat anp
    在这里插入图片描述
  • netstat -anp | grep java

这个就是查询我们Java进程的网络状态
在这里插入图片描述

3. Linux常见面试题

  1. 说说你常用的Linux命令有哪些?
  2. Linux如何给定进程名,查看进程的pid?
  3. Linux给定进程名,如何查看进程的绑定的端口号?
    第一个我们就不多说了,就介绍一下自己常用的命令即可。
    第二个比如我们要查看mysql进程的pid就用到了上面的ps命令:
  • ps -aux | grep mysql
    第三个比如我们查看Java进程的端口号就用到netstat命令:
  • netstat -anp | grep java
    这次的分享就到这里结束了,下一节我们将介绍如何将自己的项目部署到服务器上让别人都可以通过我们给的地址进行访问,感谢支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/37897.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文华财经通达信同花顺期货通盘立方博易大师主图指标公式源码

买线:EMA(C,2); 卖线:EMA(SLOPE(C,21)*20C,42); BU:CROSS(买线,卖线); SEL:CROSS(卖线,买线); STICKLINE1(买线>卖线,LOW,MIN(O,C),0.1,1),COLORRED; STICKLINE1(买线>卖线,MAX(O,C),HIGH,0.1,1),COLORRED; STICKLINE(买线>卖线,CLOSE,OPEN,8,1),COLORRED; STI…

【简单讲解下OneFlow深度学习框架】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

AD如何将厂家的元器件库,添加到自己的元器件库

首先,去官网下载对应芯片的原理图和封装,之后用分别双击打开原理图和封装。之后打开自己的原理图库和封装库。如下图: 打开原理图和封装后框选,之后crlC复制,之后点开自己的原理图库和封装库,随便单击一个元…

Linux(Ubuntu20.04)系统中安装deb软件包错误(依赖关系问题-仍未被配置)解决的办法

在Ubuntu16.04下采用如下dpkg命令安装deb软件安装包时: sudo dpkg -i XXXX.deb 发生安装失败,返回信息为"正处理时有错误发生",并且在安装过程中出现"依赖关系问题-仍未被配置"的提示&#xff0…

51单片机第11步_在C语言中插入汇编语言

本章重点介绍如何在C语言中插入汇编语言。要不是有记录,真不知道怎么搞。 /* 你在 Project Workspace窗口中,将光标移到DELAY.c处,点下鼠标右键,选择"Options for file DELAY.c", 点击右边的"Generate Assembler SRC File"和“Assemble SRC …

【PL理论深化】(12) Ocaml 语言:高阶函数 | map 函数 | filter 函数 | fold 函数

💬 写在前面:在函数式编程中,除了递归函数外,还经常使用高阶函数。高阶函数是指接收其他函数作为参数或返回另一个函数的函数。高阶函数通过抽象编程模式以实现重用,使程序可以在更高层次上进行编写。让我们重点看看常…

K8S基础简介

用于自动部署,扩展和管理容器化应用程序的开源系统。 功能: 服务发现和负载均衡; 存储编排; 自动部署和回滚; 自动二进制打包; 自我修复; 密钥与配置管理; 1. K8S组件 主从方式架…

socket编程常见操作

1、连接的建立 分为两种:服务端处理接收客户端的连接;服务端作为客户端连接第三方服务 //作为服务端 int listenfd socket(AF_INET, SOCK_STREAM, 0); bind(listenfd, (struct sockaddr*)&servaddr, sizeof(servaddr))) listen(listenfd, 10); //…

SARscape打开Sentinel1A SAR SLC产品(CSDB_20240630)

1.打开envi,在右侧工具包栏输入“sentinel-1”,并点击打开工具包。 2. 弹出文件导入界面,点击右侧Browse按钮。 3. 选在本地下载好的Sentinel1产品,文件路径最好全是英文,不要出现中文和特殊字符。 4 点击下方“Exec”…

BLACKBOX.AI:解锁编程学习新纪元,加速开发的AI得力助手

文章目录 💯BLACKBOX.AI 官网🍁1 BLACKBOX.AI 工具使用教程🍁2 BLACKBOX.AI工具使用界面介绍🍁3 Chat(聊天)功能🍁4 Explore (探索)功能💎4.1 Terminal(终端)功能💎4.2 Discover(发现)功能&…

ros1仿真导航机器人 hector_mapping gmapping

仅为学习记录和一些自己的思考&#xff0c;不具有参考意义。 1 hector_mapping 建图过程 &#xff08;1&#xff09;gazebo仿真 roslaunch why_simulation why_slam.launch <launch><!-- We resume the logic in empty_world.launch, changing only the name of t…

助农扶贫网站

摘要&#xff1a;随着信息科技的快速发展和互联网的普及&#xff0c;信息技术在助力农业发展、促进农村振兴以及扶贫工作中发挥着越来越重要的作用。本文基于Spring Boot框架和Vue.js前端开发技术&#xff0c;设计完成了一个助农扶贫电商网站。网站提供便捷的农产品信息发布、农…

three.js - MeshStandardMaterial(标准网格材质)- 金属贴图、粗糙贴图

金属贴图、粗糙贴图 金属贴图&#xff1a;metalnessMap 和 粗糙贴图&#xff1a;roughnessMap&#xff0c;是用于模拟物体表面属性的两种重要贴图技术&#xff0c;这两种贴图&#xff0c;通常与基于物理的渲染&#xff08;PBR&#xff09;材质&#xff08;如&#xff1a;MeshSt…

DC-DC产品设计PCB注意事项

DC-DC的电路比LDO会复杂很多&#xff0c;噪声也更大&#xff0c;布局和layout要求更高&#xff0c;layout的好坏直接影响DC-DC的性能&#xff0c;所以了解DC-DC的layout至关重要。 一、Bad Layout EMI&#xff0c;DC-DC的SW管脚上面会有较高的dv/dt&#xff0c; 比较高的dv/d…

FastAPI教程II

本文参考FastAPI教程https://fastapi.tiangolo.com/zh/tutorial Cookie参数 定义Cookie参数与定义Query和Path参数一样。 具体步骤如下&#xff1a; 导入Cookie&#xff1a;from fastapi import Cookie声明Cookie参数&#xff0c;声明Cookie参数的方式与声明Query和Path参数…

HIVE每日一题

select * from sku_info order by sku_id ; 为什么结果没有顺序排序。什么原因导致的&#xff1f;

小红书多账号管理平台哪个好用?可以快速监测多个小红书账号的数据吗?

随着品牌营销战线的不断扩展&#xff0c;小红书已经成为企业和个人品牌竞相展示的舞台。但是&#xff0c;随之而来的多账号管理问题也让众多运营者头疼不已。一个优秀的多账号管理平台&#xff0c;能让你事半功倍&#xff0c;轻松监控和分析账号数据。 如今&#xff0c;市面上出…

SiteSucker Pro for Mac:一键下载整站,轻松备份与离线浏览!

SiteSucker Pro for Mac是一款专为苹果电脑用户设计的网站下载与备份工具&#x1f578;️。它以其强大的整站下载能力和用户友好的界面&#xff0c;成为了众多Mac用户备份网站、离线浏览的得力助手&#x1f4bb;。 这款软件允许用户一键下载整个网站&#xff0c;包括所有的网页…

鸿蒙开发Ability Kit(程序框架服务):【选择申请权限的方式】

选择申请权限的方式 应用在访问数据或者执行操作时&#xff0c;需要评估该行为是否需要应用具备相关的权限。如果确认需要目标权限&#xff0c;则需要在应用安装包中申请目标权限。 每一个权限的权限等级、授权方式不同&#xff0c;申请权限的方式也不同&#xff0c;开发者在…

java spring 拦截器和过滤器+过滤器处理数据

java spring 拦截器和过滤器过滤器处理数据 介绍Spring拦截器&#xff08;Interceptor&#xff09;导入依赖完整代码 Java过滤器&#xff08;Filter&#xff09;完整代码分为 2 个文件&#xff0c;请看下面BodyReaderHttpServletRequestWrapper.javaMyFilter.java Spring过滤器…