Linux基本操作

Linux是一种开源操作系统,它提供了许多功能强大而灵活的工具和命令,以及一个稳定可靠的运行环境。与其他常见的操作系统不同,Linux可以通过命令行终端来执行操作,这让初学者可能会有一些陌生和不熟悉的感觉。然而,一旦掌握了这些基本操作,您将能够更有效地管理文件和目录、配置系统设置、执行任务等。在本博客中,我们将逐步介绍一些最常用的Linux基本操作

目录

1Linux基本命令

1.1Shell

1.2内部命令和外部命令的概念

1.3命令的执行过程

1.4基本命令的介绍

2.pwd 显示当前目录

3.ls         列处此目录文件

4.du    统计文件占磁盘大小

-a     列举每一个文件的大小-s     只显示总大小-d     指定显示目录的层级   -d  2 只显示到第二层目录

cp    复制

ln  链接

 mv   改名和  移动

find     (重点难点)

mkdir    建立目录文件夹

touch    创建空文件

rm  -rf   递归删除 

1.5通配符


1Linux基本命令

1.1Shell

总体而言,Shell作为Linux系统的一个重要组成部分,为用户提供了一个与底层内核交互的接口。无论是通过命令行操作,还是编写脚本自动化任务,Shell都在用户与系统之间架起了一座桥梁,提供了灵活且强大的操作控制能力。

1.2内部命令和外部命令的概念

  • Shell的作用可以总结为以下几个方面
  • 命令解释器:Shell可以解释用户输入的命令,并将其转化为底层系统调用或其他应用程序的调用。它起到了一个解析器的作用,将用户的指令转化为计算机可以理解和执行的形式。

  • 用户交互:Shell提供了一种交互式的方式,用户可以通过命令行与系统进行交互。用户可以输入命令,获得相应的输出结果,也可以接收系统的提示和信息。

  • 脚本编程:Shell脚本是一种简单而强大的编程语言,可以编写一系列的命令和逻辑,用于自动化执行任务和操作。通过编写脚本,用户可以批处理处理大量的文件、配置系统设置、执行定时任务等。

  • 系统管理:作为一种系统管理工具,Shell允许用户管理文件、目录和权限,控制和监视进程,配置网络和服务等。用户可以通过使用特定的命令和工具来操作和管理系统资源。

  • 扩展和定制:Shell提供了丰富的工具和功能,用户可以根据自己的需求进行扩展和定制。例如,可以编写自定义的Shell函数和别名,创建shell脚本库,以及配置和调整shell的特性和行为。

在Shell中,内部命令(Built-in Commands)和外部命令(External Commands)是用于执行不同操作的两种类型的命令。

内部命令是由Shell程序本身提供的命令。这些命令直接内置在Shell的可执行文件中,作为Shell的一部分而存在,因此无需创建新的进程进行执行。内部命令执行速度较快,因为它们与Shell运行在同一个进程中,并且直接通过Shell的函数或指令进行处理。一些常见的内部命令包括cd(切换目录),echo(输出文本),alias(创建命令别名),export(设置环境变量)等。通过使用Shell自带的内部命令,可以执行一些基本的系统操作和Shell管理任务。

外部命令是由独立的可执行文件或程序提供的命令。这些命令通常位于系统的指定目录中(例如/bin、/usr/bin等),在执行时需要通过创建新的进程并加载相应的可执行文件来运行。外部命令执行速度可能较慢,因为需要频繁进行进程创建和文件加载。一些例子包括ls(列出文件和目录),grep(查找匹配的文本),rm(删除文件)等。外部命令提供了非常丰富的功能,可以满足更复杂的操作需求。

通过使用明确的命令名称,可以确定给定命令是内部命令还是外部命令。在命令行中,可以使用type命令或which命令来检查命令的类型。例如,type cd 将显示cd is a shell builtin,表示cd是内部命令。type ls将显示ls is /bin/ls,表示ls是外部命令。

1.3命令的执行过程

在Linux中,当你执行一个命令时,系统会按照以下的执行过程来解析和执行该命令:

  1. 命令解析:Shell(如Bash)会首先解析你输入的命令。它会分析命令中的关键字、参数和操作符,确定要执行的命令及其相关的参数。

  2. 命令搜索:一旦解析了命令,接下来系统会开始搜索要执行的命令。它会按照预定义的顺序,在一系列特定的目录(比如/bin/usr/bin等)中查找命令的可执行文件。这个搜索路径通常包括系统环境变量PATH中定义的目录。

  3. 命令执行:一旦找到了命令的可执行文件,系统会创建一个新的进程,并加载该可执行文件到该进程的内存中。然后,将命令行中的参数传递给该进程,并开始执行该命令。这个新的进程在独立的执行环境中运行,并根据命令的功能进行相应的操作。

  4. 查找命令的快捷方式(哈希表):为了提高效率,Shell会将最近执行过的命令和可执行文件的路径保存在一个哈希表(Hash Table)中。这个哈希表可以加速之后对相同命令的查找。当你再次执行之前执行过的命令时,Shell会直接从哈希表中获取该命令的路径,而无需重新进行完整的搜索。

总结来说,Linux命令的执行过程涉及命令解析、命令搜索、命令执行和哈希表查询(如果适用)。这个过程让系统能够找到并执行你输入的命令,从而实现所需的功能和操作。

1.4基本命令的介绍

1.cd 目标位置 change directory

命令效果
cd cd ~若不指定目标位置,切换到当前用户的宿主目录(家目录)
cd -到前一次目录
一个点号“.”开头(自己)表示以当前的工作目录作为起点(已点开头的是)
两个点号“..”开头(上一级)表示以当前目录的上一级目录(父目录)作为起点
“~用户名”形式开头表示以指定用户的宿主目录(家目录)作为起点
"."开头文件表示隐藏文件
~ky18 (有个用户叫ky18 家目录为起点)表示以指定用户的宿主目录作为起点

2.pwd 显示当前目录

3.ls         列处此目录文件

-a   显示隐藏文件   
-l   长格式显示, 显示详细信息
-d   只显示当前目录信息,不显示目录下的文件
-h   人性化显示
-R   递归
-t   按时间排序
-r   倒序
-S   按大小
-i   显示inode号

4.du    统计文件占磁盘大小

du与ll都能看文件大小,ll是看文件实际大小,而du是看文件占用磁盘多少,以4kB为一个量子,4kB是最小单位

-a     列举每一个文件的大小
-s     只显示总大小
-d     指定显示目录的层级   -d  2 只显示到第二层目录

cp    复制


-r    递归 复制文件夹一定要加  -r 选项
-p    保留属性
-f    强制复制不提示
-a    更强大的保留属性             比较万金油
-i    提示有同名
-v    显示过程 

ln  链接


ln -s    软链接    源文件路径      目的文件

ln 硬链接    源文件路径    目的文件

软硬链接的区别 :

硬连接创建的链接与原始文件是共享数据块的完全相同文件副本,而软连接创建的链接是指向原始文件或目录的路径。硬连接只能针对文件,软连接可以指向文件或目录。硬连接与原始文件共享相同的inode号,软连接与原始文件具有不同的inode号。删除硬连接不会影响其他硬连接或原始文件,但删除软连接或原始文件将会断开软连接的有效性。 

 mv   改名和  移动


源文件  路径 不变 是改名
源文件  路径 改变 是移动

find     (重点难点)


find   查找范围    查找选项   查找条件  处理动作  

find   查找范围    查找选项   查找条件  处理动作  

查找选项

-name    名字
-type    文件类型
-size    文件大小
-mtime   文件时间 
-maxdepth 2   最大层级
-mindepth 2   最小层级

处理动作

-delete  删除
-ls      显示详细信息
-exec    连接符
-ok      连接符

命令格式

find   /   -name  "*.txt"   -exec  cp或mv或rm {}  /mnt   \;

-exec是连接符

-name是查找选项

/查找范围,这里是根目录

"*.txt"这里是指 尾巴是.txt的文件

cp   mv   rm  等是指处理命令

 /mnt    处理到的目的目录

\;是终止符

  {}指代被找出的文件 

mkdir    建立目录文件夹

-p       递归建立  
-v       显示过程 

touch    创建空文件


如果文件名不存在  建立新的空文件
如果名存在        刷新文件时间

rm  -rf   递归删除 


-r   递归
-f   强制

注意:删除软链接时不要加/否则会删除软连接源文件!!!!!

1.5通配符

通配符主要是用于寻找文件名

符号效果
匹配一个字符 f?.txt
*匹配所有非隐藏的字符无论多长多短,但不匹配 "." 开头的文件,即隐藏文件
{1..10}1到10
{a..z}a b c ...z
{A..Z}A B C .....Z
[123]([此处括号里值代表一个字符])取其中之一有就显示没有也无所谓
[a-z]单个小写字母范围需要注意
[0-9]单个数字匹配数字范围(0123456789)
\转义符,表示原来的意思
[[:lower:]]小写字母表示 a-z
[[:upper:]]大写字母表示 A-Z
[^zhou]匹配列表中的所有字符以外的字符
[[:digit:]]任意数字,相当于0-9

     

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值