【从零开始学习Linux】常用命令及操作

news2024/11/22 21:55:32

 哈喽,哈喽,大家好~ 我是你们的老朋友:保护小周ღ  


本期给大家带来的是 Linux 常用命令及操作,主要有三个分类:文件操作,目录操作,网络操作,创建文件 touch , 创建目录 mkdir  , 删除文件或目录 rm , 文本编辑器 vim , 查看文件内容 cat , 文件覆盖写入 echo ,  文件目录复制 cp , 文件目录移动或重命名 mv,以及网络相关命令,ps + grep 命令,查看指定进程,netstat +  grep 查看进程的端口号及使用指定端口号的进程,sudo 执行特殊权限的任务,我们可以配合其他的一些指令来释放端口~ 更多指令操作,还请阅读下文呐~


本期收录于博主的专栏:Linux_保护小周ღ的博客-CSDN博客

适用于编程初学者,感兴趣的朋友们可以订阅,查看其它 “JavaEE基础知识”。

更多精彩敬请期待:保护小周ღ *★,°*:.☆( ̄▽ ̄)/$:*.°★*

Linux 操作系统不像 windows 那样是图形化操作界面,而是操作的时候需要靠输入命令或一些快捷键进行的。Linux 也拥有自己的图形化操作界面,但是在实际的工作中,一般不会使用。

图形化操作界面的优势是,更适合大众上手,操作简单。

命令行操作系统的优势在于,执行更为高效,也是各大企业的生产工具。

  1. 命令行数据传输带宽占用非常低,图形化界面本质上背后还是对接指令。
  2. 系统资源占用非常低,不需要支持图形处理。
  3. 命令行适合通过脚本语言来实现批量重复的操作。

接下来,给大家带来的是 Linux 上常使用的命令。

使用终端软件 Xshell 登录云服务器后:

注意:对于 Linux 操作系统来说有时候输入命令没有提示就意味着操作成功!!! 


一、目录操作

1.1  ls (list 列出当前所有文件)

语法:ls [选项] [目录或文件]

功能:list 列出当前目录/指定目录中有那些文件,在Windows 中相当于双击了某个文件夹。

常用选项:

  • -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
  • -d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
  • -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
  • -l 列出文件的详细信息。
  • -r 对目录反向排序。
  • -t 以时间排序。
  • -R 列出所有子目录下的文件。(递归)

这些选项,也叫做 “命令行参数” 参数和参数之间,至少需要一个空格来分割。

因为博主这里是新的服务器,没有创建多余的文件。

ls 后面跟着一个具体的目录,就可以看出指定目录中的内容。

 蓝色表示的是目录,白色表示的是文件,红色一般是压缩包或一些特殊的文件

 ls - l 能够查看目录的详细信息:

Linux 也提供了 ll 操作,等价于 ls -l 


1.2 cd (change directory 切换目录)

在Linux 系统中,磁盘上的文件和目录是一个树,每个节点都是目录或文件。这一点更 Windows 一样。

语法:cd [目录名]

功能:改变工作目录,将当前工作目录改变到指定的目录下。(Win 双击其他文件夹)

cd 后面跟着需要切换的目录/ 路径(可以使用相对路径也可以使用绝对路径)

Linux 上的绝对路径是以 “/” 开头的路径

举例:

cd ..  : 返回上级目录

cd~  或直接 cd : 回到 home 目录

cd- :返回最近访问的目录

几个特殊的目录:

  • /  称为根目录
  • . 称为当前目录
  • .. 称为当前目录的上级目录

绝对路径 vs 相对路径
形如: /usr/share/tomcat/logs/ 以根目录开头的, 称为绝对路径.
形如: ./xiaohu 以 . 或者 .. 开头的,称为相对路径(通常 ./ 省略不写)

拓展快捷键:

使用 tab 键可以实现自动补全。

例如,我敲命令 cd  /xiao , 然后点击  tab ,就会自动补全为 cd  /xiaohu 

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

使用 ctrl + c 重新输入

如果命令或者目录敲错了,就可以使用此快捷键取消当前的命令。

在xshell 中可以使用 ctrl + l 进行清屏,或者直接敲 clear 命令


 1.3 pwd (显示当前绝对路径)

显示用户当前所在的目录

有的时候  cd 的次数太多了,记不清当前处于那个路径当中,就可以使用 pwd 查看当前的完整路径。


1.4 mkdir (创建目录)

语法:mkdir [选项] dirname

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

常用选项:

-p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将
自动建立好那些尚不存在的目录,即一次可以建立多级目录

例如:

 也可以单纯的创建一个目录


1.5 rm (删除目录或文件)

语法:rm [选项]  [dirname / dir]

功能:删除文件或目录

常用选项:

  • -f   即使文件为只读属性,也可以直接删除
  • -i  删除前逐一确认是否删除
  • -r  删除目录及其下所有文件(递归)

注意,删除文件可以直接 rm  test.txt,但是不可以直接删除目录。删除目录需要使用 rm -r 递归删除,需要同时删除目录中所有的文件和子目录。

这是在目录中文件较少的情况下,如果目录中的文件成百上千,那真的是删的手酸,此时我们可以使用  rm -rf [dirname] 此处的 f 表示强制删除,不需要确认。

也可以使用 rm -rf * 此处的 * 代表的是通配符,能够匹配到当前目录中的所有文件,就是全选。

注意事项 !!!:Linux 上没有回收站的概念,所以删除文件的时候请务必小心谨慎,还有千万不要运行 rm - rf / "/" 代表的是整个文件系统中最顶级的节点了,此命令一出操作系统都能给你删了,尤其是以后在公司服务器上!!!


二、文件操作

2.1 touch (创建一个空的文件 )

语法:touch [选项]  文件

功能:touch 命令参数可更改文档或目录的日期时间,包括存储时间和更改时间,或者新建一个不存在的文件。

[root@iZ0jlcqjnf4x7vvdkcnu6wZ ~]# ls
usr  xiaohu
[root@iZ0jlcqjnf4x7vvdkcnu6wZ ~]# mkdir test
[root@iZ0jlcqjnf4x7vvdkcnu6wZ ~]# ll
total 12
drwxr-xr-x 2 root root 4096 Jul 20 10:00 test
drwxr-xr-x 3 root root 4096 Apr 25 12:43 usr
drwxr-xr-x 3 root root 4096 May 27 16:04 xiaohu
[root@iZ0jlcqjnf4x7vvdkcnu6wZ ~]# ll
total 12
drwxr-xr-x 2 root root 4096 Jul 20 10:00 test
drwxr-xr-x 3 root root 4096 Apr 25 12:43 usr
drwxr-xr-x 3 root root 4096 May 27 16:04 xiaohu
[root@iZ0jlcqjnf4x7vvdkcnu6wZ ~]# cd test/
[root@iZ0jlcqjnf4x7vvdkcnu6wZ test]# ll
total 0
[root@iZ0jlcqjnf4x7vvdkcnu6wZ test]# touch test1.txt
[root@iZ0jlcqjnf4x7vvdkcnu6wZ test]# ll
total 0
-rw-r--r-- 1 root root 0 Jul 20 10:00 test1.txt
[root@iZ0jlcqjnf4x7vvdkcnu6wZ test]# 

上述命令中我在根目录下使用 mkdir 命令创建了 test 文件夹,随后在test 文件夹内创建了 test1.txt 文本文件


2.2 cat (读取文件内容)

语法:cat [选择] [文件]

常用选项:

-n 对输出的所有行编号

cat test1.txt

 cat 命令适合针对简单短小的文件进行读取,cat 是 concatenate 的缩写不是猫的意思~

事例的话,因为还没有写入数据所以在写入的命令再演示~ 


2.3 echo (写文件)

echo 命令适合针对简单的文件进行操作 ,如果文件过于复杂其实是不方便的。

语法 :echo "内容"  > [文件名]

echo  +  >  是重定向的意思,将内容写入到某某文件,如果把 “>” 忘记了那么他就会把要写入的内容在控制台打印。

此外,对同一文件多次使用 echo + > 重定向,会覆盖掉原有的内容,不能够追加。

小结:echo 和cat 这样的命令只适合针对简单的文件进行操作,如果文件过于复杂就不合适了,echo 和 cat 命令在编写自动化脚本批量处理这样的操作就比较合适。


2.3 vim (文本编辑器)

vim 适合针对复杂的文件进行编辑处理,可以理解为 windows 的记事本~

这里给大家介绍3个最基本的用法:

  1. 打开文件
  2. 编辑文件
  3. 保存退出

1. 创建文件/ 打开文件

vim [文件名]

以下是输入:vim test1.txt 的页面展示 

可以看到也是展现出我们前面使用 echo 插入的 “hello”。现在是普通模式无法编辑~ 

2. 进入插入模式 

默认vim 处于 normal mode (普通模式),普通模式下键盘的按键表示一些特殊功能的快捷键,想要正确的编辑文件,使用 i 键(inset)进入插入模式,然后就可以像记事本那样编辑文本了~~

3. 保存

在插入模式下不能保存文件,需要先回到普通模式,按下 ESC 可以回到普通模式,在在普通模式下输入 :w , 再按下回车, 即可保存文件。

4.  退出
在插入模式下不能退出, 需要先回到 普通模式。
在普通模式下输入 :q , 再按下回车, 即可退出。
也可以直接使用 :wq 同时执行保存和退出。

 


三、cp (复制) 和 mv (剪切)

3.1 copy

cp- copy 复制的意思

语法:cp [选项] 源文件或目录  复制到:目标文件或目录

功能: 复制文件或目录

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


常用选项:

  • -f  或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i  或 --interactive 覆盖文件之前先询问用户
  • -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
  • -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

举例,将 test1.txt 文件复制到当前目录下并命名为 test2.txt

拷贝操作,有时候是比较危险的,如果拷贝的目标文件,已经存在,就会发生“覆盖”的情况!!!

这个时候我们可以添加选项 -i , cp -i  源文件  目标文件,如果有覆盖情况会询问用户。

cp 命令在复制目录的时候,必须加上 -r 选项,表示递归复制。


3.2 mv

语法:mv [选项] 源文件或目录  移动到目标文件或目录

功能:

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

 常用选项 :
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖! 

  • mv 在移动的时候,可以给目标文件重命名,一边移动一边重命名,如果移动的源文件或目录跟目标文件或目录处在同一目录下,这个时候就是单纯的改名字了。
  • Linux 中没有单独的命令重命名,通过 ,mv 命令来完成。
  • mv 移动目录时不需要添加 -r 选项。
  • cp 命令在执行过程中是比较慢的,需要大规模的读写硬盘,mv 命令执行是非常高效的,几乎是瞬间完成,因为:在操作系统中的文件系统中每个文件的“路径” 就是一个简单的属性,mv 就只是单纯的修改这个路径的属性而已,时间复杂度是 O(1)。
  • Linux 没有回收站的概念,所以可以用 mv 命令来模拟回收站的效果,想删除某个东西,并不是直接 rm 命令,而是通过 mv 命令将要删除的移动到一个单独的目录中作为回收站使用。


四、网络设置

4.1 grep (字符串匹配)

语法:grep [参数]... [文件]...
功能:用于查找文件中是否包含指定字符串, 并显示对应的行.

选项:

  • -n<行数> 显示的行数
  • -w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分.
  • -r 递归查找. 可以搜索多级目录下的所有文件.
  • --color 高亮查找到的结果
  • --include 指定查找某些文件
  • --exclude 指定排除某些文件

举例查询:  test目录下 test1.txt 文件中的 “hello” 

grep 字符串匹配可以快速的在某个文件中是否包含了某个特定的字符串。

grep 也可以同时在很多文件中进行搜索:  grep  - n "hello"  *  -R 

* 表示当前目录下的所有文件, - R 表示递归搜索,如果当前目录下还有目录,就会自动进入目录中进行搜索。

grep 命令不仅仅能搜索文件中的内容,还可以和其他命令配合使用。


4.2  ps  (查看进程)

语法:ps [参数]...
功能:用于查看当前系统上运行的进程

选项:

  • a 显示一个终端的所有进程
  • u 以用户为主的格式来显示程序状况
  • x 显示所有程序,不以终端机来区分

直接使用 ps 命令查看的内容非常有限,所以ps 命令常常搭配一些固定的选项。

使用 ps aux 可以列出系统上所有的进程:

但是更多的时候我们不会关心所有的进程,而是只关心我们想要的进程,这个情况下就需要配合 grep 命令就可以进行快速筛选了。ps aux | grep [要查询的进程]

管道是 Linux 中非常经典的方式~


4.3 netstat (查询网络状态)

语法:netstat [参数]...
功能:查看系统上的网络状态.

选项:

  • -a 显示所有正在或不在侦听的套接字
  • -n 显示数字形式地址而不是去解析主机、端口或用户名
  • -p 显示套接字所属进程的PID和名称

举例:

  • netstat -anp
  • netstat -anp | grep "进程名"
  • netstat -anp | grep "端口号"

但是更多的是我们只需要关注部分信息, 这个就需要搭配 grep 命令来进行查询了~~

每一个联网的应用程序启动时会绑定一个端口号,作为本机的应用程序的标识~

例如:

查询 mysql 服务的端口号:

查询 3306 端口是否被其他进程占用了~~


4.4 sudo (执行特殊权限的任务,释放端口)

我们在项目部署的时候可能会遇到某些特殊端口被占用的情况下,释放占用的端口:

1. 查找占用8080端口的进程ID:

sudo lsof -i :8080

2. 结束占用端口的进程,您可以使用 kill命令来结束该进程。例如,如果上一步的输出显示进程ID为1234,则可以使用以下命令结束该进程:

sudo kill 1234

3. 确认端口被释放,可以再次使用lsof命令验证端口是否已被释放。

sudo lsof -i :8080


好了,到这里,【从零开始学习Linux】常用命令及操作 博主已经分享完了,希望对大家有所帮助,如有不妥之处欢迎批评指正。 

感谢每一位观看本篇文章的朋友,更多精彩敬请期待:保护小周ღ *★,°*:.☆( ̄▽ ̄)/$:*.°★* 

遇见你,所有的星星都落在我的头上……

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

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

相关文章

【了解一下常见的设计模式】

文章目录 了解一下常用的设计模式(工厂、包装、关系)导语设计模式辨析系列 工厂篇工厂什么是工厂简单工厂「模式」&#xff08;Simple Factory「Pattern」&#xff09;简单工厂代码示例&#xff1a;简单计算器优点&#xff1a;缺点&#xff1a; 静态工厂模式特点&#xff1a; 工…

基于Spring Boot的社区诊所就医管理系统的设计与实现(Java+spring boot+MySQL)

获取源码或者论文请私信博主 演示视频&#xff1a; 基于Spring Boot的社区诊所就医管理系统的设计与实现&#xff08;Javaspring bootMySQL&#xff09; 使用技术&#xff1a; 前端&#xff1a;html css javascript jQuery ajax thymeleaf 微信小程序 后端&#xff1a;Java …

改进YOLO系列:2.添加ShuffleAttention注意力机制

添加ShuffleAttention注意力机制 1. ShuffleAttention注意力机制论文2. ShuffleAttention注意力机制原理3. ShuffleAttention注意力机制的配置3.1common.py配置3.2yolo.py配置3.3yaml文件配置1. ShuffleAttention注意力机制论文 论文题目:SA-NET: SHUFFLE ATTENTION …

教育行业选择CRM的四大要求

随着互联网教育的发展和变迁&#xff0c;越来越多的教育机构开始意识到管理客户关系的重要性。然而&#xff0c;对于教育行业来说&#xff0c;选择一款适合自己的CRM系统也不轻松。下面就来说说&#xff0c;教育行业crm要如何来选择&#xff1f; 一、明确使用需求 在进行CRM选…

如何使用 ChatGPT 将文本转换为 PowerPoint 演示文稿

推荐&#xff1a;使用 NSDT场景编辑器 助你快速搭建可二次编辑的3D应用场景 步骤 1&#xff1a;将文本转换为幻灯片演示文稿 第一步涉及指示 ChatGPT 根据给定的文本生成具有特定数量幻灯片的演示文稿。首先&#xff0c;您必须向 ChatGPT 提供要转换的文本。 使用以下提示指示…

Gitlab服务部署及应用

目录 Gitlab简介 Gitlab工作原理 Gitlab服务构成 Gitlab环境部署 安装依赖包 启动postfix&#xff0c;并设置开机自启 设置防火墙 下载安装gitlab rpm包 修改配置文件/etc/gitlab/gitlab.rb&#xff0c;生产环境下可以根据需求修改 重新加载配置文件 浏览器登录Gitlab输…

Azure CLI 进行磁盘加密

什么是磁盘加密 磁盘加密是指在Azure中对虚拟机的磁盘进行加密保护的一种机制。它使用Azure Key Vault来保护磁盘上的数据&#xff0c;以防止未经授权的访问和数据泄露。使用磁盘加密&#xff0c;可以保护磁盘上的数据以满足安全和合规性要求。 参考文档&#xff1a;https://l…

职场修炼:性格内向的程序员如何突破自己

性格内向&#xff0c;不是缺点 社会常识中的看法&#xff1a;性格内心&#xff0c;是成功的障碍。 实际情况&#xff1a;内向和外向各有优缺点 忌讳&#xff1a; 强行改变自己的性格。内心不接受自己的性格。 内向者的优点 善于研究&#xff0c;能够较长时间研究技术问题…

仿写一个tomcat(含线程池配置)超详细!!

目录 工作原理 整体项目结构 自定义注解 创建servlet类 创建启动类 线程池配置 测试阶段 工作原理 首先看流程图&#xff0c;搞清楚tomcat的工作原理 工作原理如下&#xff1a; Tomcat使用一个叫作Catalina的核心组件来处理HTTP请求和响应。Catalina包含了一个HTTP连接…

匈牙利算法相关介绍

重要说明&#xff1a;本文从网上资料整理而来&#xff0c;仅记录博主学习相关知识点的过程&#xff0c;侵删。 一、参考资料 匈牙利算法匹配问题? Exactly how the Hungarian Algorithm works 多目标跟踪数据关联之匈牙利算法 五分钟小知识&#xff1a;什么是匈牙利算法 论文…

改进YOLO系列:3.添加SOCA注意力机制

添加SOCA注意力机制 1. SOCA注意力机制论文2. SOCA注意力机制原理3. SOCA注意力机制的配置3.1common.py配置3.2yolo.py配置3.3yaml文件配置1. SOCA注意力机制论文 暂未找到 2. SOCA注意力机制原理 3. SOCA注意力机制的配置 3.1common.py配置 ./models/common.p…

SpringBoot部署到腾讯云

SpringBoot部署到腾讯云 此处默认已经申请到腾讯云服务器&#xff0c;因为本人还没有申请域名&#xff0c;所以就直接使用的ip地址 XShell连接到腾讯云 主机中填写腾讯云的公网ip地址 公网ip地址在下图中找到 接下来填写服务器的用户名与密码 一般centOS用户名为root&#xff…

ZLMediakit-method ANNOUNCE failed: 401 Unauthorized

使用ffmpeg推流&#xff1a; nohup ffmpeg -stream_loop -1 -re -i "/usr/local/mp4/test.mp4" -vcodec h264 -acodec aac -f rtsp -rtsp_transport tcp rtsp://10.55.134.12/live/test &[rootlocalhost ~]# ffmpeg -stream_loop -1 -re -i "/usr/local/mp…

HCIP的交换机实验

题目 拓扑图 PC1/3接口用access 创建WLAN LSW1 创建WLAN [lsw1]vlan batch 2 to 6[lsw1-Ethernet0/0/1]p [lsw1-Ethernet0/0/1]port l [lsw1-Ethernet0/0/1]port link- [lsw1-Ethernet0/0/1]port link-flap [lsw1-Ethernet0/0/1]port link-type acc [lsw1-Ethernet0/0…

Java实现微信小程序V3支付 (完整demo)

1. 微信小程序支付-开发者文档https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_1.shtml 2. 导入依赖 <!--小程序支付 v3--> <dependency><groupId>com.github.wechatpay-apiv3</groupId><artifactId>wechatpay-apache-httpclient<…

精密、CMOS、轨到轨输入/输出、宽带运算放大器MS8601/8602/8604

产品简述 MS8601/MS8602/MS8604 分别是单 / 双 / 四通道、轨到轨输入和输出、 单电源放大器&#xff0c;具有极低的失调电压和宽信号带宽。它采用 1.8V 至 5V 单电 源&#xff08; 0.9 V 至 2.5 V 双电源&#xff09;供电。 MS8601/MS8602/MS8604 低失调、极低的输入偏置…

02__models

LangChain提供两种封装的模型接口 1.大规模语言模型&#xff08;LLM&#xff09;&#xff1a;输入文本字符串&#xff0c;返回文本字符串 2.聊天模型&#xff1a;基于一个语言模型&#xff0c;输入聊天消息列表&#xff0c;返回聊天消息 Langchain的支持OpenAI、ChatGLM、Hu…

Minjourney 参数详解(MJ参数)

官方地址&#xff1a; Midjourney Parameter ListParameters are added to a prompt to change how an image generates. Parameters can change an images aspect ratios, model version, upscaler, and more.https://docs.midjourney.com/docs/parameter-list官方原文&#…

更改计算机睡眠时间

控制面板–>系统和安全–>电源选项下的更改计算机睡眠时间 如果关闭显示器时间小于使计算机进入睡眠状态时间&#xff0c;时间先到达关闭显示器时间&#xff0c;显示器关闭&#xff0c;这时电脑还在正常工作状态。如果此时敲击键盘显示器出现画面&#xff0c;无需输入密…

最小化安装移动云大云操作系统--BCLinux-R8-U8-Server-x86_64-230802版

CentOS 结束技术支持&#xff0c;转为RHEL的前置stream版本后&#xff0c;国内开源Linux服务器OS生态转向了开源龙蜥和开源欧拉两大开源社区&#xff0c;对应衍生出了一系列商用Linux服务器系统。BC-Linux V8.8是中国移动基于龙蜥社区Anolis OS 8.8版本深度定制的企业级X86服务…