✨个人主页: Yohifo
🎉所属专栏: Linux学习之旅
🎊每篇一句: 图片来源
🎃操作环境: CentOS 7.6 阿里云远程服务器
- You can’t use up creativity. The more you use, the more you have.
- 创造力是用之不竭的,你用的越多,拥有的就越多。
文章目录
- 📘前言
- 📘正文
- 📖whoami
- 📖ls
- 📃clear
- 📖cd
- 📖pwd
- 📃tab
- 📃tree
- 📃Ctrl+c
- 📖touch
- 📃nano
- 📃cat
- 📃stat
- 📖mkdir
- 📃rmdir
- 📖rm
- 📖man
- 📖cp
- 📖mv
- 📖cat
- 📃echo
- 📃wc
- 📖more
- 📖less
- 📖head
- 📖tail
- 📖|
- 📖date
- 📖cal
- 📖sort
- 📖uniq
- 📖find
- 📃which
- 📃whereis
- 📃alias
- 📖grep
- 📖top
- 📖zip
- 📃unzip
- 📖tar
- 📖bc
- 📖uname
- 📖热键
- 📘总结
📘前言
对于Linux
初学者来说,最头疼的莫过于各种各样的英文指令,比如什么 ls
、touch
、pwd
等等,如果单纯的依靠文档学习,理解起来是比较困难的。于是我决定花费大量时间,总结多达40+条基础指令用法,配合动图
演示,让大家能够轻松理解、掌握它们,指令很多,文章很长,有需要的同学可以通过文章目录跳转查看指定指令。
这是
Linux
中的一个小应用,安装好后,可以通过指令sl
调出这个小火车
📘正文
📖whoami
首先我们先来学习Linux
中的第一条指令:whoami
语法:
whoami
功能:查看当前的操作用户
说明:在Linux
中,用户分为普通用户和超级用户,超级用户只有一个,就是根 root;而普通用户可以通过指令创建很多个,为了防止进错用户空间,可以通过whoami
查看当前的用户是谁
📖ls
语法:
ls [命令选项] [目录或文件]
ls -a
查看当前目录下的所有文件,包括隐藏文件ls -l
查看当前目录下文件的详细信息,包括大小和权限信息ls -s
查看文件的大小,以块为单位ls -d
指定目录后,只查看目录信息,而非其中的文件信息ls -R
递归展示当前目录下的所有文件,如果是目录,会接着往下展ls -1
查看文件时,一行只显示一个文件功能:查看文件信息
说明:ls
只是单纯的查看当前目录下的文件信息,如果想要使用更多功能,需要配合各种各样的命令选项操作,其中命令选项可以配合使用,比如ls -laR
注意:
- 下面将会以
动图
展示上面提到的所有命令,包括最后的ls -laR
,当然以上只是 ls 的部分命令选项,关于更多知识可以去官方文档中学习 ls -l
展示详细信息的命令可以简写为ll
📃clear
语法:
clear
功能:清理屏幕
说明:这是一个绝对高频使用的命令,总所周知,Linux的操作都是以命令行的方式完成的,但是电脑上的黑框框(运行框)显示范围有限,指令给多后,屏幕就被占满了,很不舒服,于是 clear 这个指令能快速帮我们清屏
📖cd
语法:
cd [命令选项] [目录或路径]
cd ..
返回至上一级目录cd 当前目录下的目录名
切换至当前目录下的指定目录中,前提是目录存在cd 绝对路径
直接跳转至指定目录cd ~
可以直接切换到家目录下cd -
可以在最近访问的某个路径和当前路径之间反复横跳功能:在不同目录间切换,改变工作目录
说明:如果直接cd 目录名
表示切换至当前目录下的指定目录中,目录不存在则切换失败;cd 绝对路径
时,绝对路径要给对,从根目录开始,逐级至目标目录,如cd /home/Yohifo
📖pwd
语法:
pwd
功能:显示当前所处路径,从根目录开始显示
说明:pwd
常常用来查看当前位置,对于cd
跳转命令来说,知道自己当前在哪是很重要的,pwd
是一个高频使用的小命令
📃tab
语法:
tab
功能:补全命令提示或者查询指定目录下的文件
说明:配合cd
使用,当cd
进入目录时,只需要输入目录部分信息,点按tab
就可以补全所有信息,前提是这个目录存在;tab
还可以用来查看目录中的文件信息(不需要进入目录),语法为目录/ tab
;tab
还可以用来显示指令信息,连按两次就行
📃tree
语法:
tree [目录]
功能:将指定目录中的所有文件以树状结构展开,如果不加目录,默认展开当前所有目录
说明:tree
是一个扩展应用,如果指令失效,说明还没有安装这个应用,需要在root
账户下输入yum intall -y tree
下载该应用
📃Ctrl+c
语法:
Ctrl+c
功能:可以用来终止程序的运行,比如在使用Linux
时,可能会触发莫名其妙的死循环,这时可以使用Ctrl+c
使程序终止运作
说明:在Linux
中,Ctrl+c
并不是复制,Ctrl+v
也不是粘贴,如果想要复制文本,需要使用Ctrl+Insert
,而粘贴是Shift+Insert
📖touch
语法:
touch [选项] [文件]
touch -a
只更改存取时间touch -m
只更改变动时间touch -d
使用指定的时间而非现在的时间功能:可更改文档或目录的日期时间,包括存取时间和更改时间;还可以创建指定文件
说明:touch
指令通常用来创建文件而非目录,
📃nano
语法:
nano [文件]
功能:打开指定文件进行编辑,可以编写代码
说明:nano
是一个小型记事本,适合前期使用,如果指令失效的话,说明没有安装此应用,需要在root
账户下输入yum intall -y nano
进行下载
📃cat
语法:
cat [文件]
功能:查看指定文件内容
说明:cat
其实叫输出重定向,包含内容比较多,这里只是简单提一下,记住cat 文件
能够查看文件内容就行了
📃stat
语法:
stat [文件]
功能:查看文件的详细信息
说明:任何一个文件都会有三种时间(ACM
):
Access 访问
,最后一次访问文件的时间Modify 修改
,最后一次修改文件或目录的时间Change 更改
,最后一次改变文件或目录(属性)的时间- 当
Modify
时,Change
一定会跟着改变,而修改文件未必需要访问文件,因此Access
可能与修改无关
📖mkdir
语法:
mkdir [选项] dirname
mkdir -p dirname1/dirname2/...
递归创建目录功能:在当前目录下,创建一个名为
dirname
的目录
说明:目录是通过mkdir
创建的,目录下可创建其他文件或目录,而文件只能往其中填写内容
📃rmdir
语法:
rmdir [选项] [目录]
rm -p dirname1/dirname2/...
当子目录被删除后,父目录变成空目录,会递归删除父目录功能:删除空目录
说明:这是一个比较奇葩的指令,它只能删除空目录,如果是含有内容的目录,得通过rm -r
删除
📖rm
语法:
rm [选项] [文件或目录]
rm -i
删除前逐一询问确认rm -r
递归删除目录rm -f
强制删除文件,即使文件只读功能:可以删除文件,或者递归删除目录
说明:在删除目录时,需要带上-r
选项,意为递归删除,不论目录是否为空都可以删除
📖man
语法:
man [选项] 命令
man -k
根据关键字进行联机搜索man num 命令
在手册的第num章节查询命令信息man -a
在所有章节中进行查询功能:查看命令的详细信息
说明:man
手册共分为八章
- 普通命令
- 系统调用
- 库函数
- 特殊文件
- 文件格式
- 游戏
- 附件及一些变量
- 系统管理用的命令
📖cp
语法:
cp [选项] 源文件或源目录 目标文件或目标目录
cp -i
涉及文件覆盖前发出询问cp -r
递归拷贝目录及其中的文件cp -f
强制覆盖,无视询问语句功能:拷贝文件或目录,相当于 Ctrl+c 和 Ctrl+v 复制粘贴
说明:复制的文件或目录要存在,拷贝目录需要递归拷贝
📖mv
语法:
mv [选项] 源文件或源目录 目标文件或目标目录
mv -i
如果目标文件已存在,会询问是否继续mv -f
强制移动,无视询问语句功能:可以对文件或目录做出移动操作,当目标文件不存在时,会自动创建,然后再覆盖,这样就完成了一次文件重命名;
mv
指令默认自带递归属性
说明:mv
指令对文件重命名后,源文件会丢失,数据移入新文件中,相当于 Ctrl+x 剪切
📖cat
语法:
cat [选项] [文件]
cat -n
查看内容时,输出对应行号(包括空白行)cat -b
查看内容时,输出对应行号(不包括空白行)cat -s
出现多行空格时,只显示一行功能:查看目标文件的内容,输入重定向
说明:cat
默认从键盘读取数据,加上文件后从文件读取,形式为cat < 文件
其中<
可省略
📃echo
语法:
echo [选项] 内容 > [文件]
echo -n
写入内容时,不自动换行echo >>
追加文件,而不是直接覆盖功能:向文件写入内容,输出重定向
说明:echo 内容 > [文件]
向文件写入内容时,>
不能省略;如果是追加内容,需要使用>>
📃wc
语法:
wc [文件]
wc -l
只查看行数功能:查看文件信息,包括已换行数、词数、大小(字节)
说明:默认显示信息依次为已换行数 字词数(以空白字符划分) 字节数
📖more
语法:
more [选项] [文件]
q
在查看文档时,可通过q
退出查看模式功能:查看篇幅较长的文档
说明:more
功能较少,使用起来比较局限,只能往下翻查看文件,不能往上翻
📖less
语法:
less [文件]
/字符串
向下搜索字符串?字符串
向上搜索字符串i
搜索时忽略大小写功能:查看长文档,功能更齐全,也更好用
说明:less
是Linux
中正统的文档查看工具,依靠方向键控制查看,可以向任意方向翻看文档
📖head
语法:
head [参数] [文件]
head -50
查看前五十行功能:可以查看文档的指定前n行,默认查看前10行
说明:无
📖tail
语法:
tail [参数] [文件]
tail -50
查看后五十行功能:可以查看文档的指定后n行,默认查看后10行
说明:无
📖|
语法:
|
功能:借助管道临时存储数据
说明:计算机中最重要的资源就是数据,可以通过管道|
,先把数据暂时存放到管道中,再使用;也可以借助管道,通过多条指令组合,提取到指定数据
示例:借助管道,读取到文档的 500行 ~ 520行
📖date
语法:
date [选项]
date +%Y-%m-%d_%H:%M:%S
将时间按照一定格式输出date +%s
获取当前时间戳date -d 时间戳
把时间戳转化成对应时间功能:获取当前的时间,或按指定格式输出时间
说明:时间戳是指从1970年1月1日0时0分0秒到现在所经过的时间,是计算机中的一个重要概念
注意: 对于本地时间来说,时间戳0表示 1970-1-1 8:00,因为我们在东八区,多八个小时
📖cal
语法:
cal [选项]
cal -3
查看最近三个月的日历cal 2019
查看2019年的日历功能:查看日历
说明:默认不加任何选项,查看本月的日历
📖sort
语法:
sort [文件]
sort -r
降序功能:对文件内容进行排序
说明:默认为升序,排序依据为ASCII码值大小
📖uniq
语法:
uniq [文件]
功能:对文件内容进行去重
说明:相邻且重复的内容才会被处理,因此uniq
通常借助|
和sort
进行去重
📖find
语法:
find 路径 [选项]
find 路径 -name test
在指定路径下,查找名为test
的文件find 路径 -type
在指定路径下,查找指定类型文件功能:在指定路径下查问文件
说明:Linux中共有7种文件类型,其中 d 是目录文件
📃which
语法:
which [命令]
功能:查看命令在系统中的存储位置和相关信息
说明:无
📃whereis
语法:
whereis [目标]
功能:搜索指定程序、文档的位置
说明:无
📃alias
语法:
alias 目标指令='源指令'
功能:为比较长的指令起别名
说明:相当于重命名
📖grep
语法:
grep [选项] [目标] [源文件]
greap -n dst src
在src文件中,过滤出 dst,并且输出对应行grep -i
过滤时,忽略大小写grep -v
反向过滤,显示除过滤值外的值功能:行文本过滤工具
说明:过滤为整行过滤,假设文档为一段话,如果搜索到待过滤值,那么整行文本都会被显示,同理,反向过滤时整行文本都不会显示,因为它们是一个整体
📖top
语法:
top
功能:查看当前系统运行情况
说明:相当于Windows中的任务管理器
📖zip
语法:
zip [选项] 压缩文件.zip 目标文件或目录
zip -r
递归压缩,用于压缩目录功能:压缩文件或目录
说明:zip
为一个应用程序,指令无效的需要自行下载
📃unzip
语法:
unzip 压缩文件.zip
功能:对已压缩的文件进行解包
说明:无
📖tar
语法:
tar [选项] 文件或目录
tar -czf
可以打包文件,后缀为tgz
tar -xzf
解包文件tar -ztvf
在不解包的情况下,查看压缩包内的文件功能:集解压缩为一体
说明:tgz
也是Linux
中常见的压缩包后缀;两种压缩方式zip
与tar
,默认都是解压到当前路劲下,但是可以通过-d
与-C
指定路径
📖bc
语法:
bc
功能:计算器,可以很方便的进行浮点数运算
说明:可以通过管道|
配合echo
直接显示计算结果
📖uname
语法:
uname [选项]
uname -a
查看详细信息uname -r
查看关键信息,即软硬件信息功能:查看系统信息
说明:cat /etc/redhat-release
可以查看当前系统的信息(CentOs
)
📖热键
ctrl+d
退出
ctrl+r
可以在历史命令中进行智能搜索
history
查看历史命令
reboot
可以重启系统(需要root权限)
shutdown
可以关机(云服务器不需要关机)
📘总结
以上就是关于 Linux
基础命令介绍的全部内容了,大体可分为五类:创建、读取、修改、查找、解压
,不同的类别中又包含了很多具体命令,而几乎每个命令都有不同的命令选项,全部一一介绍完不太可能,因此本文中只节选了部分命令选项进行讲解,有需要的同学可以去官网进行学习,最后希望你能在其中学到有用的知识!
如果你觉得本文写的还不错的话,期待留下一个小小的赞👍,你的支持是我分享的最大动力!
如果本文有不足或错误的地方,随时欢迎指出,我会在第一时间改正