Linux系统操作常用指令

2024-01-03 15:10:04

打开终端:

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)

文章来源:https://blog.csdn.net/m0_74937538/article/details/135337747
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。