行业知识
【Linux】常用命令大揭秘,轻松驾驭终端世界
常见命令大全
- 概念
- 1.1:开源、闭源的区别
- 1.2:应用场景
- 发行版
- XShell
- 3.1:使用XShell登入主机
- 3.2:普通用户的增加、删除
- 3.3:查看账户的信息
- whoami指令
- who指令
- 文件和目录基本命令
- 4.1:指令的周边知识
- 文件
- 路径
- Linux目录结构
- 家目录、桌面理解
- echo指令
- 重定向>、>>、、>>、olli输出重定向(>) :本来应该把内容向显示器文件进行写入,更改为向自定义文件进行写入。每次都会先清空目标文件的原始内容,再进行写入。
- 功能:a. 新建空文件 、b.清空目标文件。
- 追加重定向(>>):在目标文件的原始内容后进行写入,不会清空目标文件的原始内容。
- 输入重定向( Linux之间进行文件传输。
语法:sz 文件
- 功能:将远端Linux服务器中的文件下载到window本地。Linux -> Windows之间进行文件传输。
- 使用rz、sz之前,需要先进行yum安装lrzsz,yum install -y lrzsz。
scp指令
语法:scp Linux1中文件 Linux2的用户名@它的公网ip:指定路径
- 功能:Linux与Linux之间进行文件传输。
4.7:查看文件内容操作
cat指令
语法:cat [选项] 文件
- 功能 : 查看文件的内容,会刷屏。适用于小文件的查看。
常用选项:
- -n : 对输出的所有行进行编号。
- -b :对非空行进行编号。
- -s : 不输出多行空行,即:去掉连续的空行,只保留一行空行。
- tac : 逆向打印。
more指令
语法:more [选项] 文件
- 功能 : 查看文件,分页显示。适用于大文件的查看。只能摁Enter逐行往后翻,不可以往前翻。
常用选项:
- -n : 对输出的所有行进行编号。
- q : 退出more。
less指令
语法:less [选项] 文件
- 功能 : 功能与more类似,但less可以随意浏览文件,more只能通过Enter往下翻,不能向前翻、less通过上下箭头实现上、下翻。 具有强大的搜索功能。 less在查看文件内容不需要一次性加载整个文件到内存中,即:分页显示。
常用选项:
- -N : 对输出的所有行进行编号。
- q : 退出less。
- /字符串:向下搜索字符串。
- ?字符串:向上搜索字符串。
head指令
语法:head [选项] [文件]
- 功能:打印文件的前10行的内容。
常用选项:
- -n : 打印文件前n行的内容。
tail指令
语法:tail [选项] [文件]
- 功能:打印文件的最后10行的内容。
常用选项:
- -n : 打印文件最后n行的内容。
4.8:查看时间操作
date指令
语法:date [参数] [+格式]
- 功能:指定格式显示时间。date后不加任何参数,默认显示的是当前的时间。
使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,常用的标记列表如下
%Y:年、%m:月、%d:日 ;
%F:相当于%Y-%m-%d ;
%H :时间、%M:分钟、%S:秒 ;
%X:相当于%H : %M :%S ;
- 时间戳:从1997/1/1_0:0:0开始到现在所经过的秒数。
时间 -> 时间戳:date +%s ;
时间戳 -> 时间:date [+格式] -d @时间戳 ;
cal指令
语法:cal [选项] [年份]
- 功能:用日历查看时间等信息。
常用选项:
- -3 :只显示系统前一个月、当前月、下一个月。
- -j:显示在当年中的第几天。
stat指令
语法:stat 文件
- 功能:查看文件的状态信息。
日志:作用是辅助程序员进行问题排查。它是记录程序的运行过程、状态、错误和调试信息的重要机制。
例子:我从小就有写日记的习惯,某一天我消失了很久,爸妈十分着急,不得已去看我的日记本,希望能解决这个问题。爸妈相当于程序员、我相当于程序、日记本相当于日志,我消失了如同程序挂了,此时程序员需要查看日志进行问题排查和解决。4.9:查找文件操作
find指令
语法:find [路径] [选项] [表达式]
- 功能:在文件系统中指定的路径下进行搜索文件,并且可以按照多种条件进行筛选,如:文件名、文件类型、文件大、修改时间等。在目录树中进行递归搜索,查找时需要指定路径。
常用选项:
- -name : 按照文件名进行查找文件。
which指令
语法:which [命令]
- 功能:查找并显示给定命令在系统的哪个路径下(绝对路径)。一般只用于查找命令(可执行文件)。默认在系统指定的搜索路径下查找,一般为/usr/bin目录,但不全是。
- 注意:命令就是可执行文件。命令 = 工具 = 程序。
补充:/usr/bin目录是Linux系统中一个非常重要的目录,主要用于存放系统的可执行文件,这些可执行文件通常是系统命令和一些应用程序的二进制文件。当用户在命令行输入一个命令时,系统通常会在该目录下查找该命令的可执行文件来执行它。whereis指令
语法:whereis [指令]
- 功能:查找二进制可执行文件(命令)、以及其相关的源代码文件(如:头文件)和man手册页文件。在预先构建的数据库来执行搜索,意味着它不会搜索整个文件系统来查找匹配的文件,而是查询一个包含已知文件位置的数据库。比find搜索速度块,但没它全面。
grep指令
语法:grep [选项] ‘搜索关键字’ 文件
- 功能:行文本过滤器。在文件中根据指定’搜索关键字’,以行为基准进行查找,包含’搜索关键字’的行保留、反之舍去。
常用选项:
- -n : 顺便输出行号。
- -i : 忽略搜索所关键字中的大小写,即:大小写视为相同。
- -v:反向选择,输出不包含’搜索关键字’的行。
grep命令通过管道和其他命令的结合使用,从而实现对文本数据的复杂分析。
4.10:文本处理和使用工具
sort指令
语法:sort [选项] 文件
- 功能:对文件进行排序。它将输入文本中的行按照字母ASCII值、数字、其他排序标准重新排序。为了将重复的内容放在一起,便于与uniq指令结合,达到去重的效果。
常用选项:
- -r : 将排序后的结果反向输出。
uniq指令
语法:uniq [选项] 文件
- 功能 :对文件中相同且连续的内容去重,只保留一份。
常用选项:
- -u : 只输出文件中无重复的行。
- -d : 只输出文件中重复的行,每个只输出一份。
文本内容的去重
sort test | uniq (去重)
sort test | uniq -c (显示去重后的内容在原文本中出现的次数)
sort test | uniq -c | wc -l (显示去重后,剩余内容的总行数)
4.11:文件归档和压缩
打包压缩、解压解包
- 打包压缩:将多个文件或者目录打包成一个单独文件,并使用压缩算法来减少文件大小。
- 解压解包:将之前打包压缩好的文件还原成其原始的文件或目录结构。
- 作用:防止文件丢失、安全;减小了文件的大小、节省了空间;提高了文件管理效率;在网络传输时,节省了时间。
zip、unzip指令
打包压缩的语法:zip [选项] 压缩文件.zip 文件或目录
- 功能:将文件或目录压缩为.zip格式,即:创建.zip压缩文件。
常用选项:
- r :递归处理,将指定目录下所有文件和子目录一并压缩为.zip文件
解压解包的语法:unzip 压缩文件.zip [选项] 路径
- 功能:将压缩.zip文件还原成其包含的原始文件或目录。
常用选项:
- -d:将压缩文件解压到指定的目录下。若不带此选项,默认解压到当前路径下。
tar指令
打包压缩的语法:tar -czf/cvzf dst.tgz src文件或目录
- 功能:将文件或目录压缩为.tgz(.tar.gz)格式,即:创建.tgz压缩文件。
常用选项:
- -c : 创建一个压缩文件。
- -x:解开一个压缩文件。
- -z : 通过gzip压缩算法进行压缩或者解压。
- -v : 压缩或者解压过程中显示文件。
- -f :指定文件名,在f之后立即接文件名、不要再加参数。
- -C:解压到指定目录。若不带此选项,默认解压到当前路径下。
解压解包的语法:tar -xzf/xvzf 压缩文件.tgz [选项] 路径
- 功能:将压缩.tgz文件还原成其包含的原始文件或目录
4.12:其他
uname指令
语法:uname [选项]
- 功能 : 获取电脑和操作系统的相关信息。
常用选项:
- -a:详细输出所有信息,依次为内核名称、主机名、内核发行号、内核版本、硬件架构名称、处理器类型、硬件平台、操作系统名称、版本信息。
- -r : 查看内核发行版(技术+商业) + 机器的处理器架构。(面试考过)
重要的几个热键
ctrl + c : 终止进程。
ctrl + d : 退出,关闭XShell,可用exit来进行替代。
Tab键:具有命令补全 + 文件补齐的功能。
上下箭头:可以查看历史命令,可用history来进行替代。
cat /etc/redhat-release (查看发行版)
cat /proc/cpuinfo (查看cpu)
cat /proc/meminfo (查看内存)
pwd指令
语法:pwd
- 功能:显示用户当前所在的工作目录
安装和卸载
安装:mv 可执行文件 /usr/bin
- 本质:将一个可执行文件移动到系统能够识别的路径下,eg :Linux下路径为/usr/bin。
卸载:在/usr/bin目录下删除它的可执行文件
alias指令
语法:alias 命令1='命令2’
- 概念:给命令行2取别名为命令行1,两个命令功能相同。
在命令行上进行命令的重命名,只有XShell关闭了,在重启XShell,这个功效就会自动消失。
tree指令
语法:tree [选项] 目录
- 功能:使当前目录以及其内子目录和文件以树状结构进行显示。
- 概念:给命令行2取别名为命令行1,两个命令功能相同。
- 本质:将一个可执行文件移动到系统能够识别的路径下,eg :Linux下路径为/usr/bin。
- 功能:显示用户当前所在的工作目录
- 功能 : 获取电脑和操作系统的相关信息。
- 功能:将压缩.tgz文件还原成其包含的原始文件或目录
- 功能:将文件或目录压缩为.tgz(.tar.gz)格式,即:创建.tgz压缩文件。
- -d:将压缩文件解压到指定的目录下。若不带此选项,默认解压到当前路径下。
- 功能:将压缩.zip文件还原成其包含的原始文件或目录。
- r :递归处理,将指定目录下所有文件和子目录一并压缩为.zip文件
- 功能 :对文件中相同且连续的内容去重,只保留一份。
- -r : 将排序后的结果反向输出。
- 功能:对文件进行排序。它将输入文本中的行按照字母ASCII值、数字、其他排序标准重新排序。为了将重复的内容放在一起,便于与uniq指令结合,达到去重的效果。
- 功能:行文本过滤器。在文件中根据指定’搜索关键字’,以行为基准进行查找,包含’搜索关键字’的行保留、反之舍去。
- 功能:查找二进制可执行文件(命令)、以及其相关的源代码文件(如:头文件)和man手册页文件。在预先构建的数据库来执行搜索,意味着它不会搜索整个文件系统来查找匹配的文件,而是查询一个包含已知文件位置的数据库。比find搜索速度块,但没它全面。
- -name : 按照文件名进行查找文件。
- 功能:在文件系统中指定的路径下进行搜索文件,并且可以按照多种条件进行筛选,如:文件名、文件类型、文件大、修改时间等。在目录树中进行递归搜索,查找时需要指定路径。
- 功能:查看文件的状态信息。
- 功能:用日历查看时间等信息。
- 时间戳:从1997/1/1_0:0:0开始到现在所经过的秒数。
- 功能:指定格式显示时间。date后不加任何参数,默认显示的是当前的时间。
- -n : 打印文件最后n行的内容。
- 功能:打印文件的最后10行的内容。
- -n : 打印文件前n行的内容。
- 功能:打印文件的前10行的内容。
- 功能 : 功能与more类似,但less可以随意浏览文件,more只能通过Enter往下翻,不能向前翻、less通过上下箭头实现上、下翻。 具有强大的搜索功能。 less在查看文件内容不需要一次性加载整个文件到内存中,即:分页显示。
- 功能 : 查看文件,分页显示。适用于大文件的查看。只能摁Enter逐行往后翻,不可以往前翻。
- tac : 逆向打印。
- -s : 不输出多行空行,即:去掉连续的空行,只保留一行空行。
- -b :对非空行进行编号。
- -n : 对输出的所有行进行编号。
- 功能 : 查看文件的内容,会刷屏。适用于小文件的查看。
- 功能:Linux与Linux之间进行文件传输。
echo “xxx” >自定义文件
test