Ubuntu 系统的基础操作和使用


前言

本文内容为一些超常用命令, 内容不多且十分实用, 这些命令是每一个开发人员必须都熟悉了解的. 以下介绍命令时, 本人连接云服务器使用的终端工具是 xShell, 使用的 Linux 发行版是 Ubuntu 的, 所有发行版的基本常用命令都大同小异, 任何版本都可参考学习.

还不知道什么是Linux? 可以先简单了解一下什么是 Linux >> Linux的前世今生

关注收藏, 开始学习吧🧐


常用命令

Ubuntu 是基于 Linux 系统来发行的, 其基本操作没有什么太大的难度, 和 Linux 不能说有点相似, 只能说是一模一样. 其实就是一个练习和使用 Linux 的过程. 在我们的日常工作中, 最常用的命令也只有十个左右. 我们将这些命令熟练掌握之后, 就足以应对大多数工作场景了.

1. 基本操作

我们首先要了解的是对 Linux 目录的一些基本操作, 包括如何访问目录, 如何显示目录, 如何查看自己当前所在位置. 涉及到以下三个操作.

  • ls
  • cd
  • pwd

ls

ls(list), 列出当前 / 指定目录中, 都有哪些内容(包含的文件和目录), 类似于 Windows 的文件资源管理器.(可视化)

在这里插入图片描述

语法: ls [选项] [目录或文件]

功能: 对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

常用选项

  • -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
  • -d 将目录像文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
  • -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
  • -l 列出文件的详细信息。
  • -r 对目录反向排序。
  • -t 以时间排序。
  • -R 列出所有子目录下的文件。(递归)

重点示例:

ls

在这里插入图片描述
可以看到我们当前目录下内容并不多. ls 后面也可以跟上一个指定的目录, 列出指定的目录下有哪些内容.

ls /

在这里插入图片描述

我们要知道, Linux 上一定会有 / 这个目录. 叫做 “根目录”, 有点类似于 Windows 系统中的 “此电脑”.

也可以看到 xShell 中会针对不同类型的文件, 使用不同的颜色进行区分.

  • 白色, 代表普通文件.
  • 深蓝色, 代表目录.
  • 浅蓝色, 代表链接文件. (可以理解为 Windows 中的快捷方式)
  • 红色, 代表压缩包.

而我们在查看目录中, 使用更多的是 ls -l 方式 (也可以写作 ll)

ls -l / ll

在这里插入图片描述
在这里插入图片描述

可以发现, 在列出目录的全部信息后. 有点像平时使用的 Windows 系统中的信息了.

在这里插入图片描述
我们拿一条文件信息出来解释.
在这里插入图片描述

  • drwxr-xr-x: 代表文件的权限, 哪些用户可读可写可执行. 第一个字母描述了文件类型, - 为普通文件, d 为目录, l 为链接文件.
  • root: 第一个代表文件的拥有者是谁, 第二个代表的是文件拥有者所在的用户组.
  • 4096: 代表文件的大小.
  • 后面的信息是指上次修改文件时间.

cd

cd(change list), 可以用来切换目录的位置(相当于 Windows 上双击目录的效果), cd 操作大家务必要熟练掌握, 这样才能在我们的 Linux 系统中来去自如.

语法: cd 目录名

功能: 改变工作目录, 将当前工作目录改变到指定的目录下.

示例:

cd etc/

进入当前目录下的 etc 目录
在这里插入图片描述

cd ../

返回上级目录
在这里插入图片描述

cd ~

进入用户家目
在这里插入图片描述

cd -

返回最近访问目录
在这里插入图片描述

扩展知识:

认识 Linux 目录结构
Linux 是一个树形目录结构.
在这里插入图片描述
几个特殊的目录:

  • / 称为根目录
  • . 称为当前目录
  • .. 称为当前目录的上级目录

绝对路径 vs 相对路径
形如: /usr/share/tomcat/logs/ 以根目录开头的, 称为绝对路径.
形如: ./logs 以 . 或者 … 开头的, 称为相对路径.

使用 tab 键补全
我们敲的所有的 Linux 命令, 都可以使用 Tab 键来尝试补全, 加快效率.

使用 ctrl + c 重新输入
如果命令或者目录敲错了, 可以 Ctrl + c 取消当前的命令. 在 Linux 中, Ctrl + c 不是复制的意思, 复制操作为 Ctrl + Insert, 粘贴为 Shift + Insert.

pwd

当我们进行 cd 多次后, 找不到自己在哪了, 就可以使用 pwd 来直接查看我们当前位置的绝对路径.

语法: pwd

功能:显示用户当前所在的目录

2. 对文件的操作

接下来我们讲讲关于 Linux 中如何对文件进行操作, 包括创建文件, 读取文件内容, 显示文件内容, 写文件. 涉及到以下四个操作:

  • touch
  • cat
  • echo
  • vim

touch

touch 操作用来创建一个文件.

语法: touch [选项]... 文件...

功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。

举例:

touch test.txt
在这里插入图片描述

cat

有了一个文件之后, 我们就可以通过 cat 操作来读取文件内容了.

语法cat [选项] [文件]

功能: 查看目标文件的内容

常用选项

  • -n 对输出的所有行编号

举例:

cat test.txt
在这里插入图片描述
由于此时我们 test.txt 文件是空的, 所以是没有任何内容的.

echo

echo 操作可以实现一个简单的给文件中写内容的效果.

语法: echo [写的内容] >(覆盖) / >>(拼接) [文件名]

功能: 给文件写一些简单内容, 可拼接, 可覆盖.

举例:

echo hello > test.txt
在这里插入图片描述

echo hello >> test.txt
在这里插入图片描述

vim

通过上述操作来读写一些简单的文件还好, 但如果读写一些复杂的文件, 内容更长的文件, 显然就不是很方便了, vim 操作就是针对文件进行更加细粒度的编辑(可以理解为 Linux 系统上自带的记事本程序). vim 这个程序的使用方法其实是非常复杂的, 有兴趣学习 vim 编辑的读者可以查阅 vim 使用相关的书籍. 在这里我主要讲讲, vim 的三个基本操作.

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

示例:

创建文件 / 打开文件:
vim test.txt
在这里插入图片描述

进入插入模式(编辑文件):
vim 打开文件后默认是普通模式. 普通模式下键盘的按键表示一些特殊功能的快捷键. (例如按下 j 并不是输入字母 “j”, 而是表示光标往下移动一行). 需要进入插入模式才能进行文本编辑.

使用 i 键可以进入到插入模式. (左下角提示 --INSERT-- ) 然后就可以像记事本一样正常编辑了.
在这里插入图片描述

保存并退出文件:
在插入模式下不能保存退出文件, 需要先回到 普通模式 . 按下 Esc 回到普通模式. 在普通模式下输入 :wq , 再按下回车, 即可保存并退出文件.

也可以单单使用 :w 执行保存操作, :q 执行退出操作.

关于 Vim 的用法还有很多. 此处不做过多介绍了. 有兴趣的读者可以参考 vimtutor (直接在终端输入vimtutor 即可进入官方教程) 或者 参考其余学习书籍.
在这里插入图片描述

3. 对目录的操作

前面讲了对文件的一些操作, 这里再谈一谈对目录的一些操作, 包括创建目录, 删除目录.

  • mkdir
  • rm

mkdir

mkdir(make directory), 可以用来创建目录.

语法mkdir [选项] [目录名]

功能:在当前目录下创建一个目录.

常用选项

  • -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多级目录

举例

mkdir test111
在这里插入图片描述

mkdir -p test222/111/222/333
在这里插入图片描述

rm

如果我们想删除一个文件或者目录, 就需要使用到 rm(remove) 操作了.

语法rm [-f-i-r-v] [dirName/dir]

功能:删除文件或目录

常用选项

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件

举例:

删除文件:

rm test.txt
在这里插入图片描述

删除目录:

rm -r test222
在这里插入图片描述

重要注意事项:

千万不要运行 rm -rf / , 该操作是删除根目录的所有内容(相当于删除 Windows 系统中打不开 “此电脑” 了). 尤其是在某些生产服务器上.

理解递归删除的过程:

rm -ri test111
在这里插入图片描述

4. 移动文件 / 目录的操作

接下来再聊聊 Linux 中是如何移动, 复制文件 / 目录的.

  • cp
  • mv

cp

语法cp [选项] [源文件或目录] [目标文件或目录]

功能: 复制文件或目录

说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。

常用选项

  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
  • -R 或 --recursive 递归处理,将指定目录下的文件及子目录一并处理

举例:

cp test1.txt test2.txt
在这里插入图片描述

mv

mv(move), 该操作不仅可以实现文件移动, 还可以实现文件的重命名.

语法: mv [选项] [源文件或目录] [目标文件或目录]

功能:

  1. 视 mv 命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。

常用选项:

  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖

举例:

mv test2.txt test1.txt
在这里插入图片描述

mv test1.txt test_dir
在这里插入图片描述

5. 总结基本操作

  • ls 列出目录中的内容
  • cd 切换目录
  • pwd 查看目录所在位置
  • touch 创建新的空文件
  • cat 查看文件内容
  • echo 显示内容 / 写文件
  • vim 文本编辑器
  • mkdir 创建目录
  • rm 删除文件或目录
  • cp 复制文件或目录
  • mv 移动文件或重命名

上述讲的和 文件 / 目录 相关的操作命令, 都是 Linux 操作系统中最常用的一些命令, 读者务必将上述命令熟练掌握, 牢记于心.

6. 必不可少的实用操作

接下来我们讲一些 Linux 系统中的其余一些重要命令. 包括查阅手册, 字符串匹配搜索, 查看进程列表, 显示网络状态.

  • man
  • grep
  • ps
  • netstat

man

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。

语法: man [选项] 命令

常用选项:

  • -k 根据关键字搜索联机帮助
  • num 只在第num章节找
  • man man 能够看到 man 手册中的若干个章节及其含义.

举例:

man ls
在这里插入图片描述
查阅完毕后, 我们可以按 q 退出.

grep

可以实现, 字符串搜索 / 匹配的命令.

语法grep [参数]... [文件]...

功能:用于查找文件中是否包含指定字符串, 并显示对应的行.

选项

  • -n<行数> 显示的行数.
  • -w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分.
  • -r 递归查找. 可以搜索多级目录下的所有文件.
  • --color 高亮查找到的结果.
  • --include 指定查找某些文件.
  • --exclude 指定排除某些文件.

举例:

我们先创建一个 test.txt 文件, 使用 vim 写入一些内容.
在这里插入图片描述

grep aaaa test.txt
在这里插入图片描述

ps

显示进程列表

语法ps [参数]...

功能:用于查看当前系统上运行的进程

选项

  • a 显示一个终端的所有进程
  • u 以用户为主的格式来显示程序状况
  • x 显示所有程序,不以终端机来区分

举例:

ps

这里的内容不全, 只显示了当前会话中的进程.
在这里插入图片描述

ps aux

这样的操作就可以看到所有完整的进程.
在这里插入图片描述

ps aux | grep vim

联合 grep 操作实现查看 vim 进程.
在这里插入图片描述
| 叫做 “管道”, 能够把多个命令连接到一起, 把前一个命令的输出, 作为后一个命令的输入.

netstat

显示网络状态一些情况.

语法netstat [参数]...

功能:查看系统上的网络状态.

选项

  • -a 显示所有正在或不在侦听的套接字
  • -n 显示数字形式地址而不是去解析主机、端口或用户名
  • -p 显示套接字所属进程的PID和名称

举例:

netstat -anp | grep 80
在这里插入图片描述


总结

✨ 本文重点讲述了 Ubuntu 系统中的十几个常用的基本命令, 掌握这些命令后, 就足以应对大部分的场景了.
✨ 想了解更多知识, 请持续关注博主, 本人会不断更新学习记录, 跟随我一起不断学习.
✨ 感谢你们的耐心阅读, 博主本人也是一名学生, 也还有需要很多学习的东西. 写这篇文章是以本人所学内容为基础, 日后也会不断更新自己的学习记录, 我们一起努力进步, 变得优秀, 小小菜鸟, 也能有大大梦想, 关注我, 一起学习.

再次感谢你们的阅读, 你们的鼓励是我创作的最大动力!!!!!

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

慧天城寻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值