✨个人主页: Yohifo
🎉所属专栏: Linux学习之旅
🎊每篇一句: 图片来源
🎃操作环境: CentOS 7.6 阿里云远程服务器

  • You can’t use up creativity. The more you use, the more you have.
    • 创造力是用之不竭的,你用的越多,拥有的就越多。

道阻且长,行则将至



📘前言

对于Linux初学者来说,最头疼的莫过于各种各样的英文指令,比如什么 lstouchpwd 等等,如果单纯的依靠文档学习,理解起来是比较困难的。于是我决定花费大量时间,总结多达40+条基础指令用法,配合动图演示,让大家能够轻松理解、掌握它们,指令很多,文章很长,有需要的同学可以通过文章目录跳转查看指定指令。

这是Linux中的一个小应用,安装好后,可以通过指令 sl 调出这个小火车

"移动的小火车"


📘正文

📖whoami

首先我们先来学习Linux中的第一条指令:whoami

语法:whoami
功能:查看当前的操作用户
说明:Linux中,用户分为普通用户和超级用户,超级用户只有一个,就是根 root;而普通用户可以通过指令创建很多个,为了防止进错用户空间,可以通过 whoami 查看当前的用户是谁

whoami


📖ls

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

  • ls -a 查看当前目录下的所有文件,包括隐藏文件
  • ls -l 查看当前目录下文件的详细信息,包括大小和权限信息
  • ls -s 查看文件的大小,以块为单位
  • ls -d 指定目录后,只查看目录信息,而非其中的文件信息
  • ls -R 递归展示当前目录下的所有文件,如果是目录,会接着往下展
  • ls -1 查看文件时,一行只显示一个文件

功能:查看文件信息
说明:ls 只是单纯的查看当前目录下的文件信息,如果想要使用更多功能,需要配合各种各样的命令选项操作,其中命令选项可以配合使用,比如 ls -laR

注意:

  • 下面将会以动图展示上面提到的所有命令,包括最后的 ls -laR,当然以上只是 ls 的部分命令选项,关于更多知识可以去官方文档中学习
  • ls -l 展示详细信息的命令可以简写为 ll

 "ls命令"

📃clear

语法:clear
功能:清理屏幕
说明:这是一个绝对高频使用的命令,总所周知,Linux的操作都是以命令行的方式完成的,但是电脑上的黑框框(运行框)显示范围有限,指令给多后,屏幕就被占满了,很不舒服,于是 clear 这个指令能快速帮我们清屏

 "clear命令"


📖cd

语法:cd [命令选项] [目录或路径]

  • cd .. 返回至上一级目录
  • cd 当前目录下的目录名 切换至当前目录下的指定目录中,前提是目录存在
  • cd 绝对路径 直接跳转至指定目录
  • cd ~ 可以直接切换到家目录下
  • cd - 可以在最近访问的某个路径和当前路径之间反复横跳

功能:在不同目录间切换,改变工作目录
说明:如果直接 cd 目录名 表示切换至当前目录下的指定目录中,目录不存在则切换失败;cd 绝对路径 时,绝对路径要给对,从根目录开始,逐级至目标目录,如 cd /home/Yohifo

 "cd命令"


📖pwd

语法:pwd
功能:显示当前所处路径,从根目录开始显示
说明:pwd 常常用来查看当前位置,对于 cd 跳转命令来说,知道自己当前在哪是很重要的,pwd 是一个高频使用的小命令

pwd命令

📃tab

语法:tab
功能:补全命令提示或者查询指定目录下的文件
说明:配合 cd 使用,当 cd 进入目录时,只需要输入目录部分信息,点按 tab 就可以补全所有信息,前提是这个目录存在;tab 还可以用来查看目录中的文件信息(不需要进入目录),语法为 目录/ tabtab 还可以用来显示指令信息,连按两次就行

tab热键

📃tree

语法:tree [目录]
功能:将指定目录中的所有文件以树状结构展开,如果不加目录,默认展开当前所有目录
说明:tree 是一个扩展应用,如果指令失效,说明还没有安装这个应用,需要在 root 账户下输入 yum install -y tree 下载该应用

tree命令

📃Ctrl+c

语法:Ctrl+c
功能:可以用来终止程序的运行,比如在使用Linux时,可能会触发莫名其妙的死循环,这时可以使用 Ctrl+c 使程序终止运作
说明:Linux 中,Ctrl+c 并不是复制,Ctrl+v 也不是粘贴,如果想要复制文本,需要使用 Ctrl+Insert ,而粘贴是 Shift+Insert

Ctrl+c命令


📖touch

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

  • touch -a 只更改存取时间
  • touch -m 只更改变动时间
  • touch -d 使用指定的时间而非现在的时间

功能:可更改文档或目录的日期时间,包括存取时间和更改时间;还可以创建指定文件
说明:touch 指令通常用来创建文件而非目录,

touch命令

📃nano

语法:nano [文件]
功能:打开指定文件进行编辑,可以编写代码
说明:nano 是一个小型记事本,适合前期使用,如果指令失效的话,说明没有安装此应用,需要在 root 账户下输入 yum intall -y nano 进行下载

nano命令

📃cat

语法:cat [文件]
功能:查看指定文件内容
说明:cat 其实叫输出重定向,包含内容比较多,这里只是简单提一下,记住 cat 文件 能够查看文件内容就行了

cat简单介绍

📃stat

语法:stat [文件]
功能:查看文件的详细信息
说明:任何一个文件都会有三种时间(ACM

  • Access 访问,最后一次访问文件的时间
  • Modify 修改,最后一次修改文件或目录的时间
  • Change 更改,最后一次改变文件或目录(属性)的时间
  • Modify 时,Change 一定会跟着改变,而修改文件未必需要访问文件,因此 Access 可能与修改无关

stat命令


📖mkdir

语法:mkdir [选项] dirname

  • mkdir -p dirname1/dirname2/... 递归创建目录

功能:在当前目录下,创建一个名为 dirname 的目录
说明:目录是通过 mkdir 创建的,目录下可创建其他文件或目录,而文件只能往其中填写内容

mkdir命令

📃rmdir

语法:rmdir [选项] [目录]

  • rm -p dirname1/dirname2/... 当子目录被删除后,父目录变成空目录,会递归删除父目录

功能:删除空目录
说明:这是一个比较奇葩的指令,它只能删除空目录,如果是含有内容的目录,得通过 rm -r 删除

rmdir命令


📖rm

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

  • rm -i 删除前逐一询问确认
  • rm -r 递归删除目录
  • rm -f 强制删除文件,即使文件只读

功能:可以删除文件,或者递归删除目录
说明:在删除目录时,需要带上 -r 选项,意为递归删除,不论目录是否为空都可以删除

rm指令


📖man

语法:man [选项] 命令

  • man -k 根据关键字进行联机搜索
  • man num 命令 在手册的第num章节查询命令信息
  • man -a 在所有章节中进行查询

功能:查看命令的详细信息
说明:man 手册共分为八章

  1. 普通命令
  2. 系统调用
  3. 库函数
  4. 特殊文件
  5. 文件格式
  6. 游戏
  7. 附件及一些变量
  8. 系统管理用的命令

man命令


📖cp

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

  • cp -i 涉及文件覆盖前发出询问
  • cp -r 递归拷贝目录及其中的文件
  • cp -f 强制覆盖,无视询问语句

功能:拷贝文件或目录,相当于 Ctrl+c 和 Ctrl+v 复制粘贴
说明:复制的文件或目录要存在,拷贝目录需要递归拷贝

cp命令


📖mv

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

  • mv -i 如果目标文件已存在,会询问是否继续
  • mv -f 强制移动,无视询问语句

功能:可以对文件或目录做出移动操作,当目标文件不存在时,会自动创建,然后再覆盖,这样就完成了一次文件重命名;mv 指令默认自带递归属性
说明:mv 指令对文件重命名后,源文件会丢失,数据移入新文件中,相当于 Ctrl+x 剪切

mv指令


📖cat

语法:cat [选项] [文件]

  • cat -n 查看内容时,输出对应行号(包括空白行)
  • cat -b 查看内容时,输出对应行号(不包括空白行)
  • cat -s 出现多行空格时,只显示一行

功能:查看目标文件的内容,输入重定向
说明:cat 默认从键盘读取数据,加上文件后从文件读取,形式为 cat < 文件 其中 < 可省略

cat命令

📃echo

语法:echo [选项] 内容 > [文件]

  • echo -n 写入内容时,不自动换行
  • echo >> 追加文件,而不是直接覆盖

功能:向文件写入内容,输出重定向
说明:echo 内容 > [文件] 向文件写入内容时,> 不能省略;如果是追加内容,需要使用 >>

echo命令

📃wc

语法:wc [文件]

  • wc -l 只查看行数

功能:查看文件信息,包括已换行数、词数、大小(字节)
说明:默认显示信息依次为 已换行数 字词数(以空白字符划分) 字节数

wc命令


📖more

语法:more [选项] [文件]

  • q 在查看文档时,可通过 q 退出查看模式

功能:查看篇幅较长的文档
说明:more 功能较少,使用起来比较局限,只能往下翻查看文件,不能往上翻

more命令


📖less

语法:less [文件]

  • /字符串 向下搜索字符串
  • ?字符串 向上搜索字符串
  • i 搜索时忽略大小写

功能:查看长文档,功能更齐全,也更好用
说明:lessLinux 中正统的文档查看工具,依靠方向键控制查看,可以向任意方向翻看文档

less 命令


📖head

语法:head [参数] [文件]

  • head -50 查看前五十行

功能:可以查看文档的指定前n行,默认查看前10行
说明:

head命令


📖tail

语法:tail [参数] [文件]

  • tail -50 查看后五十行

功能:可以查看文档的指定后n行,默认查看后10行
说明:

tail命令


📖|

语法:|
功能:借助管道临时存储数据
说明:计算机中最重要的资源就是数据,可以通过管道 |,先把数据暂时存放到管道中,再使用;也可以借助管道,通过多条指令组合,提取到指定数据
示例:借助管道,读取到文档的 500行 ~ 520行

管道命令


📖date

语法:date [选项]

  • date +%Y-%m-%d_%H:%M:%S 将时间按照一定格式输出
  • date +%s 获取当前时间戳
  • date -d 时间戳 把时间戳转化成对应时间

功能:获取当前的时间,或按指定格式输出时间
说明:时间戳是指从1970年1月1日0时0分0秒到现在所经过的时间,是计算机中的一个重要概念

date命令
注意: 对于本地时间来说,时间戳0表示 1970-1-1 8:00,因为我们在东八区,多八个小时


📖cal

语法:cal [选项]

  • cal -3 查看最近三个月的日历
  • cal 2019 查看2019年的日历

功能:查看日历
说明:默认不加任何选项,查看本月的日历

cal命令


📖sort

语法:sort [文件]

  • sort -r 降序

功能:对文件内容进行排序
说明:默认为升序,排序依据为ASCII码值大小

sort命令


📖uniq

语法:uniq [文件]
功能:对文件内容进行去重
说明:相邻且重复的内容才会被处理,因此 uniq 通常借助 |sort 进行去重

uniq命令


📖find

语法:find 路径 [选项]

  • find 路径 -name test 在指定路径下,查找名为test的文件
  • find 路径 -type 在指定路径下,查找指定类型文件

功能:在指定路径下查问文件
说明:Linux中共有7种文件类型,其中 d 是目录文件

find命令

📃which

语法:which [命令]
功能:查看命令在系统中的存储位置和相关信息
说明:

which命令

📃whereis

语法:whereis [目标]
功能:搜索指定程序、文档的位置
说明:

whereis命令

📃alias

语法:alias 目标指令='源指令'
功能:为比较长的指令起别名
说明:相当于重命名

alias命令


📖grep

语法:grep [选项] [目标] [源文件]

  • grep -n dst src 在src文件中,过滤出 dst,并且输出对应行
  • grep -i 过滤时,忽略大小写
  • grep -v 反向过滤,显示除过滤值外的值

功能:行文本过滤工具
说明:过滤为整行过滤,假设文档为一段话,如果搜索到待过滤值,那么整行文本都会被显示,同理,反向过滤时整行文本都不会显示,因为它们是一个整体

grep命令


📖top

语法:top
功能:查看当前系统运行情况
说明:相当于Windows中的任务管理器

top命令


📖zip

语法:zip [选项] 压缩文件.zip 目标文件或目录

  • zip -r 递归压缩,用于压缩目录

功能:压缩文件或目录
说明:zip 为一个应用程序,指令无效的需要自行下载

zip 命令

📃unzip

语法:unzip 压缩文件.zip
功能:对已压缩的文件进行解包
说明:

unzip文件


📖tar

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

  • tar -czf 可以打包文件,后缀为 tgz
  • tar -xzf 解包文件
  • tar -ztvf 在不解包的情况下,查看压缩包内的文件

功能:集解压缩为一体
说明:tgz 也是 Linux 中常见的压缩包后缀;两种压缩方式 ziptar ,默认都是解压到当前路劲下,但是可以通过 -d-C 指定路径

tar命令


📖bc

语法:bc
功能:计算器,可以很方便的进行浮点数运算
说明:可以通过管道 | 配合 echo 直接显示计算结果

bc计算器


📖uname

语法:uname [选项]

  • uname -a 查看详细信息
  • uname -r 查看关键信息,即软硬件信息

功能:查看系统信息
说明:cat /etc/redhat-release 可以查看当前系统的信息(CentOs

uname命令


📖热键

ctrl+d 退出
ctrl+r 可以在历史命令中进行智能搜索
history 查看历史命令
reboot 可以重启系统(需要root权限)
shutdown 可以关机(云服务器不需要关机)


📘总结

以上就是关于 Linux 基础命令介绍的全部内容了,大体可分为五类:创建、读取、修改、查找、解压,不同的类别中又包含了很多具体命令,而几乎每个命令都有不同的命令选项,全部一一介绍完不太可能,因此本文中只节选了部分命令选项进行讲解,有需要的同学可以去官网进行学习,最后希望你能在其中学到有用的知识!

如果你觉得本文写的还不错的话,期待留下一个小小的赞👍,你的支持是我分享的最大动力!

如果本文有不足或错误的地方,随时欢迎指出,我会在第一时间改正

星辰大海
感谢支持

GitHub 加速计划 / li / linux-dash
6
1
下载
A beautiful web dashboard for Linux
最近提交(Master分支:3 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐