Shell命令操作Linux文件系统

Shell命令操作Linux文件系统

  • 文件夹介绍
  • 文件夹常规命令
  • 文件夹权限控制⭐
    • 文件类型和权限
    • 修改文件权限
  • 移动、复制、删除文件夹

文件夹介绍

  Linux文件系统是计算机操作系统中的一个关键组成部分,它用于管理和组织计算机上的数据和信息。先到根目录,然后打印当前目录下文件:

cd / ; ls

在这里插入图片描述
  有一些比较常用的文件夹介绍如下:

  /bin——包含常见Linux 用户命令,比如 ls、sort、date和l chmod。
  /home——包含分配给每个带有登录账号的普通用户的目录(root用户是一个例外,使用/root作为主目录)。
  /lib——包含/bin和/sbin目录中的应用程序启动系统所需的共享库。
  /mnt——在该目录被标准的/media目录取代之前,/mnt目录是许多设备常见的挂载点。一些可启动的Linux系统仍使用该目录来挂载硬盘分区和远程文件系统。此外很多人也在使用该目录来临时挂载那些不需要永久挂载的本地或者远程文件系统。
  /root—表示root用户的主目录。出于安全原因,该主目录没有位于/home目录之下。/sbin——包含管理命令和守护进程。
  /tmp——包含应用程序使用的临时文件。
  /usr——包含用户文档、游戏、图形文件(X11)、库(lib)以及其他不需要在启动过程中使用的命令和文件。/usr目录中的文件在安装完毕后就不可更改(从理论上讲,/usr可以以只读的方式挂载)。

文件夹常规命令

  1. cd (Change Directory): cd命令用于改变当前工作目录。通过提供目标目录的路径作为参数,可以切换到其他目录。
在这里插入图片描述

  2. pwd (Print Working Directory): pwd命令用于显示当前工作目录的完整路径。执行pwd后,会显示当前所在的目录路径。
在这里插入图片描述

  3. ls (List): ls命令用于列出当前目录中的文件和子目录。默认情况下,它会列出当前目录的内容。可以使用不同的选项来控制列出的详细信息和排序方式。
在这里插入图片描述

  4. mkdir (Make Directory): mkdir命令用于创建新的目录。可以指定要创建的目录的名称作为参数。

  5. chmod (Change Mode): chmod命令用于更改文件或目录的权限。它允许控制哪些用户可以执行文件、读取文件或写入文件。chmod命令通常与权限模式(如755或644)一起使用,以确定权限设置。

虽然我们平时一个人的Linux平台用不到权限控制,但是一旦涉及多人场景、公司场景,权限控制就很必要了,chmod命令要认真学习。具体见下一节

文件夹权限控制⭐

  首先在任意目录下输入:

ll

在这里插入图片描述
  输出如图,一共有7列:

  · 文件类型和权限列(File Type and Permissions): 显示文件的类型和访问权限。通常包括像 -rw-r--r--drwxr-xr-x 这样的字符,其中第一个字符表示文件类型,后面的九个字符分为三组,每组三个字符代表文件的访问权限。例如,-rw-r--r-- 表示一个普通文件,它的权限设置是允许所有者读写,但只允许其他用户只读。

  · 硬链接数列(Hard Links): 这一列表示与该文件或目录关联的硬链接数量。硬链接是指多个文件名指向相同的数据块的情况。通常,普通文件的硬链接数为1,目录的硬链接数至少为2(因为每个目录至少有两个链接:一个指向自身,一个指向上级目录)。

  · 所有者列(Owner): 显示文件或目录的所有者的用户名。

  · 所属组列(Group): 显示文件或目录所属的用户组的名称。

  · 文件大小列(File Size): 显示文件或目录的大小,通常以字节为单位。对于目录,大小通常是目录中所有文件和子目录的总和。

  · 修改时间或创建时间列(Modification Time or Creation Time): 显示文件或目录的最后修改时间。

  · 文件名或目录名列(File Name or Directory Name): 这一列显示了文件或目录的名称。

文件类型和权限

  文件类型:

  1. 普通文件(Regular File): 普通文件包含文本、二进制数据或程序代码等信息。在文件类型表示中,以 - 开头。例如,-rw-r--r-- 表示一个普通文件。

  2. 目录(Directory): 目录是用于组织和存储文件和其他目录的特殊文件类型。在文件类型表示中,以 d 开头。例如,drwxr-xr-x 表示一个目录。

  3. 符号链接(Symbolic Link): 符号链接是指向其他文件或目录的引用。它们是一种特殊类型的文件,用于创建文件和目录之间的链接。在文件类型表示中,以 l 开头。例如,lrwxrwxrwx 表示一个符号链接。

  4. 设备文件(Device File): 设备文件用于与计算机硬件设备通信。有字符设备文件和块设备文件两种类型。字符设备文件用于处理字符流数据,块设备文件用于处理数据块。在文件类型表示中,字符设备文件以 c 开头,块设备文件 b 开头。

  5. 管道文件(Named Pipe): 管道文件用于进程间通信,允许一个进程将数据传输给另一个进程。在文件类型表示中,以 p 开头。

  6. 套接字文件(Socket): 套接字文件用于网络通信,允许进程通过网络连接进行通信。在文件类型表示中,以 s 开头。

  权限:

  文件和目录的权限决定了哪些用户可以执行以下操作:

  • 读取(Read): 允许用户查看文件的内容或目录的列表。
  • 写入(Write): 允许用户修改文件的内容或目录的结构。
  • 执行(Execute): 对于文件,允许用户执行其中包含的程序;对于目录,允许用户访问其中的内容。

  权限表示为一组三个字符,分别表示文件所有者的权限、所属用户组的权限和其他用户的权限。每个权限可以用以下字符表示:

  • r(Read): 表示读取权限。
  • w(Write): 表示写入权限。
  • x(Execute): 表示执行权限。

  例如,-rw-r--r-- 表示文件的权限设置为允许所有者读写,但只允许其他用户只读。

  使用 chmod 命令可以更改文件和目录的权限设置,以控制对它们的访问和操作。权限设置是Linux和Unix系统中的安全重要组成部分,它确保只有经过授权的用户能够访问和修改文件和目录。

修改文件权限

  要修改文件或目录的权限,需要使用 chmod 命令。 chmod 命令允许添加或删除文件的读取(read)、写入(write)和执行(execute)权限,以及设置文件的所有者、所属用户组和其他用户的权限。

  1. 基本 chmod 语法:

chmod [选项] 权限设置 文件或目录

  2. 权限设置格式:

  • 使用数字表示权限:例如,chmod 755 myfile.txt 表示将文件 “myfile.txt” 的权限设置为所有者可读写执行,所属用户组和其他用户只有读和执行权限。
  • 使用符号表示权限:例如,chmod u+r myfile.txt 表示为文件 “myfile.txt” 添加所有者的读取权限。

设置权限有2种方式。第一种,r=4、w=2、x=1,那么7指的就是rwx,4指的是r–,3指的是-wx。第二种,通过u、g、o、a四种权限标识符结合+、-、=三种权限操作符,进行增加、删除、修改权限。

  3. 常见选项:

  • -R:递归地修改目录及其内容的权限。
  • -v:显示每个文件权限修改的详细信息。

  4. 权限标识符:

  • u:文件所有者。
  • g:所属用户组。
  • o:其他用户。
  • a:所有用户(等同于 ugo)。

  5. 权限操作符:

  • +:添加权限。
  • -:删除权限。
  • =:设置权限。

  下面举个例子展示 chmod 命令的用法,首先go.sh的权限是drwxr-xr-x
在这里插入图片描述

  • 删除其他用户的执行权限:
chmod o-x go.sh

在这里插入图片描述

  • 添加写权限给用户组:
chmod g+w go.sh

在这里插入图片描述

  • 使用数字模式将文件 “go.sh” 设置为可执行权限:
chmod 755 go.sh

在这里插入图片描述

移动、复制、删除文件夹

  移动文件夹(重命名文件夹): 使用 mv 命令来移动文件夹或重命名。如果提供新的目标路径,会移动文件夹到新位置。如果把新的名称作为目标路径,会重命名文件夹。例如,要把文件夹 “myfolder” 移动到新位置或重命名为 “newfolder”,可以执行命令:

mv myfolder newfolder

  复制文件夹: 使用 cp 命令复制文件夹及其内容。要复制文件夹 “myfolder” 到新位置 “backup”,可以执行命令:

cp -r myfolder backup

  -r 选项表示递归地复制文件夹及其内容。如果想保留原始文件夹不变并复制其内容到新位置,可以省略 -r 选项。

  删除文件夹: 使用 rm 命令删除文件夹及其内容。要删除文件夹 “myfolder”,可以执行命令:

rm -r myfolder

  -r 选项表示递归删除文件夹及其内容。要小心使用 rm 命令,因为它会永久删除文件夹及其内容。确保在执行删除操作之前确认我们的删除操作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/123606.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

并发容器11

一 JDK 提供的并发容器总结 JDK 提供的这些容器大部分在 java.util.concurrent 包中。 ConcurrentHashMap: 线程安全的 HashMap CopyOnWriteArrayList: 线程安全的 List,在读多写少的场合性能非常好,远远好于 Vector. ConcurrentLinkedQueue: 高效的并…

音频应用编程

目录 ALSA 概述alsa-lib 简介sound 设备节点alsa-lib 移植编写一个简单地alsa-lib 应用程序一些基本概念打开PCM 设备设置硬件参数读/写数据示例代码之PCM 播放示例代码值PCM 录音 使用异步方式PCM 播放示例-异步方式PCM 录音示例-异步方式 使用poll()函数使用poll I/O 多路复用…

W5500-EVB-PICO主动PING主机IP检测连通性(十)

前言 上一章我们用W5500_EVB_PICO 开发板做UDP组播数据回环测试,那么本章我们进行W5500_EVB_PICO Ping的测试。 什么是PING? Ping (Packet Internet Groper)是一种因特网包探索器,用于测试网络连接量的程序 。Ping是…

phpstudy本地快速搭建网站,并外网访问【无公网IP】

文章目录 使用工具1. 本地搭建web网站1.1 下载phpstudy后解压并安装1.2 打开默认站点,测试1.3 下载静态演示站点1.4 打开站点根目录1.5 复制演示站点到站网根目录1.6 在浏览器中,查看演示效果。 2. 将本地web网站发布到公网2.1 安装cpolar内网穿透2.2 映…

聊聊Kafka的生产者消费者确认机制

一、生产者确认机制 消息从生产者客户端发送至broker服务端topic,需要ack确认。acks与min.insync.replicas是两个配置参数.其中acks是producer的配置参数,min.insync.replicas是Broker端的配置参数,这两个参数对于生产者不丢失数据起到了很大…

C# | DBSCAN聚类算法实现 —— 对直角坐标系中临近点的点进行聚类

C# | DBSCAN聚类算法实现 聚类算法是一种常见的数据分析技术,用于将相似的数据对象归类到同一组或簇中。其中,DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,能够有效…

在R中安装TensorFlow、TensorFlow_Probability、numpy(R与Python系列第二篇)

目录 前言: 1-安装tensorflow库 Step1: 下载R包tensorflow Step2:安装TensorFlow库 Step3:导入R中 2-安装tensorflow_probability库 Step1:下载R包:tfprobability Step2:安装TensorFlow Probability …

火热的低代码,是时候系统的来学一学了!

一、前言 低代码诞生至今,大家各抒己见,也不乏有针锋相对的意思。古时的治国之术有百家争鸣,如今的低代码也有“诸子论道”,这本质上是一件有助于推动低代码发展的事情。 业内的朋友们一定知道,关于低代码的热点不止发…

微信小程序

小程序的基本组成结构 微信小程序的目录结构通常包括以下主要部分: app.json: 整个小程序的全局配置文件,用于配置小程序的一些基本信息,如页面路径、窗口样式、tabBar、网络超时等。 pages 文件夹: 用于存放小程序的…

无涯教程-JavaScript - DEC2HEX函数

描述 DEC2HEX函数将十进制数转换为十六进制。 语法 DEC2HEX (number, [places])争论 Argument描述Required/Optionalnumber 要转换的十进制整数。 如果number为负数,则将忽略位数,并且DEC2HEX返回10个字符(40位)的十六进制数字,其中最高有效位是符号位。其余的39位是幅度位…

基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域的数据分析能力与项目科研水平教程

详情点击链接:基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域的数据分析能力与项目科研水平教程 一,空间数据获取与制图 1.1 软件安装与应用 1.2 空间数据 1.3海量空间数据下载 1.4 ArcGIS软…

Java- 虚拟机学习总结

Java文件编译,加载过程 写好java文件,jdk会通过javac编译class文件,classLaoder通过classpath将字节码文件加载进入jre jvm数据区 包含栈,堆,程序计数器,方法区,本地方法栈 JAVA里的常量&…

【GitHub 个人主页】适应于初学者的自定义个人主页设置

▚ 00 自定义GitHub主页的教程 🍁 【保姆级教程】手把手教你用github制作学术个人主页(学者必备) ▚ 01 优秀案例 1.1 添加Stats 🎃 网址为:Stats & Most Used Langs

【PHP】手术麻醉系统源码

手术麻醉信息管理系统覆盖了与麻醉相关的各个临床工作环节,可详细记录病人从进入手术室、手术中、到手术结束的全部数据,包括各类仪器的监测数据、麻药、用药、事件、输氧、插管、拔管、输液、出液、输血、呼吸、电子病例、检验信息、检查结果、医嘱、病…

java八股文面试[数据库]——分库分表

什么是分库分表 简单来说,就是指通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。 分库分表解决的问题 分库分表的目的是为了解决由于数据量过大…

【学习笔记】C++ 中 static 关键字的作用

目录 前言static 作用在变量上static 作用在全局变量上static 作用在局部变量上static 作用在成员变量上 static 作用在函数上static 作用在函数上static 作用在成员函数上 前言 在 C/C 中,关键字 static 在不同的应用场景下,有不同的作用,这…

信息检索与数据挖掘 |(一)介绍

文章目录 📚信息检索🐇概念🐇结构化与非结构化数据🐇信息检索的基本假设🐇信息检索小结🐇附:IR新课题 📚数据挖掘🐇定义🐇数据挖掘 vs 机器学习 &#x1f4da…

算法训练营day42|动态规划 part04:0-1背包 (01背包问题基础(两种解决方案)、LeetCode 416.分割等和子集)

文章目录 01背包----二维dp数组01背包----滚动数组416.分割等和子集思路分析背包解法思考总结 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最…

2.4.3 【MySQL】设置系统变量

2.4.3.1 通过启动选项设置 大部分的系统变量都可以通过启动服务器时传送启动选项的方式来进行设置。如何填写启动选项就是下面两种方式: 通过命令行添加启动选项。 在启动服务器程序时用这个命令: mysqld --default-storage-engineMyISAM --max-conn…

DNS解析

1.DNS介绍 DNS 表示域名系统。此系统实质上是用于整理和识别各个域名的网络电话簿。电话簿将“Acme Pizza”之类的名称转换为要拨打的正确电话号码,而 DNS 将“www.google.com”之类的网络地址转换为托管该网站的计算机的物理 IP 地址,如“74.125.19.147…