【Linux】常用的命令

椰椰椰耶 2024-09-15 16:07:10 阅读 73

文章目录

`ls``ls -l /`

`touch``cd``pwd``cat``echo``vim`打开文件编辑内容保存退出

`mkdir``rm``mv``cp``man``grep``ps``netstat`总结 :

<code>ls

ls ==> list

列出当前目录下都有哪些内容(文件/目录)

直接输入 ls,是查看当前目录的情况;输入 ls/ 就是看看 / 这个目录下的情况

/ 称为“根目录”,就是 Windows 上的“此电脑Linux 中没有盘符,所有的目录和文件都是在 / 目录下的要确保命令和后面的参数之间,要带有至少一个空格

image.png|435


image.png

这些就是 <code>/ 目录根目录)下包含的内容,这些都是系统自带的文件和目录

这里的文件不能随便删除,删除之后可能系统就用不了了,需要重装云服务器重装云服务器也非常简单。在网站后台,有个“重装系统”的选项


ls -l /

(简写为:ll /

后面是小写 L,不要写成大写 i 或者数字 1;并且命令和参数之间都有空格

这里是按照列表的方式进行显示,这是最常用的功能

image.png|459

第一列的十个字母构成的这一串代表文件的权限,当前用户是否可读、可写、可执行

第一个字母:文件类型

<code>-:普通文件d:目录文件(文件夹)l:链接文件


第三和四列代表文件的拥有者是谁,此处这些文件都是 root 拥有的

第五列代表文件大小(支队普通文件有意义)

第六七八列代表最后的修改时间

最后一列就是名字

touch

创建一个基本的文件,里面是什么都没有的

image.png|528

<code>cd

cd ==>change directory

修改(当前)目录

image.png|312

<code>cd / 来到根目录,就相当与点击“此电脑”~- 这个位置显示的就是你当前所在的目录

~ 也称为“home 目录”,“用户主目录”,这个就是用户登录的时候,默认进入的目录

可以输入两个字母,按“tab”键进行补全(唯一)如果不唯一,可以连续按两次,就会自动列出所有相关的选项

pwd

可以查看当前所处的路径的绝对路径

Linux 的命令中,但凡涉及到相关的操作,都是可以支持绝对路径相对路径

Linux 中,绝对路径是以 / 开头的相对路径是以 . 或者 .. 开头(有的时候 . 可以省略,. 表示当前目录,.. 表示当前目录的上级目录)

image.png|528


绝对路径写法:

image.png

<code>cat

查看文件内容,直接把文件内容打印到控制台上

image.png

因为里面没有内容,所以什么都看不到

当输入一个命令,没有任何提示,此时就是“成功”,如果失败,就会告诉你一些报错信息

<code>echo

打印内容到控制台上

image.png|498

可以直接将内容打印出来也可以将内容放到指定文件

这里的 <code>> 就是“重定向”。本来是要写到控制台上的,现在通过重定向将这个内容写到文件中会将文件里面原有的内容给清空掉之后再进行写入


如果不想将原有内容清空之后再进行写入

image.png|414

就是用 <code>>> 完成追加写

但这里的 echo +重定向 只能写一些简单的字符串内容。如果需要写的内容很多,就不是很方便,更不方便修改改

vim

这是 Linux 上自带的一个文本编辑器,使用 vim 就可以更灵活的对文件进行编辑了。虽然和记事本的定位差不多,但实际上 vim 的使用要复杂得多

我们这里只介绍一些 vim 最最基础的操作:

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

后面我们使用服务器,可能会经常在服务器上 查看日志修改配置

打开文件

vim + 文件名

编辑内容

vim 包含很多快捷键,快捷键的画风和其他的软件截然不同。

其他的很多软件的快捷键都要搭配 Ctrlalt 之类的组合键完成vim 更期望使我们输入单个案件,就能起到快捷键的效果

所以 vim 引入了“模式”的概念。启动 vim 之后,默认处于 normal mode(普通模式),此时键盘按键都是快捷键,而不是输入文本

要想输入文本,就需要进入 insert mode(插入模式),进入插入模式的方法有很多,最简单的就是 i

保存退出

在 <code>xshell 中,ctrl + s 是冻结屏幕的指令,ctrl + q 是解除冻结结

先按 esc,回到普通模式(左下角的 insert 就消失了)再按 :,进入命令模式(光标就会来到左下角),此时输入的内容,就是 vim 的命令此时输入 wq(write 保存,quit 退出),进行保存退出

image.png|353

<code>mkdir

make directory,创建目录

mkdir 目录名

image.png|338

创建多级目录

<code>mddir -p 目录层级

image.png|525

<code>rm

remove,删除

rm 文件1 文件2 ...

image.png|364

有的系统上(<code>Centos)输入 rm 删除时会有个提示,是否确认要删除,输入 y 就是删除,n 就是不删除若要一次删除多个,只需要在文件之间加上空格即可


删除目录

删除目录,不仅仅是删除目录本身,还要删除目录包含的其他目录和文件

需要使用 rm -r 来删除,-r 表示“递归”有的系统上,删除的时候,也会和上面一样,提示你是否要真的删除。如果是删除目录的话,递归过程比较麻烦,每个目录都会要你确认。这时我们可以使用 rm -rf 的方式直接删除f 表示“强制删除”,不需要确认

此处的 rm 其实是一个危险操作,一旦删除,数据就没了删除的时候,一定要确保,你删的这个东西确实是不再使用了在公司的服务器上,尤其是生产环境中,不敢随意删除

rm -rf / 这个命令会把你整个硬盘的数据都给删除掉因为根目录下不仅有你的文件,还有系统文件,一旦删除,你的机器就用不了了这个操作,比 drop database 还要猛

drop database 只是数据库挂了,但系统里面的其他文件还是好的但干掉整个系统,是无论数据库,tomcat,其他的程序,其他的数据,统统一锅端

mv

move,移动(剪切,粘贴)

mv 要移动的源 移动的目标

image.png|301

不仅可以移动文件,还可以移动目录,把目录内部包含的所有内容都进行移动


使用 mv 还可以针对文件/目录进行重命名

<code>mv 原文件 改名文件

image.png|395

<code>mv 操作,无论你移动的是什么(普通文件、目录文件),时间复杂度都是

O

(

1

)

O(1)

O(1)

cp

copy,复制

image.png|375

可以拷贝普通文件,也可以拷贝目录拷贝目录的时候,和 <code>rm 类似,都是要加上 -r 选项,表示要递归地拷贝目录里面的内容

man

Linux 命令很多,而且每个命令还有不同的参数选项,记不住是正常的

Linux 上提供了 man 这个命令==>查看命令的手册

image.png|495

<code>man 后面接上命令,即可看到关于这个命令的所有信息按 q 退出


上述命令都是围绕目录和文件展开的

grep

字符串匹配/查找

比如,想查找某个文件中是否包含某个关键字,这个关键字在第几行,都可以使用 grep 来查看

image.png|534

加上 <code>-n 就是显示是第几行


grep 不仅仅可以在文件中查找,还能搭配其他的命令,完成更复杂的查找操作

ps

process show,展示进程,显示出当前系统上都有哪些进程

image.png|491

单独输入 <code>ps,只能看到当前会话(终端)对应的进程,非常不全想看到更全的,就输入 ps aux

image.png|450

因为这里的进程太多了,也不好观察,所以很多时候 <code>ps 都会搭配 grep 来使用

比如,查看 mysql 进程的进程 pid

image.png

<code>| 叫做 管道,会把前面命令的输出,作为后面的命令的输入上面的一行是服务器的进程下面的是因为 grep 命令本身也会形成进程,也能被平时获取到


netstat

可以用来查看某个端口是否被某个进程使用;也可以查询某个进程使用了哪些接口

|569

主要关注 <code>TCP,UDP 涉及到的网络信息,下面的 Unix 域套接字(属于一种进程间通信的方式)可以结合 grep 一起使用,netstat -anp | grep mysql

Linux 哲学理念(从 Unix 继承过来),小而美 ,每个命令都很简单,只是集中精力做好一件事。如果想要完成复杂工作,可以把多个命令通过 | 这样的方式组合起来

上述命令,足以覆盖工作中的大多数场景了

总结 :

ls:列出指定路径下所包含的文件和目录cd:切换目录pwd:查看当前路径的绝对路径touch:创建空的文件cat:显示文件内容echo:显示内容 & 写入文件vim:文本编辑器

打开文件:vim 文件名编辑文件:小写字母 i 进入插入模式保存退出:esc 回到普通模式 :wq mkdir: 创建目录rm:删除文件 & 删除目录(rm -rfmv:移动文件 & 移动目录,也可以重命名cp:复制文件 & 复制目录man:查看手册grep:字符串匹配,查找某个文件是否包含某个字符串ps:查看进程信息netstat:查看网络信息



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。