Linux系统操作常用指令

打开终端:

ctrl+shift+t:切换标签

ctrl+shift+n:新增窗口

Linux命令大全(超详细版)_第二范式的博客-CSDN博客

VMware运行时以管理员身份运行,可以避免许多问题。

输入法切换 ctrl +空格

放大终端:ctrl+shift+"+"

缩小终端:ctrl+“-”

ctrl+alt+t:新增终端窗口,打开家目录下的终端(任何位置都能打开)

ctrl+shift+n:打开当前路径下的终端(需要已经打开了终端)

清屏:ctrl+l

清空终端页面内容:clear

初次打开虚拟机,进入终端在其中输入,sudo hq_vm.sh 新增拖拽功能。

 终端为1,终端内密码不显示

hq@Ubuntu:~$

hq:用户名,ububtu:主机名,:和$中间位置为”家目录“,后期可更改

文件名含义

Linux系统使用(超详细)_陌上 烟雨齐的博客-CSDN博客

Linux基础入门(详细版)_一杯码农的博客-CSDN博客

 Linux 系统中常用指令

一、ls list 作用就是列出当前目录/指定目录下的文件或者目录。

1、ls file/....列出当前文件夹下内容

对标windows中的双击某个目录,查看里面具有有哪些东西。

/ 根目录,对标windows中的此电脑。Linux中的任何一个文件都是在/ 根目录下存在的。

使用ls -l 就可以查看其中的具体信息,此操作就对标windows中的显示详细信息。

其他命令行参数、注意:命令行的参数与参数之间,需要一个空格进行分割。

2、ls -a,显示所有文件包括隐藏文件。

3、ls -l ,显示文件所有信息

drwxrwxr-x 2 hq hq  4096 8月   1 10:34 23081

输出的九列信息分别含义

1、第一列:

(1)、第一个字母含义如下:

文件的类型(共7种bcd-lsp):

‘b’:块设备文件(sd卡 硬盘等)

’c‘:字符设备文件;(usb  鼠标等)

‘d’:目录文件;(蓝色)

‘-’:普通文件;(白色

‘l’:软链接文件;(相当于快捷方式)

‘s’:套接字文件;

‘p’:管道文件;

  1. 第二列:后面九个字母分别3个为一组

(r表示读权限,w表示写权限,x表示可执行权限,-表示无权限),

(第一组为表示当前用户所有者权限,第二组为表示组内用户权限,第三组为表示其他用户组的权限。)

例:demo :可读可写可执行;可读可写可执行;可读不可写可执行

 权限值:rw-rw-r-- 十进制:(6 6 4)二进制表示:(110 110 100)

3、第三列(1)、如果是目录的话,这个数字表示当前这个目录下面的一级目录个数。

              (2)如果是文件的话,数字表示硬链接个数。(硬链接个数:可以简单的理解为一个文件的文件名个数,比如a文件的文件名有s和j两个,因为s和j指向同一个a,改动s或j都会对a造成改变)

4、第四列: 该文件或目录的所有者。

5、第五列: 表示所属的组。

6、第六列: 文件的大小。

7、第七列: 月份(最近修改文件的日期)。

8、第八列: 多少号(最近修改文件的最后日期)。

9、第九列: 几点(最近修改文件的最后日期)。

10、第十列:文件名

4、ls -r:对目录反向排序

5、ls -t:按时间排序

6、ls -R:递归显示;列出所有子目录下的文件

  • 二、cd change directory 切换目录

1、cd  文件名

在Linux系统中,磁盘上的文件和目录被组成一个目录树,每个节点都是目录或者文件。其中相当于在windows中资源管理中双击了某个目录,cd 后面跟上你想有切换目录的路径,这里的路径可以使用相对路径,也可以使用绝对路径

2、相对路径和绝对路径是用于定位文件或目录位置的方式。

相对路径是相对于当前工作目录或当前文件所在目录的路径。它描述了如何从当前位置到达目标文件或目录。相对路径不包含根目录,并且通常使用相对于当前目录的符号(如"."代表当前目录,".."代表上级目录)来表示路径。

例如,假设当前工作目录是 /home/user/,要访问该目录下的一个文件 example.txt,相对路径可以是 ./example.txt 或者 example.txt。

1)绝对路径:

绝对路径是一个完整的路径,从/根目录的位置逐层往下找,从根目录开始直到目标文件或目录的路径。它提供了一个明确的位置。绝对路径通常以根目录(如 / 或 C:\)作为起点,然后按照目录结构逐级指定路径。

2)相对路径:

总结起来,相对路径是相对于当前位置的路径,而绝对路径是从根目录开始的完整路径。

使用绝对路径的方式来切换目录:cd 文件名 进入当前文件的下一级

使用相对路径的方式来切换目录。cd 后面不加任何的选项,就会直接跳转到当前用户的home目录。

3、cd /切换到根目录

4、cd ~     切换到当前目录的主目录

5、cd ./     切换到当前目录

6、cd ../   切换到上一级

7、cd -     切换到上一个目录

8、相同等级文件夹切换:cd ../同级文件名

  • 三、pwd:查看当前路径

这个命令是防止用户迷路的命令,此命令就是显示我们当前的完整路径。

这个命令对标windows中的鼠标在此电脑中的地址栏一点:

可以看出,鼠标在上面一点,就会显示出完整的路径。

在Linux中,pwd就是这个作用。

  • 四、touch 创建一个空白的文件

用法:touch 文件名.后缀

可以看到我们执行touch a.txt命令之后,Linux并没有给我任何的反馈。

其实我们不必惊慌,在Linux中,没有消息就是最好的消息。我们的这个命令是执行成功的。 

若已经有了这个文件,则touch命令只更改时间戳

五、读取文件的内容

 注意:此命令如果读取短小的文件还好,如果使用此命令读取文件特别大的文件,cat就很不方便了。

1、cat命令

1:读取硬盘上的文件。

2:把这个文件全部显示在终端里面。

那么如果说这个文件特别大,我们一次性的把很大的文件全部读取完成,在把文件里面的信息全部显示在终端上。此时消耗的时间是比较大的。

我们使用cat命令读取ccc目录下的一个文件的效果。

添加命令行参数 -n 就是我们给我们读取的文件内容添加上行号(空行也加上序号)。

添加命令行参数 -b 就是加行号显示(空行不加序号)。

添加命令行参数 -s 就是多个空行合并成一个空行显示。

  1. nl:加行号显示文件内容(空行不加行号).

3、head:默认只显示前十行内容,后面跟数字则显示数字行数(包括空行)。

4、tail:默认只显示倒数后十行内容,加数字同理。

六、echo 此命令用来写文件的

 上述命令我们使用echo 把hello 写入到b.txt文件中去。

此时我们再次使用cat命令查看:

 可以看到hello已经在b.txt这个文件中去了。

当时我们每次执行echo命令的时候,都会清除原来的内容。

可以看到hello已经被清除了,只剩下后面ehco的world了。

注意:echo和cat这样的命令,只是适用于对简单的文件进行操作,如果文件比较大和复杂,echo和cat就是不适合了。

  • 七、mkdir 创建目录(文件夹)

1、创建单级文件夹:mkdir 文件夹名

此命令对标windows中的右键,新建文件夹。 

 我们执行mkdir ddd 之后,就已经创建好了一个目录。

2、创建多级文件夹:mkdir -p 一级/二级/三级/...

我们可以添加命令行参数 -p 当我们添加了命令号参数 -p 之后,系统会给我们自动的递归创建目录。

 这个命令就是在当前目录下创建aaa目录,在aaa目录下创建bbb目录,在bbb目录下创建ccc目录。

八、rm remove 删除文件/目录

当我们在执行rm 的时候,指定了要删除的文件之后,系统会让我们确定是否删除。我们可以使用命令行参数 /r 进行递归删除

 此命令在删除目录的时候,需要同时删除所有的文件和子目录。

这里的命令行参数 -rf 就是强制删除,不进行询问。

注意:在Linux中,没有回收站的概念,如果删除了,那么就是彻底的删除了。

根目录 / 是我们Linux中的最顶级节点了,如果把这个目录强制不询问的进行删除,那么这个Linux系统算是废了。彻底的废了。 慎用 

  • 九、cp copy 用于复制文件或者目录。

1、cp文件:cp 源文件地址/源文件名 目标地址/子文件名

当前目录下有一个 a.txt 文件,我们把这个a.txt文件复制一份同时改名为a1.txt。

 cp 后面有两个参数,一个是源文件,一个是要往哪里去复制。

此处就是把a.txt复制一份,同时重命名为a1.txt。

2、cp 文件夹:cp -r 源文件夹地址/源文件夹名 目标地址/子文件名

cp 不光可以复制文件,还是可以进行目录的复制的。

需要注意的是,在复制目录的时候,必须要添加命令行参数 -r

 我们现在把ccc目录同ddd目录下的文件复制到bbb目录中。

可以看到我们是把整个ddd目录都复制到bbb目录下。

十、mv 移动/剪切文件或者目录

1、mv 源文件地址/文件名 目标地址/子文件名

mv命令可以在进行移动的时候,去进行给目标文件设置名称(一边移动,一遍改名)。

2、用mv改名字:在本级下移动。

可以看到,如果是要移动的源和目标在一个目录下,这个时候就是单纯的改名字了。

 我们也就是在移动的过程中进行改名操作。

上述操作就是我们把当前目录的a.txt文件剪切到ddd目录下,并重命名为a1.txt。

十一、vi进行文件的编辑

 vi是Linux上自带的文本编辑器,相当于windows上的记事本。

vi的基本使用

打开文件编辑文件保存退出

上述的三个vi的操作是最基本的使用。

1:打开文件 

使用vi 文件名/文件路径

 当我们执行了上述命令时,系统就是使用vi打开这个文件。

2:编辑文件

在进行文件的编辑之前,我们先要知道vi的三种模式。

普通模式插入模式命令行模式

我们当打开的文件的界面,就是普通模式。在这个模式下,我们是无法进行数据的插入的。

要想进行数据的写入,必须切换成插入模式。要切换插入模式其实非常简单,只需要按键盘上的 i 键就好了。

可以看出当我们按了i键之后,下面就变为install。此时就是插入模式,我们就可以进行数据的写入了。

 此时当我们把数据写入之后,该保存退出了。

3、保存文件

想要保存退出,就需要进入到命令行模式。

进入命令行模式,只需要按键盘上的esc键进行普通模式。然后再普通下输入:

 现在就进入到命令行模式了。

然后我们在输入wq。wq也就是写入退出的意思。然后这个文件就成功的写入,并保存了。

然后此时我们在进行查看这个文件的内容:

 可以能看到我们写入的数据了。

十二、vi编辑器常用命令

进入后默认进入命令行模式,ioa任意键进入插入行模式,

c语言基本结构

#include<stdio.h> //头文件 (函数库:包含printf等函数)
int main() //主函数(有且仅有一个,是程序的入口)
{
printf("hello world");  //输出函数(printf("输出内容"):标准输出语句)
return 0;   //在主函数内标志着主函数的结束;放在其他函数内表示返回值;
}

1、命令行模式:

复制 yy

删除(剪切) dd

粘贴 p

撤销 u

反撤 ctrl r

光标移动首行 gg

光标移动首行 G

光标移动行首 0

光标移动行尾 $

整理代码格式 gg = G

2、插入模式:输入内容

i o a I O A任意按键可由命令行模式转换为插入模式

  1. 、底行模式:

插入模式按esc按键进入命令行模式,shift+:进入底行模式

指定行复制   5,10y   复制5-10行

指定行删除   5,10d

保存 w

退出 q

保存并退出 wq

强制 !

分屏 vsp 

查找  /找的东西

替换  s/a1/a2   光标所在行的第一个a1替换成a2

s/a1/a2/g   光标所在行的所有a1替换成a2

%s/a1/a2/g   改变全文

1,$s/a1/a2/g  改变全文

设置行号 set nu

取消 set nonu

取消高亮 nohl

1、执行编译程序:

打开终端的方式:

直接点击

快捷键:ctrl shift +n   当前文件路径打开

              ctrl alt +t     路径为家目录

简单编程步骤

  1. 新建文件   touch  test.c
  2. 打开编译器  vi  test.c    默认进入命令行模式
  3. #include<stdio.h>     //头文件    函数库

int  main()  // 主函数  程序的入口

{               

printf("hello  world");     //标准输出语句

return  0;        //主函数的结束

}

  1. gcc  test.c       //gcc编译文件   生成a.out  二进制可执行文件
  2. ./a.out   //执行可执行文件

执行文件:gcc test.c  使用gcc编译文件,生成a.out的二进制可执行文件。(文件重写后a.out重新覆盖)

运行可执行文件:./a.out

2、可执行文件改名

预编译:gcc -E test.c -o test.i (-o  指定类型文件)

汇编:gcc -S test.i -o test.s()

           :gcc -c test.s -o test.o (生成不可执行的二进制文件)

链接库文件:gcc test.c -o abc (生成可执行的二进制文件abc.out)

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

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

相关文章

【深度学习-基础学习】Transformer 笔记

本篇文章学习总结 李宏毅 2021 Spring 课程中关于 Transformer 相关的内容。课程链接以及PPT&#xff1a;李宏毅Spring2021ML这篇Blog需要Self-Attention为前置知识。 Transfomer 简介 Transfomer 架构主要是用来解决 Seq2Seq 问题的&#xff0c;也就是 Sequence to Sequence…

web前端——clear可以清除浮动产生的影响

clear可以解决高度塌陷的问题&#xff0c;产生的副作用要小 未使用clear之前 <!DOCTYPE html> <head><meta charset"UTF-8"><title>高度塌陷相关学习</title><style>div{font-size:50px;}.box1{width:200px;height:200px;backg…

【已解决】打印PDF文件,如何跳过不需要的页面?

打印PDF文件的时候&#xff0c;有时候我们只需要打印其中的几页&#xff0c;并不需要全部打印&#xff0c;那如何在打印时跳过那些不需要的页面呢&#xff1f;不清楚的小伙伴一起来看看吧&#xff01; 如果你是通过网页打开PDF文件&#xff0c;那么可以在页面中找到并点击“打…

[每周一更]-(第53期):Python3和Django环境安装并搭建Django

Python和Django 的安装 Python和Django 兼容情况 django 1.11.x python 2.7 3.4 3.5 3.6 LTS python 目前在用版本 Python 3.6.5 2018-03-28 更新Python 2.7.15 2018-05-01 更新Python 2.7.5 2013-05-12 更新 python和python3安装pip 同时安装上 python2.7.18、python3.11…

c语言结构体学习上篇

文章目录 前言一、结构体的声明1&#xff0c;什么叫结构体?2&#xff0c;结构体的类型3,结构体变量的创建和初始化4&#xff0c;结构体的类型5&#xff0c;结构体的初始化 二、结构体的访问1&#xff0c;结构体成员的点操作符访问2&#xff0c;结构体体成员的指针访问 前言 昨…

用户管理第2节课--idea 2023.2 后端--实现基本数据库操作(操作user表) -- 自动生成 --【本人】

一、插件安装 1.1 搜索插件 mybatis 安装 1.2 接受安装 1.3 再次进入&#xff0c;说明安装好了 1.4 与鱼皮不同点 1&#xff09;mybatis 版本不一致 鱼皮&#xff1a; 本人&#xff1a; 2&#xff09;鱼皮需重启安装 本人不需要 1.5 【需完成 三、步骤&#xff0c;再来看】 …

Git - 强制替换覆盖 master 分支解决方案

问题描述 在版本迭代中&#xff0c;通常会保持一个主分支 master&#xff0c;及多个 dev 分支&#xff0c;但是因为 dev 分支的开发周期过长&#xff0c;迭代太多而没有及时维护 master &#xff0c;导致后来发版上线的大部分代码都在 dev 分支上&#xff0c;如果将代码在 mas…

LiveGBS流媒体平台GB/T28181功能-用户管理通道权限管理关联通道支持只看已选只看未选添加用户备注角色

LiveGBS功能用户管理通道权限管理关联通道支持只看已选只看未选添加用户备注角色 1、用户管理2、添加用户3、关联通道3.1、只看已选3.2、只看未选 4、自定义角色5、搭建GB28181视频直播平台 1、用户管理 LiveGBS支持用户管理&#xff0c;添加用户&#xff0c;及配置相关用户权…

promise.prototype.finally重写和兼容火狐低版本浏览器

一、finally()方法用于指定不管 Promise 对象最后状态如何&#xff0c;都会执行的操作。该方法是 ES2018 引入标准的 let promise new Promise() promise .then(result > {}) .catch(error > {}) .finally(() > {})finally方法的回调函数不接受任何参数;finally方法…

element-ui Tree 树形控件 过滤保留子级并获取过滤后的数据

本示例基于vue2 element-ui element-ui 的官网demo是只保留到过滤值一级的&#xff0c;并不会保留其子级 目标 1、Tree 树形控件 保留过滤值的子级 2、在第一次过滤数据的基础上进行第二次过滤 先看效果 Tree 树形控件 保留过滤值的子级 <el-treeclass"filter-t…

直观从零理解 梯度下降(Gradient descent) VS 随机梯度下降 (Stochastic gradient descent) 函数优化

首发于Data Science 单变量微分(Differentiation) 常用基本微分有&#xff1a; 四则运算法则&#xff1a; 链式法则(Chain-rule) 极大值(maxima)与极小值(minima) 向量微分 梯度下降(Gradient descent):几何直觉 学习率&#xff08;Learning Rate&#xff09;的直观理解…

笔记中所得(已删减)

1.交流电的一个周期内电压/电流的平均值都为0 2.电动势:电池将单位正电荷由负极搬到正极所做的功 5.额定能量:电池的额定容量乘以标称电压,以Wh为单位 6.500mAh意义是可以以500mA的电流放电1小时 7.电池容量的单位是mAh 13.实际电流源不能串联 14. 15. 16. 17. 18. 19.电…

C++ 二进制图片的读取和blob插入mysql_stmt_init—新年第一课

关于二进制图片的读取和BLOB插入一共包含五步 第一步&#xff1a;初始化 MYSQL_STMT* stmt mysql_stmt_init(&mysql); 第二步&#xff1a;预处理sql语句 mysql_stmt_prepare(stmt,sql,sqllen); 第三步&#xff1a;绑定字段 mysql_stmt_bind_param(stmt,bind); 第四…

车规级芯片NCV4275CDT50RKG LDO线性电压调节器 原理、参数及应用

关于车规级芯片&#xff08;Automotive Grade Chip&#xff09;&#xff0c;车规级芯片是专门用于汽车行业的芯片&#xff0c;具有高可靠性、高稳定性和低功耗等特点&#xff0c;以满足汽车电子系统的严格要求。这些芯片通常用于车载电子控制单元&#xff08;ECU&#xff09;和…

用ChatGPT方式编程!GitHub Copilot Chat全面开放使用

全球著名开源分享平台GitHub在官网宣布&#xff0c;经过几个月多轮测试的GitHub Copilot Chat&#xff0c;全面开放使用&#xff0c;一个用ChatGPT方式写代码的时代来啦&#xff01; 据悉&#xff0c;Copilot Chat是基于OpenAI的GPT-4模型&#xff0c;再结合其海量、优质的代码…

cJSON代码解读

1、背景 cJSON用了很久&#xff0c;但是对它一直不太了解。这次向添加对long long类型的支持&#xff0c;一直出问题。因为有以前添加两位小数float的经历&#xff0c;我觉得会很轻松&#xff0c;没想到翻车了。于是有了这边文档&#xff0c;阅读了部分博主对cJSON的解析&…

【计算机设计大赛作品】豆瓣电影数据挖掘可视化—信息可视化赛道获奖项目深入剖析【可视化项目案例-22】

文章目录 一.【计算机设计大赛作品】豆瓣电影数据挖掘可视化—信息可视化赛道获奖项目深入剖析【可视化项目案例-22】1.1 项目主题:豆瓣电影二.代码剖析2.1 项目效果展示2.2 服务端代码剖析2.3 数据分析2.4 数据评分三.寄语四.本案例完整源码下载一.【计算机设计大赛作品】豆瓣…

频率域图像增强之理想低通滤波器的python实现——数字图像处理

原理 理想低通滤波器&#xff08;Ideal Low-Pass Filter, ILPF&#xff09;是数字图像处理中一个重要的概念&#xff0c;尤其在频率域滤波中扮演着关键角色。 定义&#xff1a; 理想低通滤波器是一种在频率域内工作的滤波器&#xff0c;旨在通过允许低频信号通过同时阻止高频信…

时序分解 | Matlab实现贝叶斯变化点检测与时间序列分解

时序分解 | Matlab实现贝叶斯变化点检测与时间序列分解 目录 时序分解 | Matlab实现贝叶斯变化点检测与时间序列分解效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现贝叶斯变化点检测与时间序列分解 1.Matlab实现贝叶斯变化点检测与时间序列分解&#xff0c;完…

数据中心网络架构

参考&#xff1a; 一文读懂胖树 数据中心网络架构VL2详解 数据中心网络拓扑设计目标 总体目标 业务可以部署在任意的服务器上可以根据需要动态扩展或者缩小服务器规模 网络角度 均衡负载且高性能&#xff1a;服务器之间的性能仅受限于服务器网卡&#xff0c;而不是链路性能…