关于 Linux 的常用命令(二)

简介: 关于 Linux 的常用命令

vim (文件编辑器)


如果是针对复杂文件, 进行复杂编辑, 那么就可以用到 vim 了.

vim 是 Linux 自带的文本编辑器, 相当于 Windows 的记事本.


这里只介绍 vim 的三种基本用法 :


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


1.打开文件 : 使用 vim 加文件名 / 文件路径.


2.编辑文件


打开 : hello.txt 文件 :

15cbfccd91be4655bd11f728371e310d.png

回车后就会跳转到编辑画面, 这个时候 vim 处在普通模式, 此时键盘按键都是快捷键, 我们得切换到插入模式, 才是输入文本.

按 i, 即可进入插入模式, 这个模式就类似于记事本了.


3.保存退出 : 写完后, 按 Esc 键退出插入模式, 再输入 :w 就是保存, 再输入 :q 就是退出了, 当然可以一起输入 :wq, 保存并退出.

通过 cat 可以看到刚刚输入的内容 :


a341d44e50aa479488deec7a28967273.png


mkdir (创建目录)


mk -> make

dir -> directory

相当于 Windows 中, 鼠标右键, 新建目录.


rm (删除目录/文件)


remove 删除文件 / 删除目录

使用 rm -r 是递归删除, 即删除该目录下的所有子文件和子目录.

ecffb98b82e64828bb5e00e20596c332.png

可以看到, 使用 rm -r 删除要逐个文件询问是否删除, 遇到大文件就很麻烦.

我们可以使用 rm -rf 进行强制删除, 不会询问了.

17cc87c8e56a46b38a37edae4db3ad95.png


我们也可以使用通配符 * 来删除当前目录所有文件.

ff1f73920a2d46f69796fc5ae5774a29.png


注意 : rm 操作很危险 !!!

在 Linux 中, 没有回收站这个概念, 删除了就没有了.

如果我们把根目录删了就完了, 就是这个命令 : rm -rf / , 这个命令一出, 系统都跑不起来了.

如果误敲了, 只能重装系统了.

虽然大家都知道, 但还是会神不知鬼不觉的敲了.

具体啥场景下会敲错呢 ?


情况一 :

我现在要删除一个文件 :

573773badd9346b8bd61888b97e215cd.png

这样删是没问题的, 但就怕多敲了一个空格 : rm -rf / root/777

可以看到在第一个 / 后面跟了一个空格, 这时候 Linux 就认为你要删除两个目录 :

一个是 /

一个是 ./root/777 (./ 省略了)

这就真寄了.


情况二(更隐秘) :

编写 xshell 脚本的时候, 可能需要定义一个变量, 比如 : DIR=hello.txt

当我删除这个变量的时候就是 : rm -rf /$DIR, 注意 这个时候如果变量未定义, 那么 $DIR 就相当于空字符串了, 命令也就相当于 : rm -rf /


cp (复制)


copy 复制.

cp 要复制文件 目标目录

d027c637c34f408386728dea601257fa.png

还可以通过 cp 进行重命名, 当然它不是自己重命名, 而是复制一份, 并将复制的改个名字 :

032e5fc43e6945cf8e815ce2c4eeedae.png


注意 : 如果拷贝的文件已经存在, 则会将原有文件覆盖.


当然 cp 还可以复制目录, 复制目录时, 加上 -r ( r 表示递归, 将所有子目录子文件都复制)


mv (移动)


类似于 cp, 也是这种形式 : mv 要移动的文件 目标目录

当命令是这种形式时 : mv hello.txt world.txt

就是单纯的重命名了, 可以理解为边移动, 边改名.

Linux 中, 没有单独的命令进行重命名, 就是通过 mv 来完成的. (mv 也可以移动目录, 不需要加 -r)

mv 操作是非常快的, 文件路径只是一个属性, 修改路径就是修改这个文件的属性, 很快的.


Linux 中, 没有回收站, 经常用来模拟回收站, 想删除某个东西, 并不是直接 rm, 而是将其移动到一个单独目录中.


grep (字符串匹配)


快速搜索某个文件中, 是否包含某个特定字符串.

3560d5c0d4414f6ab30d628a88b7fea3.png


加上 -n 可以显示字符串出现在该文件哪一行, -n 也可以放 grep 后面.


grep 也可以在多个文件中进行搜索.

63f1488791fd4739bd8feb181c63f047.png


" * " 表示当前目录下所有文件.

-R 表示递归搜索, 如果该目录下还有目录, 就会进入子目录搜索.


grep 不仅仅可以搜索文件内容, 还可以和其它命令联动.


ps (查看进程)


ps 用于查看当前系统上运行的进程, 可与 grep 联动.

ps aux 列出系统中所有进程.

ps aux | grep “进程名” 查看某个进程. grep 起到筛选的作用.

5e8541d6823a439bbac4a6c1cf8383f0.png

前面 3690818 是身份标识 pid, 后面的字符串是 mysql 对应的服务器进程, 注意, 每次敲的命令本身也是一个进程, 对照上图, 就是 root 对应的进程.


ps aux | grep “进程id” 根据 pid 来查询进程.

5ebecd28498640889f783e3f9eb85972.png


netstat (查看网络状态)


netstat 查看系统上的网络状态.

netstat -anp , 显示所有.

一般我们都是关注其中一部分信息, 搭配 grep 来查询.

b6b867f38a664be8a3055ea181e03fee.png

:::3306 是本端的 ip 和端口, ::: 是 ipv6 的写法.

::: * 是对端 ip 和端口

3690818 是进程的 pid


面试常考 :

通过 ps 来查看某个进程的 pid.

通过 netstat 查看某个进程绑定的端口号.


相关文章
|
6天前
|
安全 网络协议 Linux
linux必学的60个命令
Linux是一个功能强大的操作系统,提供了许多常用的命令行工具,用于管理文件、目录、进程、网络和系统配置等。以下是Linux必学的60个命令的概览,但请注意,这里可能无法列出所有命令的完整语法和选项,仅作为参考
344 2
|
2天前
|
安全 网络协议 Linux
linux必学的60个命令
Linux是强大操作系统,提供众多命令行工具,如安装登录(login, shutdown, install)、文件处理(file, mkdir, grep)和系统管理(df, top, kill)。此外,还包括网络操作(ifconfig, ping, telnet)和安全相关(passwd, su, chmod)命令。了解这些基础命令对于有效管理Linux系统至关重要。详细信息和特定用法可能因版本差异而变化,建议查阅相关文档。
184 2
|
3天前
|
NoSQL Linux Shell
Linux MongoDB重启命令
【5月更文挑战第8天】
|
4天前
|
存储 Linux Shell
YUM管理器的命令列表-Linux
YUM管理器的命令列表-Linux
12 0
|
6天前
|
Linux 程序员 计算机视觉
【linux 学习】在Linux中经常用到的cmake、make、make install等命令解析
【linux 学习】在Linux中经常用到的cmake、make、make install等命令解析
18 0
|
6天前
|
Linux
Linux的find命令使用
【5月更文挑战第11天】Linux的find命令使用
19 3
|
6天前
|
监控 Linux 数据处理
|
6天前
|
编解码 Ubuntu Linux
|
6天前
|
JSON Linux 数据格式
Linux命令发送http
请注意,`curl`命令非常灵活,可以根据您的需求进行多种配置和自定义。您可以查看 `curl`命令的文档以获取更多详细信息。
18 0
|
6天前
|
安全 Linux 测试技术

热门文章

最新文章