鼠扑 发表于 2024-6-25 23:23:08

Linux下的常用根本指令

媒介

推荐一个网站给想要了解大概学习人工智能知识的读者,这个网站里内容讲解普通易懂且风趣幽默,对我帮助很大。我想与各人分享这个宝藏网站,请点击下方链接查看。
https://www.captainbed.cn/f1
Linux下的根本指令涵盖了文件管理、文本处理惩罚、系统信息、网络配置和权限管理等。
Linux下有一个重要的留意点就是一切皆文件,键盘、显示器当文件来看
Linux的根本指令都是在\bin的目录下
一、ls 指令

语法

ls [选项] [目录或文件]
功能

对于目录,该下令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
常用选项



[*]-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
[*]-d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
[*]-i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
[*]-k 以 k 字节的形式表现文件的大小。ls –alk 指定文件
[*]-l 列出文件的具体信息。
[*]-t 以时间排序。
[*]-R 列出所有子目录下的文件。(递归)
举例

ls -l
留意要点

关于拼接

ls指令的选项可以拼接在一起,并且次序可以随意排列,比方:
ls -l
-a可以简写为ls -l
a或ls -al
ls -l
-a -h可以简写为ls -l
ah ……
如许做可以减少输入的字符,使下令更简便。
关于 -a

是Linux系统中,以"."开头的文件和文件夹被视为隐藏文件或隐藏文件夹。这些文件和文件夹默认不会在普通的文件管理器中显示,以防止用户意外地删除或修改系统文件。
要显示所有文件,包括隐藏文件,可以在ls下令中使用-a选项。比方,ls -a下令将显示所有文件和隐藏文件。
关于文件

文件可以被以为是由文件内容和文件属性两部门组成的。文件内容是存储在文件中的数据,可以是文本、图像、音频等。文件属性包括文件的名称、大小、权限、创建时间、修改时间等信息。
文件内容是文件的现实数据,它决定了文件的类型和内容。文件属性则形貌了文件的元数据,包括文件的根本信息和访问权限。
在访问文件时,操作系统会根据文件属性来判断用户是否有权进行读取、写入或执行操作。文件属性也可以用于文件的组织和管理,比方根据文件属性进行搜刮、排序和过滤等操作。
即:我们可以得到一个原理,我们创建一个文件,固然这个文件里没有内容,但是文件属性是需要占据空间的,即空文件也是有存储空间的
https://img-blog.csdnimg.cn/direct/3bd1954776a94d0e9a8b2b1d2938fd07.png
ls与/的联用

ls与根目录

当使用ls下令与/联用时,它将列出根目录下的所有文件和子目录。
比方,输入下令"ls /"会列出根目录下的所有文件和子目录。
ls与任意文件夹

使用ls下令与根路径(/)可以查看任意文件夹的内容。
比方,要查看根目录下的名为"test"的文件夹中的内容,可以使用以下下令:
ls /test
这将列出test文件夹中的所有文件和子文件夹。
同样,如果要查看根目录下的多层级子目录中的内容,可以使用相同的方式。比方,要查看根目录下的test文件夹中的sub文件夹中的内容,可以使用以下下令:
ls /test
/sub 这将列出sub文件夹中的所有文件和子文件夹。
ls与常用选项与路径

ls下令与一些常用选项结合使用,并共同根路径(/),可以进一步定制和筛选要显示的文件和目录。
以下是一些常用选项与/的联用示例:

[*]列出根目录下的所有文件和目录,包括隐藏文件和目录:
ls -a /

[*]列出根目录下的文件和目录,并以长格式显示具体信息:
ls -l
/
[*]列出根目录下的文件和目录,并按修改时间降序排序:
ls -l
t /
[*]列出根目录下的文件和目录,并逆序排序:
ls -r /

[*]递归列出根目录下的所有文件和目录:
ls -R
/

[*]仅列出根目录下的目录:
ls -d /*/
这些只是示例,ls下令的选项非常丰富,你可以根据自己的需要结合选项和根路径来到达想要的效果。使用man ls
下令可以查看完备的选项列表和用法说明。
ls -d与ls -l
d

ls -d下令用于显示目录的信息,而ls -l
d下令用于显示目录自己的信息。
具体来说,ls -d下令用于列出指定目录的名称,而不显示其内容。比方,如果要查看当前目录中所有的子目录名称,可以使用ls -d */下令。
ls -l
d下令用于显示指定目录的具体信息,包括权限、所有者、组、文件大小、修改日期等。比方,要查看当前目录的具体信息,可以使用ls -l
d .下令。
总结来说,ls -d下令用于显示目录的名称,而ls -l
d下令用于显示目录自己的具体信息。
ls与ll

ls是Linux系统中的一个下令,用于列出当前目录中的文件和文件夹。它只显示文件和文件夹的名称。
ll也是Linux系统中的一个下令,现实上是ls -l
的简写。它除了显示文件和文件夹的名称外,还显示了更多的具体信息,比方文件大小、修改日期、权限等。
二、pwd下令

语法

pwd
功能

显示用户当前所在的目录
常用选项


留意要点

window与Linux文件路径的区别

在Windows系统中,文件路径使用反斜杠(\)作为路径分隔符,比方:C:\Users\Username\Documents\myfile.txt。
而在Linux系统中,文件路径使用正斜杠(/)作为路径分隔符,比方:/home/username/documents/myfile.txt。
别的,还有以下几点区别:

[*] 大小写敏感性:Windows系统对文件路径的大小写不敏感,而Linux系统对文件路径的大小写是敏感的。这意味着,在Windows系统中,路径"C:\Users\Username\Documents\myfile.txt"与"C:\users\username\documents\myfile.txt"是等效的,而在Linux系统中,路径"/home/username/documents/myfile.txt"与"/home/Username/Documents/myfile.txt"是差别的。
[*] 根目录表现:在Windows系统中,根目录使用驱动器名作为前缀,比方:C:\。而在Linux系统中,根目录直接使用正斜杠(/)表现。
[*] 特殊字符转义:在Windows系统中,某些字符被视为特殊字符,需要进行转义处理惩罚,比方空格需要使用引号包裹起来。而在Linux系统中,这些字符可以直接使用,不需要特殊处理惩罚。
总的来说,Windows和Linux系统的文件路径表现方式有些差别,主要体现在路径分隔符、大小写敏感性和特殊字符转义方面。在跨平台开辟大概迁徙文件时,需要留意这些差别。
家目录

在Linux系统中,每个用户都有一个家目录。该目录通常位于 /home/username 下,其中 username 是用户的登录名。比方,如果用户的登录名是 john,那么他的家目录将位于 /home/john 下。
如果你是管理员的话,你的家目录则是/root
ps:用户默认登录Linux的目录是家目录
三、cd 指令

Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。
https://img-blog.csdnimg.cn/direct/c8b3390d0c844d2faed51ba9d0c4029c.png
https://img-blog.csdnimg.cn/direct/e76a4eb831164976bdf55558cb73bc96.png
语法

cd 目录名
功能

改变工作目录。将当前工作目录改变到指定的目录下。
举例

cd .
. : 返回上级目录
cd /home/litao/linux/ : 绝对路径
cd .
./day02/ : 相对路径
cd ~:进入用户家目录
cd -:返回最近访问目录
留意要点

cd+路径

使用cd下令与根路径(/)可以访问任意文件夹。根路径(/)表现系统中的最高级目录,所有其他目录都是它的子目录。
比方,要访问根目录下的名为"test"的文件夹,可以使用以下下令:
cd /test
这将使当前工作目录切换到根目录下的test文件夹。
同样,如果要访问根目录下的多层级子目录,可以使用相同的方式。比方,要访问根目录下的test文件夹下的sub文件夹,可以使用以下下令:
cd /test
/sub 这将使当前工作目录切换到sub文件夹。
需要留意的是,在Linux系统中,根路径(/)是整个文件系统的出发点,因此使用cd下令与根路径可以访问任意文件夹。
.

.在Linux中是一个特殊的目录名,表现当前目录。
当你在终端中使用.时,它代表当前所在的工作目录。这个特殊目录名通常用于文件路径操作或与其他下令结合使用。
以下是一些使用.的常见例子:

[*]列出当前目录中的文件和目录:
ls .

[*]进入当前目录:
cd .

[*]复制当前目录中的文件到另一个目录:
cp file.txt .
这将在当前目录中创建一个名为file.txt的副本。

[*]在当前目录中创建一个新的子目录:
mkdir ./new_directory
这将在当前目录下创建一个名为new_directory的新目录。
总而言之,.是一个表现当前目录的特殊目录名,在很多Linux下令和路径操作中起到重要的作用。
. .

..在Linux中也是一个特殊的目录名,表现上一级目录。
当你在终端中使用..时,它代表当前目录的上一级目录。
以下是一些使用..的常见例子:

[*]列出上一级目录中的文件和目录:
ls .
.
[*]进入上一级目录:
cd .
.
[*]复制当前目录的上一级目录中的文件到当前目录:
cp ../file.txt .
这将在当前目录中创建一个名为file.txt的副本,并且该文件位于上一级目录中。

[*]在上一级目录中创建一个新的子目录:
mkdir ../new_directory
这将在上一级目录中创建一个名为new_directory的新目录。
使用..可以方便地进行跳转和操作上一级目录的文件和目录。
ps:根目录的..始终指向自己和.一样
相对路径与绝对路径

Linux中的路径可以分为相对路径和绝对路径。
相对路径是相对于当前工作目录来指定文件或目录的路径。它们通常以一个点(.)或两个点(..)开头。一个点表现当前目录,两个点表现上级目录。比方,如果当前工作目录是/home/user,相对路径./documents表现在当前目录中的documents文件夹,而../..表现当前目录的上级目录的上级目录。
绝对路径是从根目录(/)开始的完备路径,指定了文件或目录的完备位置。它们通常以斜杠(/)开头。比方,/home/user/documents表现从根目录开始的documents文件夹的完备路径。
相对路径与绝对路径的选择取决于你想要指定的文件或目录的位置。使用相对路径可以更简便地指定文件或目录,特殊是当在当前工作目录中操作时。使用绝对路径可以确保正确性,特殊是当在差别的工作目录中操作时。
在任意的Linux文件夹下,都会有两个特殊的目录,即".“和”.."
"."代表当前目录,即该文件夹自己。
".."代表上一级目录,即该文件夹的父级目录。
这两个特殊目录在Linux系统中起到重要的作用,可以通过它们来进行路径的相对引用和切换目录。
使用tree
指令显示目录布局

我们可以使用下面代码下载tree

yum install -y tree

https://img-blog.csdnimg.cn/direct/e6becca6ada948ab9841b507e8f2ff8e.png
“tree
” 是一个在 Linux 和其他类 Unix 系统中常用的下令,用于以树状格式显示目录布局。
使用 “tree
” 下令的根本语法是:
tree
[选项] [目录路径]


[*] 选项:这些是可选的,用于定制 “tree
” 下令的输出。比方,-a 选项会显示所有文件和目录,包括隐藏文件。
[*] 目录路径:这是你想要显示其目录布局的目录的路径。如果你省略这个部门,tree
下令将默认显示当前工作目录的目录布局。
以下是一些 “tree
” 下令的例子:

[*]显示当前工作目录的目录布局:
tree

[*]显示指定目录(比方 /home/user/Documents)的目录布局:
tree
/home/user/Documents
[*]显示包括隐藏文件的所有文件和目录:
tree
-a /home/user/Documents 请留意,如果你的系统中没有预安装 “tree
” 下令,你可能需要先安装它。在大多数 Linux 发行版中,你可以使用包管理器(如 apt、yum 或 dnf)来安装 “tree
”。
四、touch指令

在Linux操作系统中,"touch"是一个用于管理文件和目录的常用下令。这个下令的功能是创建一个新的空文件或更新现有文件的时间戳。
语法

touch [选项]... 文件...
功能

touch下令参数可更改文档或目录的日期时间,包括存取时间和更改时间,大概新建一个不存在的文件。
常用选项



[*] -a 或--time=atime或--time=access或--time=use只更改存取时间。
[*] -d 使用指定的日期时间,而非现在的时间。
[*] -f 此参数将忽略不予处理惩罚,仅负责解决BSD版本touch指令的兼容性题目。
[*] -m 或--time=mtime或--time=modify 只更改变动时间。
[*] -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
[*] -t 使用指定的日期时间,而非现在的时间。
五、mkdir指令

在Linux系统中,"mkdir"下令用于创建目录。"mkdir"是"make directory"的缩写,它允许用户在文件系统中创建一个新的目录。
语法

mkdir [选项] dirname...
功能

在当前目录下创建一个名为 “dirname”的目录
常用选项



[*] -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
[*] “-m”:设置目录的权限模式。
[*] “-v”:显示操作具体信息。
举例

mkdir –p test/test1 : 递归建立多个目录
参考文档
留意要点

mkdir -p

假设你当前所在的目录是 /home/user,你想要创建一个名为 myfolder/folder1/folder2 的目录布局。
使用 mkdir -p 下令可以一次性地创建多条理的目录布局。在终端中输入以下下令:
mkdir -p myfolder/folder1/folder2
如许就会在 /home/user 目录下创建 myfolder 目录,并在其中创建 folder1 目录,最后在 folder1 目录中创建 folder2 目录。如果某个目录已经存在,则不会报错,也不会重新创建。
你可以通过 ls 下令来验证目录布局是否创建成功:
ls -R
如许就能看到所有目录和文件的条理布局。
六、rmdir指令

rmdir是一个与mkdir相对应的下令。mkdir是建立目录,而rmdir是删除下令。
语法

rmdir [-p]
适用对象

具有当前目录操作权限的所有使用者
功能

删除空目录
常用选项

-p 当子目录被删除后如果父目录也酿成空目录的话,就连带父目录一起删除。
留意要点

rmdir默认删除的是空目录

“rmdir"下令在Linux中用于删除空目录。它不能删除非空目录,否则会产生错误。如果你想要删除非空目录,可以使用"rm"下令,使用”-r"或"-rf"选项来递归删除目录及其内容。但请小心使用这些选项,由于它们可以永久删除文件和目录。
七、rm 指令

rm下令可以同时删除文件或目录
语法

rm [-f-i-r-v]
适用对象

适用对象
功能

删除文件或目录
常用选项



[*]-f 即使文件属性为只读(即写保护),亦直接删除
[*]-i 删除前逐一扣问确认
[*]-r 删除目录及其下所有文件
留意要点

root用户删除文件

当使用rm下令删除文件时,如果你是root用户,系统会扣问你是否确认删除。这种做法是为了避免意外删除重要文件。你需要输入"y"确认删除,大概输入"n"取消删除。
拒绝root用户删除文件的扣问操作

使用rm下令的-f选项可以逼迫删除文件,而不会扣问确认。当你以root用户身份执行rm -f下令时,系统会直接删除文件,而不会再扣问是否确认删除。这种操作需要谨慎使用,由于删除后的文件无法规复。
不要使用rm -f 删除根目录

绝对不要使用"rm -f"下令来删除根目录,由于它会逼迫删除文件和目录,并且无法还原。这将导致系统严重损坏,使系统无法正常运行。删除根目录会导致操作系统和所有相关文件和目录被删除,可能会导致数据丢失。如果你意外地删除了根目录,那么规复系统将变得非常困难,你可能需要重装操作系统。以是,肯定要小心,确保你执行的下令正确且安全。
ps:由于Linux不像Windows有接纳站的功能,Linux直接删除就是真的删除了,系统会直接崩溃
rm -r

rm -r是一个Linux下令,用于递归地删除文件或目录。
比方,假设我们有一个名为"example"的目录,它包含以下文件和子目录:
example/
├── file1.txt
├── file2.txt
└── subdirectory/
    ├── subfile1.txt
    └── subfile2.txt
如果我们要用rm -r下令删除"example"目录及其所有内容,我们可以在终端中键入以下下令:
rm -r example
这将删除"example"目录以及其中的所有文件和子目录。是先删除subfile1.txt和subfile2.txt然后依次向前,很像我们数据布局中学到的树形布局
八、man指令

Linux的下令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的下令是man
语法

man [选项] 命令
常用选项



[*]-k 根据关键字搜刮联机帮助
[*]num 只在第num章节找
[*]-a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜刮,知道就制止,用a选项,当按下q退出,他会继承往背面搜刮,直到所有章节都搜刮完毕。

[*] 解释一下,man手册分为8章

[*]1是用户下令和可执行程序的文档
[*]2是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
[*]3是c库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
[*]4特殊文件和设备的文档
[*]5是指文件的格式,比如passwd, 就会说明这个文件中各个字段的寄义
[*]6是给游戏留的,由各个游戏自己定义 ,即游戏和屏幕保护程序的文档
[*]7是附件还有一些变量,比如向environ这种全局变量在这里就有说明
[*]8是系统管理用的下令,这些下令只能由root使用,如ifconfig


ps:man手册可以汉化
举例

一个示例可以是查询ls下令的帮助文档。ls下令用于列出当前目录下的文件和文件夹。你可以使用man下令来查看ls下令的帮助文档,如下所示:
man ls
执行上述下令后,终端会显示关于ls下令的具体帮助信息,包括下令的语法、选项和示例等。你可以根据需要使用差别的下令来查询其他Linux下令的帮助文档。
留意要点

1号手册printf与3号手册的printf

在Linux中,man 1和man 3是两个差别的man手册节。man 1是关于用户下令的手册节,而man 3是关于C函数库的手册节。
printf是C语言中的一个常用函数,用于格式化输出字符串。在man 1手册节中,printf是一个用户下令,用于在终端中打印输出。你可以使用man 1 printf下令来查看printf下令的使用方式和具体说明。
在man 3手册节中,printf是一个C标准库函数,用于格式化输出字符串。你可以使用man 3 printf下令来查看printf函数的使用方式和具体说明,包括它的参数、返回值和使用示例。
总结起来,man 1 printf是用于查看printf下令的用户手册,而man 3 printf是用于查看printf函数的C函数库手册。以是我们在使用man指令查询函数的时间,如果不指定手册,他是会默认从第一个开始查找,容易出现错误,因此我们在查询指令的时间,尽量指定手册名。
九、nano指令

Linux nano是一个文本编辑器,用于在终端窗口中编辑文本文件。nano指令用于启动nano文本编辑器,并打开一个指定的文件进行编辑。
如果Linux没有nano的话,我们可以使用来进行下载
yum install -y nano
语法

使用nano指令的根本语法是:
nano [选项] [文件名]
其中,选项是可选的,用于指定编辑器的一些参数,比方启用语法高亮或显示行号等。文件名是要编辑的文件的名称或路径。
一旦输入了nano指令并按下回车键,nano编辑器会打开指定的文件。如果文件不存在,则nano会创建一个新文件。编辑器会显示一个下令提示符,可以在其下方输入下令。
常用选项

一些常用的nano下令包括:


[*]Ctrl-O:生存文件
[*]Ctrl-X:退出编辑器
[*]Ctrl-G:显示帮助信息
[*]Ctrl-K:剪切一行
[*]Ctrl-U:粘贴剪切的行
[*]Ctrl-W:搜刮文本
[*]Ctrl-\:更换文本
[*]Ctrl-C:显示文件信息和统计
[*]Ctrl-R:读取另一个文件并将其插入当前文件
这些下令可以通过在编辑器中按对应的组合键来执行。在编辑器底部的帮助栏中可以找到更多的可用下令和快捷键。
需要留意的是,nano编辑器相对来说比力简单易用,适合初学者使用。但在处理惩罚大型文件或需要复杂操作的环境下,可能不如其他编辑器(如vim或emacs)那么强大。
举例——编码C语言

要使用nano来编写和编译C语言代码,请按照以下步调操作:

[*] 打开终端。在终端中键入nano file.c来创建一个名为file.c的新文件。
[*] 在nano编辑器中输入你的C语言代码。比方,以下是一个简单的C程序:
#include <stdio.h>

int main() {
   printf("Hello, World!
\n");
   return 0;
}

[*] 按下Ctrl + O来生存文件。
[*] 输入文件名并按下Enter键来确认生存。
[*] 按下Ctrl + X来退出nano编辑器。
[*] 在终端中键入以下下令来编译你的C代码:
gcc file.c -o mytest
其中file.c是你的C代码文件名,mytest是你想要生成的可执行文件的文件名。

[*] 如果编译成功,你将在当前目录下得到一个名为mytest的可执行文件。
[*] 在终端中键入以下下令来运行可执行文件:
./mytest
你将在终端中看到输出Hello, World!

https://img-blog.csdnimg.cn/direct/807c52dd1c054196ba42fcb3166892c2.png
拓展

在Linux系统中,绝大部门的系统下令(如ls、cd、cp等)都是放在/bin目录下。这个目录通常被称为“二进制目录”大概“下令目录”,其中存放了系统的根本下令和工具。
除了/bin目录外,还有一些其他目录也存放了可执行文件:


[*]/sbin目录:存放一些系统管理下令,通常需要超级用户权限来执行。
[*]/usr/bin目录:存放了更多的用户下令和工具。
[*]/usr/sbin目录:存放了一些非管理员用户使用的系统管理下令。
需要留意的是,固然大多数Linux系统的下令都存放在这些目录中,但是也可以自定义安装其他软件,并将其可执行文件放在其他目录中。因此,有些下令可能存放在差别的位置。
示例

起首,确保系统上已经安装了gcc编译器。
然后,创建一个c代码文件(比方hello
.c),并在其中编写以下代码:
#include <stdio.h>

int main() {
    printf("Hello, World!
\n");
    return 0;
}
生存文件。
接下来,打开终端,进入到生存代码文件的目录,并执行以下下令来编译代码:
gcc hello
.c -o hello

这将使用gcc编译器将代码编译为可执行文件,并将可执行文件定名为“hello
”。
然后,将可执行文件移动到/bin目录下,执行以下下令:
mv hello
/bin/
移动完成后,你就可以在任何地方直接运行hello
下令,即可看到输出效果。
比方,在终端中输入以下下令进行运行:
hello
输出效果应该为:
Hello, World!
这就是在Linux系统上使用gcc编译c语言代码,并将可执行文件放在/bin目录下直接运行的示例。
十、cp指令

语法

cp [选项] 源文件或目录 目标文件或目录
功能

复制文件或目录
说明

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



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

cp src [文件、目录] dst[文件、目录]
cp src的文件到dst的目录,是直接将src的文件拷贝到dst的目录下
十一、mv指令

mv下令是move的缩写,可以用来移动文件大概将文件改名(move (rename) files),是Linux系统下常用的下令,经常用来备份文件大概目录。
语法

mv [选项] 源文件或目录 目标文件或目录
功能


[*]视mv下令中第二个参数类型的差别(是目标文件还是目标目录),mv下令将文件重定名或将其移至一个新的目录中。
[*]当第二个参数类型是文件时,mv下令完成文件重定名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重定名为给定的目标文件名。
[*]当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv下令将各参数指定的源文件均移至目标目录中。
常用选项



[*]-f :force 逼迫的意思,如果目标文件已经存在,不会扣问而直接覆盖
[*]-i :若目标文件 (destination) 已经存在时,就会扣问是否覆盖!
示例

在Linux上,使用mv下令可以对文件进行重定名。下面是一个例子:
假设现有一个名为file.txt的文件,我们要将其重定名为newfile.txt。可以通过以下下令实现:
mv file.txt newfile.txt
这将把file.txt重定名为newfile.txt。请留意,如果newfile.txt已经存在,则会覆盖该文件。如果要将文件移动到另一个目录并重定名,可以在新目录的路径前加上目录名,比方:
mv file.txt /path/to/newfile.txt
这将把file.txt移动到/path/to/目录,并将其重定名为newfile.txt。没有的话就会创建一个进行重定名。
举例——转移(了解)

将rm改造成mv
vim ~/.bashrc #修改这个文件
mkdir -p ~/.trash
alias rm=trash
alias ur=undelfile
undelfile() {
mv -i ~/.trash/\$@ ./
}
trash() {
mv $@ ~/.trash/
}
十二、cat

语法

cat [选项] [文件]
功能

查看目标文件的内容
常用选项



[*]-b 对非空输出行编号
[*]-n 对输出的所有行编号
[*]-s 不输出多行空行
https://img-blog.csdnimg.cn/direct/61cbe51469134ecc92c5f54619520af6.png
示例

起首,cat下令是Linux中一个经常使用的根本下令,用于连接文件,并将文件内容输出到标准输出大概复制文件内容。
以下是一个使用cat下令的示例:

[*]查看文件内容:使用cat下令可以直接显示一个文件的内容。比方,输入以下下令来查看一个文件的内容:
cat file.txt

这将会在终端中显示file.txt文件的内容。

[*]合并文件内容:使用cat下令还可以将多个文件的内容合并为一个文件。比方,输入以下下令来合并两个文件的内容:
cat file1.txt file2.txt > merged.txt
这将会将file1.txt和file2.txt的内容合并,并将效果生存到merged.txt文件中。

[*]创建文件:使用cat下令还可以创建一个新的文件,并输入内容。比方,输入以下下令来创建一个名为newfile.txt的文件,并输入一些内容:
cat > newfile.txt
然后,你可以输入一些内容,并按下Ctrl + D来生存文件。
这些是一些根本的cat下令的使用示例,还有更多的用法可以通过man cat下令查看帮助文档来了解。
留意要点

如果在Linux中直接使用cat下令背面不加任何参数或文件名,它会进入交互式模式,你可以逐行输入文本,并在输入完毕后按Ctrl+D来结束输入。输入的文本会直接显示在终端上。这个功能可以用于快速创建或编辑文本文件。
十三、tac

功能

tac是一个Linux下令行工具,用于反转给定文件中的行次序。它的功能与cat下令相似,但是它会按照相反的次序输出文件的内容。
语法

tac下令的语法如下:
tac ... ...
常用选项

其中,OPTION是一些可选参数,FILE是要处理惩罚的文件名。
以下是tac下令的常用选项:


[*]-b或--before:在每行的输出之前,使用指定的字符串。
[*]-r或--regex:将FILE参数视为正则表达式模式列表,而不是文件名。
[*]-s或--separator=STRING:使用指定的字符串作为行分隔符。
[*]--help:显示帮助信息。
[*]--version:显示版本信息。
tac下令的工作原理是,它会从文件的最后一行开始读取,然后逐行向前读取,直到读取到文件的第一行。然后,它会将这些行按照相反的次序输出到标准输出。
示例

以下是tac下令的一些示例用法:

[*]反转文件的行次序:
tac file.txt
这将反转file.txt文件中的行次序,并将效果输出到标准输出。

[*]反转多个文件的行次序:
tac file1.txt file2.txt
这将反转file1.txt和file2.txt文件中的行次序,并将效果输出到标准输出。

[*]在每行输出之前添加一个字符串:
tac -b "Line: " file.txt
这将在file.txt文件的每行输出之前添加"Line: "字符串。

[*]使用正则表达式模式列表:
tac -r 'pattern1' 'pattern2' file.txt
这将将file.txt文件中匹配正则表达式模式pattern1和pattern2的行反转输出。
留意:tac下令在处理惩罚大型文件时可能会占用大量内存。如果需要处理惩罚大文件,可以思量使用其他方法或工具。
十四、输出重定向

在Linux中,输出重定向是一种将程序的输出发送到文件而不是终端的方法。
功能

新建新文件
示例

https://img-blog.csdnimg.cn/direct/fb122d9461d94b439422f3bb7b6eb249.png
https://img-blog.csdnimg.cn/direct/057d94a07f1644a780082aac6642e6fb.png
以下是一些常见的输出重定向示例:

[*]将输出重定向到文件:
command > file.txt
这将把下令的输出写入到file.txt文件中。如果文件不存在,则会创建一个新的文件;如果文件已存在,则会覆盖文件中的内容。

[*]将输出附加到文件末端:
command >> file.txt
这将把下令的输出附加到file.txt文件的末端,而不会覆盖文件中的内容。

[*]重定向标准错误输出:
command 2> error.txt
这将把下令的错误输出重定向到error.txt文件中。

[*]将标准输出和错误输出合并:
command > file.txt
2>&1 这将把下令的标准输出和错误输出合并,并将它们都重定向到file.txt文件中。

[*]丢弃输出:
command > /dev/null
这将把下令的输出丢弃,不会写入文件或显示在终端上。
以上是一些常见的输出重定向方法,可以根据需要进行调整和组合。
留意要点

输出重定向

在Linux中,使用输出重定向时,默认环境下每次写入会清空文件的内容。也就是说,如果你使用>运算符将输出重定向到文件,每次运行下令时都会覆盖文件的内容。
如果你希望将输出附加到文件的末端,而不是清空文件并重新写入,可以使用>>运算符。如许每次运行下令时,输出将追加到文件的末端而不会清空已有的内容。
以下是示例:
command > file.txt
这将输出重定向到file.txt文件,每次运行下令时都会清空文件内容。
command >> file.txt
这将输出附加到file.txt文件末端,而不会清空文件内容。
请留意,尽管每次运行下令时会清空文件,但如果在同一个下令中使用多个重定向操作符,比方command > file.txt
2>&1,其中2>&1将错误输出重定向到标准输出,那么文件只会被清空一次。之后的每次运行下令时,输出都会附加到已经被清空的文件末端。
追加重定向

在Linux中,可以使用>>符号来进行追加重定向。追加重定向的作用是将输出附加到文件的末端,而不是覆盖文件的内容。
以下是使用追加重定向的示例:
command >> file.txt
这将把command的输出附加到file.txt文件的末端。如果file.txt不存在,则会创建新文件。如果file.txt已经存在,则将输出追加到文件的末端。
请留意,追加重定向与覆盖重定向的区别在于使用的重定向操作符。使用>符号会清空文件并重新写入,而>>符号会将输出追加到文件的末端。因此,如果你希望保留文件中的旧内容,并在厥后添加新内容,应使用追加重定向。
十五、echo

echo是一个在Linux系统中常用的下令,它用于将文本或变量输出到终端或文件中。以下是关于echo下令的具体说明:
根本语法

echo
常用选项



[*]-n:不换行输出。
[*]-e:启用特殊字符的解释。
[*]-E:禁用特殊字符的解释。
示例


[*] 输出文本:
echo "Hello, World!
"输出:Hello, World!

[*] 输出变量:
name="John"
echo "My name is $name."
输出:My name is John.

[*] 输出特殊字符:
echo -e "Line 1\nLine 2"
输出:
Line 1
Line 2

[*] 输出文本到文件:
echo "Hello, World!
" > file.txt
[*] 追加文本到文件:
echo "Additional line" >> file.txt

留意事项



[*]如果要输出包含空格或特殊字符的文本,发起使用引号引起来,以防止解释错误。
[*]当需要输出特殊字符时,可以使用-e选项启用特殊字符的解释。
[*]-n选项可用于在输出文本后不换行。
[*]如果要输出带有$符号的变量,可以使用双引号将变量引起来,以保持其变量性子。
以上是echo下令的具体说明。你可以根据需要使用差别的选项和参数来满足你的需求。
十六、输入重定向

功能

在Linux中,“<” 操作符用于输入重定向,它将文件的内容作为下令的标准输入(STDIN)。可以使用以下方式进行输入重定向:

[*] 使用 “<” 操作符将文件内容作为下令的标准输入。比方,sort < file.txt 将文件file.txt的内容作为sort下令的输入。sort下令将按照文本行的字母次序对输入进行排序。
[*] 使用 “<” 操作符以及特殊的文件名 “/dev/null” 将下令的标准输入设置为空。比方,command < /dev/null 下令的标准输入被设置为空,这在某些环境下可以用来忽略下令对标准输入的需求。
[*] 使用下令组合和输入重定向。可以将多个下令通过管道组合,并将文件内容作为整个下令组合的标准输入。比方,grep "pattern" < file.txt | sort 将文件file.txt的内容通过grep下令筛选出包含"pattern"的行,并将效果通过管道通报给sort下令进行排序。
输入重定向可以方便地将文件的内容作为下令的输入,而不是从终端手动输入。这在处理惩罚大量数据或自动化脚本中特殊有用。
示例

cat 下令用于显示文件的内容,而 < 操作符用于将文件的内容作为下令的标准输入。可以将它们共同使用来显示文件的内容。
假设有一个名为 file.txt 的文本文件,我们可以使用以下下令来显示文件的内容:
cat file.txt

上述下令将会在终端输出 file.txt 文件的内容。
而使用 < 操作符和 cat 下令可以实现同样的效果,如下所示:
cat < file.txt
上述下令将会将 file.txt 文件的内容作为 cat 下令的标准输入,然后在终端输出文件的内容。
这种用法通常用于将文件的内容通报给其他下令进行处理惩罚,大概将文件的内容重定向到其他文件。比方,可以将文件的内容重定向到另一个文件:
cat < file.txt
> newfile.txt 上述下令将会将 file.txt 文件的内容作为 cat 下令的标准输入,并将 cat 下令的输出重定向到 newfile.txt 文件中,实现将文件内容复制到另一个文件的功能。
十七、more

功能

more下令是Linux系统中一种用于显示文件内容的下令。它可以逐页显示文件内容,方便用户浏览大文件。下面是more下令的一些常用选项和使用方法的详解:
语法

more [选项] 文件名
常用选项



[*]-d:每次显示页前暂停,按任意键继承显示下一页。
[*]-l:忽略换行符,将文件内容一连显示。
[*]-p:在显示页面时,自动搜刮并定位到匹配的字符串。
[*]-s:一连多个空行只显示一个空行。
[*]-u:显示的内容不进行换行操作,显示效果会更流畅。
使用方法



[*]无选项时,使用more下令显示文件内容,按空格键翻页,按q键退出。
[*]使用more -d 文件名下令,每次显示一页内容,显示完一页后暂停,按任意键继承显示下一页。
[*]使用more -l 文件名下令,将文件内容一连显示,忽略换行符。
[*]使用more -p 关键字 文件名下令,显示页面时自动搜刮关键字,并定位到匹配的字符串。
[*]使用more -s 文件名下令,一连多个空行只显示一个空行。
[*]使用more -u 文件名下令,显示内容不进行换行操作,显示效果会更流畅。
使用示例



[*]more myfile.txt
:显示文件myfile.txt的内容。
[*]more -d myfile.txt
:每次显示一页内容,并暂停,按任意键继承显示下一页。
[*]more -p "keyword" myfile.txt:显示文件内容时自动搜刮关键字"keyword"。
[*]more -s myfile.txt
:一连多个空行只显示一个空行。
以上是more下令的一些常用选项和使用方法的详解,通过这些选项和使用方法,可以方便地浏览和查看大文件的内容。
示例

假设有一个名为myfile.txt的文件,内容如下:
This is line 1.
This is line 2.
This is line 3.
This is line 4.
This is line 5.
This is line 6.
This is line 7.
This is line 8.
This is line 9.
This is line 10.
下面是一些more下令的使用示例:

[*]显示文件内容,按空格键翻页:
more myfile.txt
下令执行后,显示文件内容的第一页,按空格键翻到下一页。

[*]显示文件内容,每次显示一页并暂停:
more -d myfile.txt
下令执行后,显示文件内容的第一页,并暂停,按任意键继承显示下一页。

[*]显示文件内容,一连显示,忽略换行符:
more -l myfile.txt
下令执行后,将文件内容一连显示,忽略换行符。

[*]显示文件内容,自动搜刮关键字并定位:
more -p "line 5" myfile.txt
下令执行后,显示文件内容时自动搜刮关键字"line 5",并定位到匹配的字符串。

[*]显示文件内容,一连多个空行只显示一个空行:
more -s myfile.txt
下令执行后,一连多个空行只显示一个空行。
以上是一些more下令的使用示例,可以根据需要选择适合的选项进行文件内容的浏览和查看。
十八、less

功能

less下令是在Linux中用于查看文件内容的下令行工具。与more下令相比,less下令具有更多的功能和选项。
语法

根本语法:
less [选项] 文件名
常用选项

下面是一些less下令的常用选项和功能:

[*]向前翻页:按空格键或f键。
[*]向后翻页:按b键。
[*]向下滚动一行:按j键。
[*]向上滚动一行:按k键。
[*]向下滚动半页:按d键。
[*]向上滚动半页:按u键。
[*]快速跳转到文件开始处:按g键。
[*]快速跳转到文件末端处:按G键。
[*]搜刮关键字:按/键,输入关键字,按回车键。按n键查找下一个匹配项,按N键查找上一个匹配项。
[*]显示行号:在下令行中输入less -N 文件名。
[*]按列进行左右滚动:按左箭头或h键向左滚动,按右箭头或l键向右滚动。
[*]执行外部下令:在下令行中输入!下令,如!ls。
除了以上功能外,less下令还支持更多高级功能,如复制文本、设置环境变量、自定义快捷键等。可以通过输入man less来查看更具体的帮助文档。
总结

less下令是一个功能强大的文件查看工具,可以方便地浏览和搜刮文件内容,同时具有很多实用的功能和选项。
十九、head

功能

head下令是Linux系统中的一个非常实用的下令,它可以用于显示文件的开头部门内容,默认环境下,它会显示文件的前10行,但也可以通过参数来指定显示的行数。
语法

head [参数] [文件名]
常用参数



[*]-n,指定显示的行数,比方:-n 5 表现显示文件的前5行;
[*]-c,指定显示的字节数,比方:-c 20 表现显示文件的前20个字节;
[*]-q,不显示文件名,在显示多个文件时,不显示文件名;
[*]-v,显示文件名,在显示多个文件时,显示文件名;
[*]-z,如果文件是通过gzip压缩的,可以使用该参数来进行解压后再显示。
示例


[*]显示文件的前10行:
head file.txt

[*]显示文件的前5行:
head -n 5 file.txt

[*]显示文件的前20个字符:
head -c 20 file.txt

[*]显示压缩文件的开头部门:
head -z file.txt.gz
总结

head下令是Linux系统中一个非常实用的下令,它可以用于显示文件的开头部门内容。通过指定行数或字节数,我们可以机动地控制显示的内容。同时,head下令还支持处理惩罚压缩文件,可以在显示前解压文件。
二十、tail

功能

tail下令也是Linux系统中一个非常实用的下令,它与head下令相反,用于显示文件的末端部门内容,默认环境下,它会显示文件的后10行,但也可以通过参数来指定显示的行数。
语法

tail [参数] [文件名]
常用参数



[*]-n,指定显示的行数,比方:-n 5 表现显示文件的后5行;
[*]-c,指定显示的字节数,比方:-c 20 表现显示文件的最后20个字节;
[*]-f,实时监控文件的新增内容,并将其输出到屏幕上;
[*]-q,不显示文件名,在显示多个文件时,不显示文件名;
[*]-v,显示文件名,在显示多个文件时,显示文件名;
[*]-z,如果文件是通过gzip压缩的,可以使用该参数来进行解压后再显示。
示例


[*]显示文件的后10行:
tail file.txt

[*]显示文件的后5行:
tail -n 5 file.txt

[*]显示文件的最后20个字符:
tail -c 20 file.txt

[*]实时监控文件的新增内容:
tail -f file.txt
总结

tail下令是Linux系统中一个非常实用的下令,它可以用于显示文件的末端部门内容。通过指定行数或字节数,我们可以机动地控制显示的内容。同时,tail下令还支持实时监控文件的新增内容,非常适用于日志文件的查看和跟踪。
二十一、|(管道)

功能

在Linux系统中,| 是一个非常有用的操作符,也被称为管道操作符。它用于将一个下令的输出作为另一个下令的输入。通过使用管道操作符,可以将多个下令连接在一起,形成一个下令链。如许可以方便地进行数据处理惩罚和操作。
语法

command1 | command2
上述语法中,command1 表现第一个下令,command2 表现第二个下令。command1 的输出会作为 command2 的输入。
示例


[*] 将 ls 下令的输出通报给 grep 下令来过滤特定的文件:
ls | grep .txt

[*] 将 cat 下令的输出通报给 less 下令来进行分页查看:
cat file.txt

| less
[*] 将 ps 下令的输出通报给 grep 下令来查找特定的进程:
ps -ef | grep nginx

管道操作符可以无穷串联,可以通过管道将多个下令连接起来实现更复杂的数据处理惩罚。
留意要点

当cat与tac结合使用时,可以实现反向显示文件内容的效果。cat下令用于将文件内容输出到标准输出,而tac下令则是将文件内容从最后一行开始反向输出。
示例

假设有一个名为 file.txt 的文本文件,内容如下:
This is line 1.
This is line 2.
This is line 3.
使用 cat 下令读取文件内容,再通过 tac 下令将内容反向输出:
cat file.txt

| tac 输出效果为:
This is line 3.
This is line 2.
This is line 1.
如许,使用 cat 下令将文件内容输出到标准输出,然后通过管道 | 将其通报给 tac 下令,从而实现了按行反向显示文件内容的效果。
总结

| 是Linux系统中的一个非常有用的操作符,它可以将一个下令的输出作为另一个下令的输入。通过使用管道操作符,可以方便地将多个下令连接起来,实现复杂的数据处理惩罚和操作。
二十二、date

date 指定格式显示时间: date +%Y:%m:%d
date 用法:date ... [+FORMAT]
在显示方面

在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标志,其中常用的标志列表如下


[*]%H : 小时(00…23)
[*]%M : 分钟(00…59)
[*]%S : 秒(00…61)
[*]%X : 相当于 %H:%M:%S
[*]%d : 日 (01…31)
[*]%m : 月份 (01…12)
[*]%Y : 完备年份 (0000…9999)
[*]%F : 相当于 %Y-%m-%d
在设定时间方面



[*]date -s //设置当前时间,只有root权限才能设置,其他只能查看。
[*]date -s 20080523 //设置成20080523,如许会把具体时间设置成空00:00:00
[*]date -s 01:01:01 //设置具体时间,不会对日期做更改
[*]date -s “01:01:01 2008-05-23″ //如许可以设置全部时间
[*]date -s “01:01:01 20080523″ //如许可以设置全部时间
[*]date -s “2008-05-23 01:01:01″ //如许可以设置全部时间
[*]date -s “20080523 01:01:01″ //如许可以设置全部时间
示例

Linux的date下令用于显示或更改系统的日期和时间。以下是一个使用示例:

[*]显示当前日期和时间:
$ date
输出:
Fri Feb 26 09:24:16
UTC 2024

[*]显示特定格式的日期和时间:
$ date
+"%Y-%m-%d %H:%M:%S" 输出:
2024-02-26
09:24:16


[*]显示当前日期:
$ date
+"%Y-%m-%d" 输出:
2024-02-26

[*]显示当前时间:
$ date
+"%H:%M:%S" 输出:
09:24:16

[*]更改系统日期和时间:
$ sudo date -s "2024-02-26
09:30:00" 该下令将系统的日期和时间设置为指定的日期和时间。
请留意,特定格式的日期和时间字符串中使用的格式符可以根据需要进行调整。具体的格式符说明可以在date下令的帮助文档中找到(使用man date下令查看帮助文档)。
二十三、时间戳

时间戳(timestamp)指的是某个变乱发生的具体时间点,一样寻常以某一固定的起始时间(通常是1970年1月1日00:00:00)为基准,用数字表现。时间戳常用于记录变乱发生的次序、盘算时间隔断等。在盘算机领域中,时间戳通常指的是 Unix 时间戳,也称为 POSIX 时间戳,以秒为单位表现。而在其他领域中,时间戳可能以毫秒、微秒等更精确的单位表现。
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的半夜)开始所经过的秒数,不思量闰秒。
时间->时间戳

date +%s
时间戳->时间

date +%Y:%m:%d -d @1599642565
二十四、cal


功能

cal
下令是Linux操作系统中的一个下令,用于显示日历。它的根本语法是:
语法

cal
[选项] [月份] [年份]
常用选项



[*]-1:显示一个月的日历,默认显示当前月份的日历。
[*]-3:显示三个月的日历,包括前一个月、当前月和下一个月。
[*]-y:显示一整年的日历,默认显示当前年份的日历。
示例


[*]显示当前月份的日历:
cal

[*]显示指定月份的日历:
cal
8
[*]显示指定年份的日历:
cal
-y 2023
[*]显示三个月的日历:
cal
-3
[*]显示当前月份的日历,并将效果生存到文件中:
cal
> cal
endar.txt
[*]显示指定月份和年份的日历,并将效果生存到文件中:
cal
12 2024 > cal
endar.txt 需要留意的是,cal
下令默认使用的是英文日历,如果需要显示其他语言的日历,可以使用环境变量LC_TIME来设置。
比方,显示中文日历:
LC_TIME=zh_CN.UTF-8 cal

二十五、find

功能

find下令是Linux操作系统中一个强大的文件搜刮下令。它可以根据指定的条件搜刮文件,并执行相应的操作。
语法

find下令的根本语法是
find [路径] [选项] [操作]
常用选项



[*]-name pattern:按文件名匹配搜刮,pattern可以是具体的文件名或使用通配符。
[*]-type type:按文件类型匹配搜刮,type可以是f(普通文件)、d(目录)、l(符号链接)等。
[*]-size n:按文件大小匹配搜刮,n表现文件大小,可以使用+表现大于n,-表现小于n,留空表现等于n。
[*]-user name:按文件所有者匹配搜刮,name表现用户名。
[*]-group name:按文件所属组匹配搜刮,name表现组名。
[*]-mtime n:按文件修改时间匹配搜刮,n表现天数,+表现n天前,-表现n天内。
[*]-ctime n:按文件创建时间匹配搜刮,n表现天数,+表现n天前,-表现n天内。
[*]-atime n:按文件访问时间匹配搜刮,n表现天数,+表现n天前,-表现n天内。
[*]-exec command {} \;:对搜刮到的文件执行指定的下令,{}表现文件名,\;表现下令的结束符。
[*]-exclude pattern:排除匹配搜刮的文件或目录,pattern可以是具体的文件名或使用通配符。
常用操作



[*]-print:将搜刮到的文件名输出到标准输出。
[*]-delete:删除搜刮到的文件。
[*]-exec command {} \;:对搜刮到的文件执行指定的下令。
示例


[*]搜刮当前目录下所有的文件:
find .

[*]搜刮指定目录下的所有文件:
find /path/to/dir

[*]按文件名搜刮:
find .
-name "*.txt"
[*]按文件类型搜刮:
find .
-type f
[*]按文件大小搜刮:
find .
-size +1M
[*]按文件所有者搜刮:
find .
-user username
[*]按文件修改时间搜刮:
find .
-mtime -7
[*]对搜刮到的文件执行下令:
find .
-name "*.txt" -exec mv {} /path/to/dir \;
[*]删除搜刮到的文件:
find .
-name "*.tmp" -delete 需要留意的是,find下令的搜刮范围默认是当前目录及其子目录,如果需要指定特定的搜刮路径,可以在下令中使用路径参数。同时,find下令还支持更多的选项和操作,可以通过man find下令查看具体的帮助文档。
二十六、which

功能

which是一个Linux下令行工具,用于查找特定下令的可执行文件的路径。它可以帮助用户确定特定下令在系统中的位置。
使用which下令,可以快速找到特定下令的路径,无论是系统自带的下令还是用户安装的下令。以下是which下令的根本使用方法:
语法

which
选项

其中,可选项可以是:


[*]-a:显示所有匹配的下令,而不只是第一个。
[*]-s:仅显示带有可执行权限的下令。
command参数是要查找的下令的名称。
which下令会搜刮系统的PATH环境变量指定的路径,以确定下令的位置。它会在每个路径中查找与给定下令名称匹配的文件,并显示路径名称。
示例

以下是which下令的示例:
$ which ls
/bin/ls
上述示例中,which下令显示了ls下令的路径为/bin/ls。
$ which python
/usr/bin/python
上述示例中,which下令显示了python下令的路径为/usr/bin/python。
总结起来,which是一个方便的下令行工具,用于查找特定下令的可执行文件的路径。它可以帮助用户确定下令在系统中的位置。
二十七、alis

功能

在Linux中,alias是用于创建一种自定义下令的方法。alias下令用于将一条下令或下令序列与一个自定义名称绑定,以便在以后使用此自定义名称时执行该下令或下令序列。alias下令在下令行中运行,并且只在当前会话中有效,如果希望在每次登录时都可以大概使用这些自定义下令,可以将alias下令添加到shell配置文件中,如.bashrc文件。
语法

alias下令的根本语法如下:
alias ]
其中,alias_name是自定义的下令名称,command是要绑定到该下令名称的现实下令或下令序列。options是一些可选的参数,可以用来修改alias下令的行为。
参数

一些常用的alias下令选项包括:


[*]-p:显示当前定义的所有alias下令。
[*]-a:将alias下令应用到所有下令,包括以“-”开头的下令。
[*]-l:显示所有alias的名称和定义。
[*]-r:移除指定的alias下令。
示例

以下是一些示例,演示了怎样使用alias下令创建自定义下令:

[*]创建一个简单的别名:
alias ll='ls -l
' 如许就可以使用ll下令来代替ls -l
下令。

[*]创建一个带有参数的别名:
alias search='grep -rni'
如许就可以使用search keyword来代替grep -rni keyword下令。

[*]创建一个包含多个下令的别名:
alias update='sudo apt update && sudo apt upgrade'
如许就可以使用update下令来同时执行sudo apt update和sudo apt upgrade下令。

[*]查看当前定义的所有别名:
alias -p
这会显示当前定义的所有alias下令。
需要留意的是,当使用alias下令时,如果下令中包含空格,需要使用单引号或双引号将整个下令或下令序列括起来。另外,如果要删除一个已定义的别名,可以使用unalias下令,如unalias ll会移除之前创建的ll别名。
二十八、grep

功能

grep是Linux中强大的文本搜刮工具,它可以用于在文件中查找特定的字符串模式,并将匹配的行输出到标准输出。
语法

grep的根本语法如下:
grep pattern
其中,pattern是要搜刮的字符串模式,file是要在其中搜刮的文件。如果未指定文件,则默认从标准输入读取数据。
参数

一些常用的grep选项包括:


[*]-i:忽略大小写。
[*]-v:反转匹配,即输出不匹配的行。
[*]-r:递归地搜刮指定目录下的文件。
[*]-n:输出匹配的行以及对应的行号。
[*]-l:仅显示包含匹配字符串的文件名。
[*]-c:只盘算匹配的行数,而不输出匹配的行。
下面是一些使用grep的示例:

[*]在文件中搜刮特定的字符串:
grep "pattern" file.txt
这会在file.txt文件中搜刮包含"pattern"的行,并将匹配的行输出到标准输出。

[*]忽略大小写:
grep -i "pattern" file.txt
这会在搜刮时忽略大小写,比方"Pattern"和"pattern"都会被匹配。

[*]反转匹配,输出不匹配的行:
grep -v "pattern" file.txt
这会输出不包含"pattern"的行。

[*]递归地搜刮文件夹:
grep -r "pattern" folder/
这会在指定的文件夹(包括其子文件夹)中递归地搜刮包含"pattern"的行。

[*]输出匹配的行以及对应的行号:
grep -n "pattern" file.txt
这会输出包含"pattern"的行,并在每行前面显示行号。

[*]只显示包含匹配字符串的文件名:
grep -l "pattern" folder/*
这会在指定文件夹下的所有文件中搜刮"pattern",并仅显示包含匹配字符串的文件名。

[*]只盘算匹配的行数,而不输出匹配的行:
grep -c "pattern" file.txt
这会输出包含"pattern"的行数。
以上仅是grep下令的一些常用选项和示例,还有更多高级的功能和选项可以根据需要进行深入学习和使用。
二十九、zip/unzip

zip

功能

Linux中的zip和unzip是两个常用的下令行工具,用于创建ZIP文件息争压ZIP文件。
语法

zip下令用于将文件或目录压缩成ZIP文件。它的根本语法是:
zip [选项] <压缩文件名> <要压缩的文件或目录>
常用选项

其中,选项可以有以下一些常用选项:


[*]-r:递归地压缩目录及其子目录中的文件。
[*]-q:静默模式,不显示输出信息。
[*]-d:从ZIP文件中删除指定的文件。
[*]-u:更新ZIP文件中已有的文件,或添加新的文件。
示例

zip -r myarchive.zip /path/to/directory
这个下令将会压缩/path/to/directory目录及其子目录中的所有文件,并创建一个名为myarchive.zip的ZIP文件。
unzip

功能

unzip下令用于解压缩ZIP文件。
语法

它的根本语法是:
unzip [选项] <ZIP文件名>
常用选项

其中,选项可以有以下一些常用选项:


[*]-d <目标目录>:将解压后的文件放到指定的目录中。
[*]-o:覆盖已存在的文件。
[*]-q:静默模式,不显示输出信息。
示例

unzip myarchive.zip
这个下令将会解压缩myarchive.zip文件,并将解压后的文件放到当前目录中。
除了根本的压缩息争压缩功能,zip和unzip下令还支持一些其他的高级操作,比如加密压缩、分卷压缩等。你可以使用man zip和man unzip下令查看具体的帮助文档。
三十、top

Linux下常用的性能分析工具,可以大概实时显示系统中各个进程的资源占用状态,类似于Windows的任务管理器。
我们现在要了解的选项


[*]-u<用户名> 指定用户名
[*]-p<进程号> 指定进程
[*]-n<次数> 循环显示的次数
三十一、shutdown-关机

语法

shutdown [选项]
常见选项



[*]-h : 将系统的服务停掉后,立即关机
[*]-r : 在将系统的服务停掉之后就重新启动
[*]-t sec : -t 背面加秒数,亦即『过几秒后关机』的意思
留意事项

如果各位读者是购买了云服务器,尽量不要使用shutdown来关机,由于云服务器一样寻常都要保证服务器一直在线,使用exit大概ctrl+d退出即可
重要的几个热键, + c, + d

按键

在Linux中,Tab键的作用可以总结为以下几点:

[*] 下令补全:在终端中输入下令时,按下Tab键可以自动补全下令或文件名。如果只输入了部门下令或文件名,按下Tab键会自动匹配相应的选项并进行补全。
[*] 文件名补全:在终端中输入文件路径时,按下Tab键可以自动补全文件名。这对于长路径或文件名中包含特殊字符的环境特殊有用。
[*] 下令提示:在终端中输入部门下令或文件名后,按下Tab键可以显示可能的选项列表,以帮助用户选择正确的下令或文件名。
[*] 目录切换:在终端中使用cd下令切换目录时,可以输入部门目录名并按下Tab键进行自动补全。
总的来说,Tab键在Linux中的作用是提高下令行操作的效率和正确性,避免手动输入下令或文件名时的错误。
+ c按键

在Linux中,Ctrl + c键组合的作用是中断当前正在运行的下令或程序。按下Ctrl + c键会发送SIGINT信号给当前活动的进程,通常会导致进程终止并返回用户终端控制权。
这在以下环境下特殊有用:

[*] 终止当前运行的下令:如果一个下令执行时间过长,大概你不再需要运行的下令,你可以按下Ctrl + c键来终止它的执行。
[*] 终止正在运行的程序:当你运行一个程序并且它不响应大概进入了一个无穷循环时,你可以按下Ctrl + c键来逼迫终止这个程序。这通常会使程序立即退出。
需要留意的是,Ctrl + c键只能终止前台运行的进程,对于配景运行的进程需要使用其他方法(如Ctrl + z键)将其发送到配景暂停运行,然后再使用其他下令来终止进程。
+ d按键

在Linux系统中,Ctrl + D键的作用是向终端或交互式程序发送一个EOF(End of File)字符。这个字符告诉程序已经到达了输入的末端。
当在终端中输入Ctrl + D时,终端会将EOF字符发送给当前运行的程序或shell,这通常是告诉它已经输入完毕,并且可以开始处理惩罚输入的内容了。
在交互式程序或shell中,Ctrl + D可以用来结束输入或退出程序。比方,当你在终端中运行一个Python交互式解释器时,按下Ctrl + D将退出解释器。同样的,当你在终端中运行一个shell时,按下Ctrl + D也会退出shell。
总之,Ctrl + D在Linux系统中用于向终端或交互式程序发送EOF字符,用来结束输入或退出程序。
扩展下令



[*]安装和登录下令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
[*]文件处理惩罚下令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
[*]系统管理相关下令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
[*]网络操作下令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
[*]系统安全相关下令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
[*]其它下令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Linux下的常用根本指令