当前位置: 首页 > news >正文

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&#xff0c;pwd&#xff0c;mkdir&#xff0c;cd&#xff0c;touch&#xff0c;rm等。 指令的格式 在Linux中&#xff0c;指令的语法通常遵循以下格式&#xff1a; command [options] [arguments] command 是要执行…...

C语言中的回文素数

任意的整数&#xff0c;当从左向右读与从右向左读是相同的&#xff0c;且为素数时&#xff0c;称为回文素数。求 1000 以内的所有回文素数。 算法思想 实例的重点是判断一个数是否是回文素数。要输出 1000 以内的所有回文素数&#xff0c;首先应判断这个数是否是素数&#xf…...

前端生成pdf之html2canvas+jsPDF,以及解决图片不显示bug

前端如何生成pdf 开发背景&#xff1a; 需要给页面中相应的内容生成pdf&#xff0c;查找文档后发现要用到两个插件。html2canvas 以及 jsPDF html2canvas 给dom结构转化为canvas&#xff0c;然后生成各种类型图片jsPDF 把canvas 生成的图片url 转化为pdf // 插入图片 pdf.addI…...

PHP常用符号和函数

// 单行注解 /* */ 多行注解 引号的使用 ’ ’ 单引号,没有任何意义,不经任何处理直接拿过来; ” “双引号,php动态处理然后输出,一般用于变量. 变量形态: 一种是True 即 真的; 另一种是False 即假的 常见变量形态: string 字串(数字\汉字\等等) integer 整数(1、2、…...

C#,入门教程(12)——数组及数组使用的基础知识

上一篇&#xff1a; C#&#xff0c;入门教程(11)——枚举&#xff08;Enum&#xff09;的基础知识和高级应用https://blog.csdn.net/beijinghorn/article/details/123917587 数组是一种数据集合&#xff0c;是一组完全相同的、按顺序存放的数据。 需要记住数组的几个特征&…...

C语言中的副作用、序列点以及复杂表达式的求值顺序

C语言中复杂表达式的求值顺序 num (5 2) * (9 * 6);如果我问你&#xff1a;上面的c程序在执行的时候到底是先算&#xff08;5 2&#xff09;还是&#xff08;9 * 6&#xff09;&#xff1f;你会怎么回答&#xff1f; 无非就两种&#xff1a;先算&#xff08;5 2&#xff…...

C++学习笔记——队列模拟

目录 一、模拟队列 二、模拟队列的知识点 三、队列 3.1入队操作 3.2出队操作 3.3访问队首元素 3.4访问队尾元素 3.5判断队列是否为空 3.6获取队列的大小 四、实现队列的基本功能 一、模拟队列 当涉及到数据存储和处理时&#xff0c;队列是一种常见的数据结构&#x…...

jvm垃圾回收相关的算法

什么是垃圾 JVM主要通过以下几种方式来判断对象是否需要回收&#xff1a; 引用计数法&#xff1a;JVM通过引用计数器来判断对象的引用数量&#xff0c;当引用数量为0时&#xff0c;表示对象可以被回收。 可达性分析算法&#xff1a;JVM通过根对象&#xff08;如栈中的引用、静…...

每日coding

2085、统计出现过一次的公共字符串 给你两个字符串数组 words1 和 words2 &#xff0c;请你返回在两个字符串数组中 都恰好出现一次 的字符串的数目。 示例 1&#xff1a; 输入&#xff1a;words1 ["leetcode","is","amazing","as"…...

软件工程_复习

软件工程 软件危机(1968 60年代) 产生软件危机的原因: 一方面与软件本身的特点有关,另一方面也和软件开发和维护的方法不正确有关。 与软件本身特点有关: 1.软件不同于硬件,软件是计算机系统中的逻辑部件,缺乏“可见性”,管理和控制软件开发过程相当困难 2.软件在运行过…...

07GoF之三种工厂模式

GoF&#xff08;Gang of Four&#xff09;:四人组,《Design Patterns: Elements of Reusable Object-Oriented Software》&#xff08;《设计模式》)的作者,设计了23种设计模式.但时代发展,还有其它的设计模式&#xff0c;比如&#xff1a;JavaEE的设计模式&#xff08;DAO模式…...

JAVA面试部分——后端-线程前篇

3.1 线程和进程 在计算机科学中&#xff0c;进程和线程是操作系统管理资源的两种不同方式。 进程&#xff08;Process&#xff09;&#xff1a;是程序在计算机上的一次执行活动。每个进程都有自己的内存空间&#xff0c;包括代码、数据和系统资源。一个进程可以包含多个线程。…...

【小沐学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程序中&#xff0c;表单是用户交互最常见的方式之一。用…...

@ControllerAdvice 使用场景

ControllerAdvice 是Spring 框架中的注解&#xff0c;多用在Spring MVC应用程序中。 使用场景1&#xff1a;处理异常 # 示例1 import org.apache.ibatis.javassist.NotFoundException; import org.springframework.http.HttpStatus; import org.springframework.http.Respons…...

二极管选型怎么选?常用参数要熟练~

同学们大家好&#xff0c;今天我们继续学习杨欣的《电子设计从零开始》&#xff0c;这本书从基本原理出发&#xff0c;知识点遍及无线电通讯、仪器设计、三极管电路、集成电路、传感器、数字电路基础、单片机及应用实例&#xff0c;可以说是全面系统地介绍了电子设计所需的知识…...

【小白专用】C#关于角色权限系统

&#xff08;C#&#xff09;用户、角色、权限 https://www.cnblogs.com/huangwen/articles/638050.html 权限管理系统——数据库的设计&#xff08;一&#xff09; https://www.cnblogs.com/cmsdn/p/3371576.html 权限管理系统——菜单模块的实现&#xff08;二&#xff09; …...

代码随想录算法训练营

一刷打卡记录&#xff1a; 日期打卡2023/10/25 day01二分查找有点转不过弯&#xff0c;快慢指针能理解&#xff0c;自己写也可能写不出来&#xff0c;但是能记住了&#xff0c;能看懂&#xff0c;还有其他解法待补充看完&#xff0c;花了挺长时间的2023/10/26 day02还好&#…...

统计学-R语言-3

文章目录 前言给直方图增加正态曲线的不恰当之处直方图与条形图的区别核密度图时间序列图洛伦茨曲线计算绘制洛伦茨曲线所需的各百分比数值绘制洛伦茨曲线 练习 前言 本篇文章是介绍对数据的部分图形可视化的图型展现。 给直方图增加正态曲线的不恰当之处 需要注意的是&#…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时&#xff0c;与数据库的交互无疑是核心环节。虽然传统的数据库操作方式&#xff08;如直接编写SQL语句与psycopg2交互&#xff09;赋予了我们精细的控制权&#xff0c;但在面对日益复杂的业务逻辑和快速迭代的需求时&#xff0c;这种方式的开发效率和可…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章&#xff0c;二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑&#xff1a; &#x1f504; 一、起源与初创期&#xff1a;Swagger的诞生&#xff08;2010-2014&#xff09; 核心…...

DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”

目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?

在工业自动化持续演进的今天&#xff0c;通信网络的角色正变得愈发关键。 2025年6月6日&#xff0c;为期三天的华南国际工业博览会在深圳国际会展中心&#xff08;宝安&#xff09;圆满落幕。作为国内工业通信领域的技术型企业&#xff0c;光路科技&#xff08;Fiberroad&…...

HubSpot推出与ChatGPT的深度集成引发兴奋与担忧

上周三&#xff0c;HubSpot宣布已构建与ChatGPT的深度集成&#xff0c;这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋&#xff0c;但同时也存在一些关于数据安全的担忧。 许多网络声音声称&#xff0c;这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...