Linux指令(一)
今天来学习Linux的一些基本的指令。
今天要学习的指令有ls,pwd,mkdir,cd,touch,rm等。
指令的格式
在Linux中,指令的语法通常遵循以下格式:
command [options] [arguments]
command是要执行的命令的名称或可执行文件的路径。options是可选的命令选项,用于修改命令的行为。选项通常以短横线(-)或双短横线(--)开头。例如,-a或--all。arguments是命令的参数,用于提供操作命令所需的输入。参数根据命令的不同而有所不同。参数可以是文件名、目录名、文本字符串等。有些命令可以接受多个参数。
以下是一个示例,展示了一个常见的指令语法:
ls -l /path/to/directory
在这个示例中,ls 是命令名称,-l 是选项,用于显示详细的文件列表,/path/to/directory 是参数,表示要列出文件的目录路径。
另外,还有一些特殊的语法元素在Linux中经常使用:
- 通配符(Wildcard):用于匹配文件名或路径的模式。常见的通配符有
*(匹配零个或多个字符)和?(匹配一个字符)。 - 管道(Pipeline):用于将一个命令的输出作为另一个命令的输入进行处理,通过
|符号表示。 - 重定向(Redirection):用于将命令的输入或输出重定向到文件或设备。例如,
>用于将输出重定向到文件,<用于从文件中读取输入。
那么现在开始介绍第一条指令ls吧。
ls指令
用于列出当前目录中的文件和子目录。它的作用是显示指定目录下的文件列表。
那么来看一下ls指令的选项。
-l:显示更多的文件属性。 ls -l 也可以简写成ll
说到了文件属性,突然想问一个问题:
在文件夹下建立一个新的.txt 文件,文件大小为空,是否会占用空间?
是!因为文件有它的各种属性,这各种属性都属于数据,数据都需要存储,就会占用空间。
文件 = 文件的内容 + 文件的属性。
文件的操作 = 对文件内容的操作 + 对文件属性的操作。
-a:显示所有的文件,包括隐藏文件。
在Linux中,以’.’开头的文件,称之为隐藏文件。
在Linux任何一个目录底下都有两个隐藏文件 ‘.’ ‘..’。
其中两个点表示当前路径的上一级路径。
一个点表示当前路径。存在的意义:帮助用户定位当前目录下的一个文件。
-d:将目录象文件一样显示,而不是显示其下的文件。eg:ls -d 指定目录。
-F:在每个文件名后附上一个字符以说明该文件的类型。’*’表示可执行的普通文件,’/’表示目录,’@’表示符号链接,’|’表示FIFOs;’=‘表示套接字(sockets)。
cd指令
cd指令用于改变当前工作目录。通过输入"cd"命令,然后跟上目标目录的路径,可以切换到该目录下工作。例如,输入"cd /home/user/documents"可以切换到用户文档目录。
看到每一个'/',就要说一说Linux的路径分隔符了。
在Linux中的路径分隔符为’/’。
在Windows中的路径分隔符为’\’。
在Linux中一直cd ..回退,当只剩下一个’/’时,把’/’称为根目录。
Linux的整个目录结构:一个多叉树的结构。所以我们对文件或者目录的增删查改,本质上都是对这课多叉树的增删查改。
Linux用路径去定位一个文件,是因为任何一个结点都只有一个父节点。
1.绝对路径往往比较长,但是不变,一般在一些固定场景,配置文件中使用。
2.一般命令行输入比较常用相对路径。
cd .. :返回上一级目录
cd ~ : 进入用户的家目录
cd - :返回最近访问的目录
看到了用户的概念,也需要提一提Linux 的两种用户。
Linux有两种用户:超级用户root和普通用户。
root用户只能有一个,普通用户可以有很多个
在centos当中,普通用户的用户名存放在/home当中
touch指令
在Linux中,touch指令用于创建空白文件或者更新已有文件的时间戳。如果指定的文件已存在,touch指令会更新该文件的访问时间和修改时间为当前时间,如果文件不存在,则会创建一个空白文件。touch指令的语法为"touch [选项] 文件名",其中选项可以用来指定时间戳
-t:用于指定时间
-a:用于更新访问时间,
-m:用于更新修改时间。
mkdir指令
mkdir[选项] dirname
在当前目录下创建一个名为“dirname”的目录。
但是如果你要创建一串路径的目录。
就需要使用到mkdir的-p选项。
eg:mkdir -p dir1/dir2/dir3
rmdir指令
rmdir---只可以删除空的目录
rm指令
在Linux中,rm指令用于删除文件或目录。
-f:不会弹出提示,会直接删除。
-r:才可以递归式删除。
-i:会询问是否删除。
要删除目录及其包含的所有文件和子目录,可以使用"rm -r 目录名"的命令。
一般来说,Linux只需要rm就足够了。
删除一定要谨慎,因为Linux恢复文件很难。
正在被使用的文件,操作系统一般删除不了。
补充知识
*:通配符,ls * 操作的时候可以发现,它可以匹配当前目录下的所有文件。
eg:ls *.c表示匹配当前目录下的所有以.c结尾的文件。
ls * test.*表示匹配当前目录下的所有以test开头的任意文件类型的文件。
相关文章:
Linux指令(一)
今天来学习Linux的一些基本的指令。 今天要学习的指令有ls,pwd,mkdir,cd,touch,rm等。 指令的格式 在Linux中,指令的语法通常遵循以下格式: command [options] [arguments] command 是要执行…...
C语言中的回文素数
任意的整数,当从左向右读与从右向左读是相同的,且为素数时,称为回文素数。求 1000 以内的所有回文素数。 算法思想 实例的重点是判断一个数是否是回文素数。要输出 1000 以内的所有回文素数,首先应判断这个数是否是素数…...
前端生成pdf之html2canvas+jsPDF,以及解决图片不显示bug
前端如何生成pdf 开发背景: 需要给页面中相应的内容生成pdf,查找文档后发现要用到两个插件。html2canvas 以及 jsPDF html2canvas 给dom结构转化为canvas,然后生成各种类型图片jsPDF 把canvas 生成的图片url 转化为pdf // 插入图片 pdf.addI…...
PHP常用符号和函数
// 单行注解 /* */ 多行注解 引号的使用 ’ ’ 单引号,没有任何意义,不经任何处理直接拿过来; ” “双引号,php动态处理然后输出,一般用于变量. 变量形态: 一种是True 即 真的; 另一种是False 即假的 常见变量形态: string 字串(数字\汉字\等等) integer 整数(1、2、…...
C#,入门教程(12)——数组及数组使用的基础知识
上一篇: C#,入门教程(11)——枚举(Enum)的基础知识和高级应用https://blog.csdn.net/beijinghorn/article/details/123917587 数组是一种数据集合,是一组完全相同的、按顺序存放的数据。 需要记住数组的几个特征&…...
C语言中的副作用、序列点以及复杂表达式的求值顺序
C语言中复杂表达式的求值顺序 num (5 2) * (9 * 6);如果我问你:上面的c程序在执行的时候到底是先算(5 2)还是(9 * 6)?你会怎么回答? 无非就两种:先算(5 2ÿ…...
C++学习笔记——队列模拟
目录 一、模拟队列 二、模拟队列的知识点 三、队列 3.1入队操作 3.2出队操作 3.3访问队首元素 3.4访问队尾元素 3.5判断队列是否为空 3.6获取队列的大小 四、实现队列的基本功能 一、模拟队列 当涉及到数据存储和处理时,队列是一种常见的数据结构&#x…...
jvm垃圾回收相关的算法
什么是垃圾 JVM主要通过以下几种方式来判断对象是否需要回收: 引用计数法:JVM通过引用计数器来判断对象的引用数量,当引用数量为0时,表示对象可以被回收。 可达性分析算法:JVM通过根对象(如栈中的引用、静…...
每日coding
2085、统计出现过一次的公共字符串 给你两个字符串数组 words1 和 words2 ,请你返回在两个字符串数组中 都恰好出现一次 的字符串的数目。 示例 1: 输入:words1 ["leetcode","is","amazing","as"…...
软件工程_复习
软件工程 软件危机(1968 60年代) 产生软件危机的原因: 一方面与软件本身的特点有关,另一方面也和软件开发和维护的方法不正确有关。 与软件本身特点有关: 1.软件不同于硬件,软件是计算机系统中的逻辑部件,缺乏“可见性”,管理和控制软件开发过程相当困难 2.软件在运行过…...
07GoF之三种工厂模式
GoF(Gang of Four):四人组,《Design Patterns: Elements of Reusable Object-Oriented Software》(《设计模式》)的作者,设计了23种设计模式.但时代发展,还有其它的设计模式,比如:JavaEE的设计模式(DAO模式…...
JAVA面试部分——后端-线程前篇
3.1 线程和进程 在计算机科学中,进程和线程是操作系统管理资源的两种不同方式。 进程(Process):是程序在计算机上的一次执行活动。每个进程都有自己的内存空间,包括代码、数据和系统资源。一个进程可以包含多个线程。…...
【小沐学C++】C++ 实现鼠标键盘钩子HOOK
文章目录 1、简介2、相关函数2.1 SetWindowsHookEx2.2 UnhookWindowsHookEx2.3 CallNextHookEx 3、相关结构体3.1 KBDLLHOOKSTRUCT3.2 MSLLHOOKSTRUCT 4、挂钩过程5、代码测试5.1 代码1 结语 1、简介 https://learn.microsoft.com/zh-cn/windows/win32/winmsg/about-hooks 挂…...
【pycharm】常见问题与解决
记录一些Pycharm中经常遇到的问题 1. “Open file or Project” always in loading state (hang) a) 老版本 (2021年左右) since build 211.6693.14, it is possible to use a native file chooser on Windows. The feature is experimental; to enable it, add the followi…...
flask web学习之表单(一)
文章目录 一、使用Flask-WTF处理表单1.1 安装Flask-WTF库1.2 定义WTForms表单类常用的WTForm字段实例化字段类常用参数常用的WTForm验证器 1.3 输出HTML代码使用render_kw属性在调用字段时传入 1.4 在模板中渲染表单 在web程序中,表单是用户交互最常见的方式之一。用…...
@ControllerAdvice 使用场景
ControllerAdvice 是Spring 框架中的注解,多用在Spring MVC应用程序中。 使用场景1:处理异常 # 示例1 import org.apache.ibatis.javassist.NotFoundException; import org.springframework.http.HttpStatus; import org.springframework.http.Respons…...
二极管选型怎么选?常用参数要熟练~
同学们大家好,今天我们继续学习杨欣的《电子设计从零开始》,这本书从基本原理出发,知识点遍及无线电通讯、仪器设计、三极管电路、集成电路、传感器、数字电路基础、单片机及应用实例,可以说是全面系统地介绍了电子设计所需的知识…...
【小白专用】C#关于角色权限系统
(C#)用户、角色、权限 https://www.cnblogs.com/huangwen/articles/638050.html 权限管理系统——数据库的设计(一) https://www.cnblogs.com/cmsdn/p/3371576.html 权限管理系统——菜单模块的实现(二) …...
代码随想录算法训练营
一刷打卡记录: 日期打卡2023/10/25 day01二分查找有点转不过弯,快慢指针能理解,自己写也可能写不出来,但是能记住了,能看懂,还有其他解法待补充看完,花了挺长时间的2023/10/26 day02还好&#…...
统计学-R语言-3
文章目录 前言给直方图增加正态曲线的不恰当之处直方图与条形图的区别核密度图时间序列图洛伦茨曲线计算绘制洛伦茨曲线所需的各百分比数值绘制洛伦茨曲线 练习 前言 本篇文章是介绍对数据的部分图形可视化的图型展现。 给直方图增加正态曲线的不恰当之处 需要注意的是&#…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
安卓基础(Java 和 Gradle 版本)
1. 设置项目的 JDK 版本 方法1:通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分,设置 Gradle JDK 方法2:通过 Settings File → Settings... (或 CtrlAltS)…...
五子棋测试用例
一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏,有着深厚的文化底蕴。通过将五子棋制作成网页游戏,可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家,都可以通过网页五子棋感受到东方棋类…...
【FTP】ftp文件传输会丢包吗?批量几百个文件传输,有一些文件没有传输完整,如何解决?
FTP(File Transfer Protocol)本身是一个基于 TCP 的协议,理论上不会丢包。但 FTP 文件传输过程中仍可能出现文件不完整、丢失或损坏的情况,主要原因包括: ✅ 一、FTP传输可能“丢包”或文件不完整的原因 原因描述网络…...
论文阅读:Matting by Generation
今天介绍一篇关于 matting 抠图的文章,抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法,已经有很多的工作和这个任务相关。这两年 diffusion 模型很火,大家又开始用 diffusion 模型做各种 CV 任务了&am…...
绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化
iOS 应用的发布流程一直是开发链路中最“苹果味”的环节:强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说,这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发(例如 Flutter、React Na…...
