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

Linux常用命令

linux常用命令

  1. 创建一个目录

mkdir 命令可以创建新目录。mkdir 是 make directory 的缩写。

[root@iZ2ze66tzux2otcpbvie88Z ~]# ls
[root@iZ2ze66tzux2otcpbvie88Z ~]# mkdir web
[root@iZ2ze66tzux2otcpbvie88Z ~]# ls
web
[root@iZ2ze66tzux2otcpbvie88Z ~]# 
  1. 创建一个文件

2.1 在 Linux 上使用重定向符(>)创建一个文件

准重定向符允许我们创建一个 0KB 的空文件。它通常用于重定向一个命令的输出到一个新文件中。在没有命令的情况下使用重定向符号时,它会创建一个文件。
但是它不允许你在创建文件时向其中输入任何文本。然而它对于不是很勤劳的管理员是非常简单有用的。只需要输入重定向符后面跟着你想要的文件名。

2.2 在 Linux 上使用 touch 命令创建一个文件

touch 命令常用于将每个文件的访问和修改时间更新为当前时间。
如果指定的文件名不存在,将会创建一个新的文件。touch 不允许我们在创建文件的同时向其中输入一些文本。它默认创建一个 0KB 的空文件。

2.3 在 Linux 上使用 echo 命令创建一个文件

echo 内置于大多数的操作系统中。它常用于脚本、批处理文件,以及作为插入文本的单个命令的一部分。它允许你在创建一个文件时就向其中输入一些文本。当然也允许你在之后向其中输入一些文本

  1. 移动目录和文件

3.1 移动文件

单纯地移动某一个文件直接使用:mv <源文件名称/地址> <新文件名称/地址>
可以看出,这个方法也可以用来修改文件的名称

将该路径下的aa.txt移动到web2文件夹中

将改路径下的aa.txt修好为bb.txt

3.2 移动文件夹(目录)下的内容

如要移动某个文件夹下的

  • 某个内容:mv <目录地址1/xxx> <目录地址2>,即可移走xxx内容

  • 所有内容:mv <目录地址1/*> <目录地址2> ,或者直接使用mv <目录地址1/> <目录地址2>,便可移动目录地址1下的所有内容

  • 所有带.txt后缀的内容:mv <目录地址1/*.txt> <目录地址2>,即可移走所有的TXT文档

3.3 移动文件夹(目录)以及文件夹下的内容

如果要移动文件夹的内容以及文件夹本身:mv <目录地址1 > <目录地址2/>,即文件夹目录地址后面加上/即可!
  1. 认识路径

一般情况下,在用shell的时候,或者你通过什么方式调用你的应用程序的时候,都要写明被调用的程序路径。路径分为绝对路径和相对路径。

4.1 绝对路径

在Linux中,绝对路径是从 / (也被称为根目录)开始的,比如/usr、/etc/X11。如果一个路径是从/开始的,它一定是绝对路径,这样就好理解了。

[root@localhost ~]# cd /usr/share/doc/      注:使用绝对路径进入doc目录
[root@localhost doc]# pwd                        注:判断用户当前所处的位置 

4.2 相对路径

在Linux中相对路径的使用相对于绝对路径来说是比较复杂的,在Linux路径中经常会一些特殊符号, 这些符号是用来表示相对路径的。
  . 表示用户所处的当前目录
.. 表示上级目录
 ~ 表示当前用户自己的home目录
 ~USER 表示用户名为USER的家目录,这里的USER是在/etc/passwd中存在的用户名

使用“../”来表示上一级目录,“../../”表示上上级的目录,以此类推。
  1. 删除目录/文件

在LINUX中,经常要删除文件,大多时候使用rm命令就足以应付了,有的时候需要用-f,强制删除,碰到有子目录的时候,需要加-r参数,也就是说,不考虑安全问题,rm -rf filename就可以解决绝大部分问题.先看下rm的一般用法:

删除下面文件中的hello.txt和web2

  1. 复制目录/文件

cp 命令主要可用于复制文件或目录。cp 是单词 copy 的缩写。

6.1 复制文件

所谓的复制文件,就是将一个文件复制到另外一个目录下,其中 source 表示源文件,而 dest 表示目标目录。语法如下:

# 语法cp 源文件 目标目录

将xingixng.txt复制到web目录下

6.2 覆盖文件

当将一个文件或目录复制到另外一个目录下时,如果该目录下已经存在同名文件或目录,那么复制操作就会询问你是否覆盖,如果想要覆盖就回答 y

6.3 复制目录

通常情况下,待复制的目录都不是空文件夹,如果直接使用 cp 命令进行复制会失败,如果想要把指定目录及该目录下的子文件和子文件夹都复制过去,则需要加上 -r 选项。其中 src 是源目录;dest 表示目标目录。
# 语法cp -r 源目录 目标目录

将web复制到web1,如果web1不存在则自动创建

  1. 移动目录/文件

linux中的移动使用mv指令。

7.1 移动文件

单纯地移动某一个文件直接使用:mv <源文件名称/地址> <新文件名称/地址>
可以看出,这个方法也可以用来修改文件名称。

修改web下面的xingxing.txt为aa.txt

7.2 移动文件夹下的内容

如要移动某个文件夹下的

  • 某个内容:mv <目录地址1/xxx> <目录地址2>,即可移走xxx内容

  • 所有内容:mv <目录地址1/*> <目录地址2> ,或者直接使用mv <目录地址1/> <目录地址2>,便可移动目录地址1下的所有内容

  • 所有带.txt后缀的内容:mv <目录地址1/*.txt> <目录地址2>,即可移走所有的TXT文档

7.3 移动文件夹(目录)以及文件夹下的内容

如果要移动文件夹的内容以及文件夹本身:mv <目录地址1 > <目录地址2/>,即文件夹目录地址后面加上/即可!

将web1移动到web目录下

  1. 重命名目录/文件

在Linux下重命名文件或目录,可以使用mv命令或rename命令,这里分享下二者的使用方法。
mv命令既可以重命名,又可以移动文件或文件夹。

将目录web1重命名为app

将文件aa.txt重命名为app.txt

  1. 查看文件内容

9.1 查看文件类型

file命令: 能够探测文件的内部,并决定文件是什么类型的。
用法:file [path]my_file
my_file如果是目录,file命令会显示 "my_file : directory"。如果是文本文件,会显示"my_file: 文件的字符编码 text"。如果是符号链接的文件,会告诉你它链接到哪个文件上。如果是二进制可执行程序,file命令能够确定该程序编译时所面向的平台以及需要何种类型的库。

9.2 查看整个文件

⑴ cat 命令
用法:cat [文件列表]
参数:-n 或 --number:由 1 开始对所有输出的行数编号
-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行结束处显示 $。
-T 或 --show-tabs: 将 TAB 字符显示为 ^I。
-A, --show-all:等价于 -vET。
⑵ more 命令
用法:more [+数字] [-数字] file
以全屏幕的方式按页显示文本文件的内容,如果带上了参数 '+数字' 表示从该行开始显示,参数 '-数字'指定每屏显示的行数。Enter向下滚动一行,空格或f 向下滚动一屏,b向上滚动一屏,q退出。
⑶ less 命令
less指令是基于more指令和vi指令实现的,更可以使用"前后左右"来查看文件内容,用PageUp键向上翻页,用PageDown键向下翻页,=输出文件名和当前行的行号等信息。
在使用less指令查看文件内容时,如果希望不退出less指令就能够执行shell中的其他指令,可以使用 "!command"的方式,直接执行指令,执行结束后自动返回less指令。
指令运行过程中,按"h"键显示less的快捷键帮助。
可以在":"提示符下输入查找的关键字(先输入/,后输入关键字,最后回车),以实现快速定位

9.3 查看部分文件

⑴ tail 命令
用于输出文件中的尾部内容。

⑵ head 命令
用法:head [选项] [文件列表]
用于显示文件的开头部分的内容。
参数-n<行数>指定显示头部内容的行数,默认10行;-c<字符数>指定显示头部内容的字符数。

9.4 处理文件

1、创建空文件

touch命令:touch new_file

2、过滤文件内容

⑴ grep 命令

用法:grep [选项] [匹配模式] file

按照某种匹配规则搜索指定的文件,并将符合匹配条件的行输出。

选项:-v搜索不含指定字符串的行,-x整行匹配,-c 统计符合匹配模式的行数,-E 用来扩展选项为正则表达式。

⑵ cut 命令

用法:cut [选项] [文件]

指令显示行中指定部分,删除文件中的指定字段。

选项: [-d “分隔符”]指定字段的分隔符,默认的字段分隔符为"TAB"。

[-f 起始字段位置-结束字段位置]显示指定的字段内容,第一个字段就是1。只显示一个字段时,直接写相应的位置即可。

3、统计文件内容

wc命令:wc [选项] [文件列表]

统计文件的行数、单词数和字符数。

选项:-l 打印总行数。

注意:在windows下,文件的最后一行不会自动添加换行符。用wc统计的时候,会发现比实际少了一行。使用换行符‘\n’作为行结束标志,实际是统计换行符个数。

4、对文件内容进行排序

sort命令:sort [选项] [文件列表]

-c检查文件是否已经按照顺序排序;

-n按照数值的大小排序;

-o<输出文件>:将排序后的结果存入指定的文件;

-t<分隔字符>:指定排序时所用的栏位(列)分隔字符(如果分隔字符是制表符,放在字符串中时,正常写即可,否则,在前面加上$);

-r是以相反顺序;

-u在输出行中去除重复行(只考虑用来排序的行);

-b会忽略每一行前面的所有空白部分,从第一个可见字符开始比较;

-k<start,end>:指定需要排序的列,start和end都是数字,start又分为3个部分(选项[bdfinr]、排序列、开始的位置),end默认到本域结束。-k可以出现多次,代表多列排序(第一个是主排序)。数字列如1.2表示对第一个域的第二个字符开始到本域的最后一个字符为止的字符串进行排序;1.2,1.2表示只按第一个域的第二个字符进行排序;

sort将文件/文本的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。

  1. 使用vi简单编辑文本

  1. 压缩与解压缩

11.1 压缩一个文件

将app.txt压缩为app.txt.gz

将love.txt压缩为love.tar

将hello.txt压缩为hello.tar.gz文件

11.2 解压一个文件

将1.txt.gz解压成1.txt

将love.tar解压成love.txt

将hello.tar.gz解压缩成hello.txt

  1. 系统常用命令

12.1 top命令

top命令显示系统所有动态进程

top -pPID 显示指定进程编号的进程信息
top -d10 每隔10秒显示进程变化
top -n3 更新3次进程变化后结束进程
top -i 显示正在运行,正在执行的进程

12.2 free命令

显示内存使用情况

free -h 系统自动按照合适单位统计内存使用情况
MEM 物理内存
swap 虚拟内存(swap交换分区)
total:总数
used:已使用
free:剩余的
shared:共享的
buffers:缓存的
cached:缓冲的

12.3 free命令

查看磁盘试用情况

df -h 系统自动按照合适单位统计内存使用情况
df -T 显示磁盘的文件系统类型
df -t 文件名 显示指定文件类型的磁盘信息

12.4 ps(命令)

静态显示系统中的所有进程,显示正在执行的进程

ps -A/e 显示系统中所有进程
ps -u 用户名 显示指定用户的所有进程 eg:ps -u root
ps -aut 显示进程信息

相关文章:

Linux常用命令

linux常用命令创建一个目录mkdir 命令可以创建新目录。mkdir 是 make directory 的缩写。[rootiZ2ze66tzux2otcpbvie88Z ~]# ls [rootiZ2ze66tzux2otcpbvie88Z ~]# mkdir web [rootiZ2ze66tzux2otcpbvie88Z ~]# ls web [rootiZ2ze66tzux2otcpbvie88Z ~]# 创建一个文件2.1 在 Li…...

基于STM32设计的音乐播放器

一、项目背景与设计思路 1.1 项目背景 时代进步,科学技术的不断创新,促进电子产品的不断更迭换代,各种新功能和新技术的电子产品牵引着消费者的眼球。人们生活水平的逐渐提高,对娱乐消费市场需求日益扩大,而其消费电子产品在市场中的占有份额越来越举足轻重。目前消费电…...

微服务开发

目录 微服务配置管理 权限认证 批处理 定时任务 异步 微服务调用 (协议)...

【(C语言)数据结构奋斗100天】二叉树(上)

【(C语言)数据结构奋斗100天】二叉树&#xff08;上&#xff09; &#x1f3e0;个人主页&#xff1a;泡泡牛奶 &#x1f335;系列专栏&#xff1a;数据结构奋斗100天 本期所介绍的是二叉树&#xff0c;那么什么是二叉树呢&#xff1f;在知道答案之前&#xff0c;请大家思考一下…...

Java 验证二叉搜索树

验证二叉搜索树中等给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。有效 二叉搜索树定义如下&#xff1a;节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。示例 1&…...

C/C++单项选择题标准化考试系统[2023-02-09]

C/C单项选择题标准化考试系统[2023-02-09] ©3.17 单项选择题标准化考试系统 【难度系数】5级 【任务描述】 设计一个单项选择题的考试系统&#xff0c;可实现试题维护、自动组卷等功能。 【功能描述】 (1)管理员功能: 试题管理:每个试题包括题干、四个备选答案标准答案…...

爱了爱了,这些顶级的 Python 工具包太棒了

Python 语言向来以丰富的第三方库而闻名&#xff0c;今天来介绍几个非常nice的库&#xff0c;有趣好玩且强大&#xff01;推荐好好学习。 文章目录技术交流数据采集AKShareTuShareGoPUPGeneralNewsExtractor爬虫playwright-pythonawesome-python-login-modelDecryptLoginScylla…...

【Explain详解与索引优化最佳实践】

摘要 explain命令是查看MySQL查询优化器如何执行查询的主要方法&#xff0c;可以很好的分析SQL语句的执行情况。每当遇到执行慢&#xff08;在业务角度&#xff09;的SQL&#xff0c;都可以使用explain检查SQL的执行情况&#xff0c;并根据explain的结果相应的去调优SQL等。 …...

【树和二叉树】数据结构二叉树和树的概念认识

前言&#xff1a;在之前&#xff0c;我们已经把栈和队列的相关概念以及实现的方法进行了学习&#xff0c;今天我们将认识一个新的知识“树”&#xff01;&#xff01;&#xff01; 目录1.树概念及结构1.1树的概念1.2树的结构1.3树的相关概念1.4 树的表示1.5 树在实际中的运用&a…...

通达信收费接口查询可申购新股c++源码分享

有很多股民在做股票交易时为了实现盈利会借助第三三方炒股工具帮助自己&#xff0c;那么通达信收费接口就是人们常用到的&#xff0c;今天小编来分享一下通达信收费接口查询可申购新股c源码&#xff1a; std::cout << " 查询可申购新股: category 12 \n"; c…...

【C#设计模式】创建型设计模式 (单例,工厂)。

c# 创建型设计模式 1.单例设计模式c# 单例JS 单例(ES6)c# 扩展方法c# 如果窗体非单例(tips:窗口可以容器化)2.工厂设计模式JS 简单工厂(ES6)C# 简单工厂C# params关键词(自定义参数个数)JS 手写JQuery(委托,工厂方式隐藏细节)JS ...四种用法C# 偷懒工厂1.单例设计模式 …...

Ubuntu 22.04 LTS 入门安装配置优化、开发软件安装一条龙

Ubuntu 22.04 LTS 入门安装配置&优化、开发软件安装 例行前言   最近在抉择手上空余的笔记本&#xff08;X220 i7-2620M&#xff0c;Sk Hynix ddr3 8G*2 &#xff0c;Samsung MINISATA 256G&#xff09;拿来运行什么系统比较好&#xff0c;早年间我或许还会去继续使用Win…...

第五十章 动态规划——数位DP模型

第五十章 动态规划——数位DP模型一、什么是数位DP数位DP的识别数位DP的思路二、例题1、AcWing 1083. Windy数&#xff08;数位DP&#xff09;2、AcWing 1082. 数字游戏&#xff08;数位DP&#xff09;3、AcWing 1081. 度的数量&#xff08;数位DP&#xff09;一、什么是数位DP…...

02- pandas 数据库 (机器学习)

pandas 数据库重点: pandas 的主要数据结构: Series (一维数据)与 DataFrame (二维数据)。 pd.DataFrame(data np.random.randint(0,151,size (5,3)), # 生成pandas数据 index [Danial,Brandon,softpo,Ella,Cindy], # 行索引 …...

学Qt想系统的学习,看哪本书?

Qt 是一个跨平台应用开发框架&#xff08;framework&#xff09;&#xff0c;它是用 C语言写的一套类库。使用 Qt 能为 桌面计算机、服务器、移动设备甚至单片机开发各种应用&#xff08;application&#xff09;&#xff0c;特别是图形用户界面 &#xff08;graphical user in…...

2023年网络安全比赛--跨站脚本攻击②中职组(超详细)

一、竞赛时间 180分钟 共计3小时 二、竞赛阶段 1.访问服务器网站目录1,根据页面信息完成条件,将获取到弹框信息作为flag提交; 2.访问服务器网站目录2,根据页面信息完成条件,将获取到弹框信息作为flag提交; 3.访问服务器网站目录3,根据页面信息完成条件,将获取到弹框信息…...

网络安全实验室4.注入关

4.注入关 1.最简单的SQL注入 url:http://lab1.xseclab.com/sqli2_3265b4852c13383560327d1c31550b60/index.php 查看源代码&#xff0c;登录名为admin 最简单的SQL注入&#xff0c;登录名写入一个常规的注入语句&#xff1a; admin’ or ‘1’1 密码随便填&#xff0c;验证…...

领域搜索算法之经典The Lin-Kernighan algorithm

领域搜索算法之经典The Lin-Kernighan algorithmThe Lin-Kernighan algorithm关于算法性能提升的约束参考文献领域搜索算法是TSP问题中的三大经典搜索算法之一&#xff0c;另外两种分别是回路构造算法和组合算法。 而这篇文章要介绍的The Lin-Kernighan algorithm属于领域搜索算…...

深度学习基础-机器学习基本原理

本文大部分内容参考《深度学习》书籍&#xff0c;从中抽取重要的知识点&#xff0c;并对部分概念和原理加以自己的总结&#xff0c;适合当作原书的补充资料阅读&#xff0c;也可当作快速阅览机器学习原理基础知识的参考资料。 前言 深度学习是机器学习的一个特定分支。我们要想…...

C语言操作符详解 一针见血!

目录算数操作符移位操作符位操作符赋值操作符单目操作符关系操作符逻辑操作符条件操作符逗号表达式下标引用、函数调用和结构成员表达式求值11.1 隐式类型转换算数操作符&#x1f4ad; 注意/ 除法 --得到的是商% 取模&#xff08;取余&#xff09;--得到的是余数如果除法操作符…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

DockerHub与私有镜像仓库在容器化中的应用与管理

哈喽&#xff0c;大家好&#xff0c;我是左手python&#xff01; Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库&#xff0c;用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...

CMake基础:构建流程详解

目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验&#xff0c;以及大语言模型的分析能力&#xff0c;我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际&#xff0c;我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测&#xff0c;聊作存档。等到明…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...