首页 > 系统相关 >linux实战手册(一)-文件管理

linux实战手册(一)-文件管理

时间:2024-07-27 19:51:09浏览次数:15  
标签:实战 文件 手册 命令 ls linux cp 目录

初识linux

相信大家对linux都有所耳闻,linux和我们的windows一样都是操作系统,但是windows一般工作在大家的桌面上,平时玩游戏听歌上网都是windows系统,但是我们在网站上购买商品,浏览新闻,这些都是运行在服务器上的。而在服务器上边大部分操作系统用的是linux。linux的名字是从哪里来的呢,linux又是有什么具体含义,linux其实有两重含义,一种是广义上所说的是一种操作系统,另外一种是Linus(芬兰的天才程序员)编写的开源操作系统的内核。Linus Benedict Torvalds也被称为linux之父。

linux系统的操作界面和windows系统的操作界面有很大的区别。linux的操作形式为命令行格式,和window图形界面操作完全不一样。为什么会有不同的操作形式,因为服务端和客户端所做的事情完全是不一样的。服务端强调系统的稳定性,所以不需要华丽的界面,所以linux的操作形式为命令行形式。如果想在自己的电脑上接触到linux,应该怎么办呢。

学习linux之前的环境准备

  • 云主机。例如阿里云、腾讯云、华为云等,是非常普及的,甚至有一些云厂商的一些活动,可以免费体验服务器
  • 无数据的PC(不推荐多系统混跑)
  • 虚拟机(推荐方式)。在windows或者mac系统上安装虚拟机,及时在操作过程中出现问题,也不会影响系统的安全,不会影响电脑现有系统的运行。

linux命令

1、万能的帮助命令

  man 帮助

  man是manual的缩写,我们一般简单说成man。man帮助语法很简单

// man 命令
// 例如
man ls
man cd
man mkdir

  help 帮助

// 内部命令使用help 帮助
help cd

// 外部命令使用help 帮助
ls --help

 help 帮助命令为什么有两种形式区分?因为 命令也有两种区分,一种是 shell(命令解释器)自带的命令称为内部命令,其他的是外部命令。

 可以使用type命令区分外部命令还是内部命令:

// 内部命令
type cd

// 外部命令
type ls

  info 帮助

  info 帮助比help更加详细,作为help的补充。

 

info ls

info cd

info mkdir

 

  使用网络资源(搜索引擎和官方文档)

2、文件管理相关命令

文件管理既是linux管理的基础,又是linux管理的核心,因为在linux中有个非常重要的概念,叫做一切皆文件。像大家熟知的windows系统中,可能会有注册表,设备管理器等各个组件,而在linux中,我们控制linux通通都是文件,所以文件管理是linux中非常重要的内容。

文件查看

pwd:显示当前的目录名称。

有点类似windows的资源管理器,需要知道当前在c盘还是d盘。

cd:更改当前的操作目录。

当我们看到自己当前操作的目录之后,可能想要到其他文件目录中去操作,例如windows中当前在c盘,想要去d盘,这种情况下,在linux中,就会用到cd命令。

 

cd /path/to/...绝对路径

cd ./path/to/...相对路径

cd ../path/to/...相对路径

 

ls:查看当前目录下的文件。

ls类似于资源管理器,通过ls命令可以查看文件的名称,文件的权限,文件的类型,修改时间,以及文件的很多很多信息。

 

// 显示root目录下有哪些
ls /root

// 显示root目录和www目录下有哪些
ls /root /www

 

ls带选项语法

ls -l 长格式显示,也可以写成ls -l . 表示在当前目录下操作
例如:
第一列(dr-xr-xr-x)代表文件的类型和权限。第一列第一个字符代表文件的类型。如果是一些普通文件,类似于windows中文本文件,音乐文件,一般都是以"-"表示。如果是目录,也就是windows中文件夹,那么就是"d"来表示。实际上linux也会把目录当作文件去处理。
除去第一个字符,剩下的9个字符表示目录或者文件的权限。
第二列(5)的数字表示目录下文件的个数。
第三列(root)表示谁创建了文件或目录,显示的是名字。
第四列(root)表示这个人是属于哪个用户组的。
第五列(4096)表示文件或目录的大小
剩下列:表示文件或目录的最后修改时间
最后一列:文件或目录的名称

 

ls -a 显示隐藏文件

在linux中,文件或者目录以.开头,就表示它是隐藏文件。

 

ls -r 以逆向的方式进行排序,通常情况下配合 ls -l 一起使用。默认情况下以文件名的方式进行逆向显示。

ls -l -r -t 以时间方式进行逆向。多个选项可以缩写为 ls -lrt

 

ls -R和ls -r是不同的,所以在使用的时候要特别注意大小写,会有不同的含义。

ls -R表示递归显示目录内容,如果目录里边还有内容,会一并显示出来。

创建和删除目录

在windows中我们可以对文件夹进行操作,比如新建、删除、移动、重命名等操作。在linux中同样提供了相关命令。

mkdir

建立一个空的目录。

// 在根目录下创建一个a目录
mkdir /a

在当前目录下创建一个a目录,可以省略./ mkdir ./a

mkdir a 
mddir ./a

// 建立多个目录
mkdir a b c

// 如果创建一个已经村存在的目录,那么会提示无法创建
mkdir a

// 创建多级目录
mkdir /a/b

// 连续创建多级目录,使用-p
mkdir -p /a/b/c

rmdir

删除目录。rmdir有一个要求,只能删除一个空白的目录,如果目录下有任何内容,都将无法删除。

// 继续上边的代码
// 删除a目录,将会提示失败,删除"/a"失败:目录非空
mkdir /a

上述命令中,虽然a目录下的b和c都是空目录,但是也无法删除,这也充分说明在linux中一切皆文件,linux会把目录当成文件。

如果想要删除非空目录,可以执行rm命令

rm命令执行的时候,如果想要删除目录,需要带一个参数-r,即使有多个目录,并且它们都不是空的。

// 删除a目录
rm -r /a

 如果想要系统不进行一层一层提示,那么可以在命令后边加上-f选项,这样系统就不会进行提示,直接删除。

// 带-f参
rm -rf /a

cp

cp命令进行文件的复制,cp其实是copy的缩写。

语法:cp  [源文件或目录] [目标位置]

// 对a进行复制,把a目录复制到demoVue中
// cp单独使用的时候只能复制文件,如果要复制文件的话需要新增选项-r
cp -r ./a ./demoVue

使用cp -v 命令时,系统会在终端中输出关于复制过程的额外信息,比如哪些文件正在被复制,以及它们被复制到哪里。

cp -p 命令在 Linux 中用于复制文件或目录,同时保留原文件或目录的修改时间和访问权限。-p 选项实际上是 --preserve 的缩写,但在这里它主要用于保留文件的模式(即权限)、所有权和时间戳。这意味着复制后的文件将具有与源文件相同的访问权限、文件所有者、文件组以及最后修改和访问时间。

注意:

  • 使用 -p 选项时,通常也会保留文件的特殊属性(如 SELinux 安全上下文),但这取决于具体的系统和 cp 命令的实现。
  • 如果你想要复制文件或目录,并且还想保留其他更详细的属性(如链接数、用户ID和组ID),可能需要使用更高级的选项(如 cp 的 --preserve=all),但这在大多数标准 Linux 发行版中可能不是 -p 的直接功能。
  • 默认情况下,cp 不会复制文件的扩展属性,除非明确指定了 --preserve=xattrs(或类似)选项。然而,-p 选项本身并不包括这一点。

touch

touch创建一个文件。

mv

mv命令在linux中有两个功能,一个是文件和文件夹的移动功能,一个是重命名功能。

语法:mv [选项] 源文件或目录 目标位置或新名称

  • 源文件或目录:你想要移动或重命名的文件或目录的路径。
  • 目标位置或新名称:如果是移动操作,则是文件或目录要移动到的目标路径;如果是重命名操作,则是文件或目录的新名称(通常在同一目录下)。

常用选项:

  • -i:在覆盖目标文件之前提示用户确认。
  • -u:只有在源文件比目标文件新,或者目标文件不存在时,才移动文件。
  • -v:显示详细的操作信息。
  • -n:不要覆盖任何已存在的文件。

操作:

1、移动文件

将名为 example.txt 的文件从当前目录移动到名为 documents 的子目录中:

mv example.txt documents/

2、重命名,重命名操作在linux底层其实就是把文件的移动

将filea文件改名为fileb

mv /filea /fileb

3、移动并重命名文件

将名为 example.txt 的文件移动到 documents 目录下,并同时重命名为 document.txt

mv example.txt documents/document.txt

4、如果在进行复制、移动或者删除的时候,有很多相似的文件或目录,可以使用通配符(通用的匹配符号)进行操作。除了在cp命令中使用,可以在ls命令中。

  • * 表示当前目录下要操作的所以文件和目录
  • [xyz] 匹配xyz任意一个字符
  • [a-z] 匹配一个范围
  • [!xyz] 或 [^xyz] 不匹配

移动当前目录下所有文件

cp * /a

把以file开头的文件移动到b目录下

cp file? /b

 

 

 

 

 

 

标签:实战,文件,手册,命令,ls,linux,cp,目录
From: https://www.cnblogs.com/zmyxixihaha/p/18327007

相关文章

  • Linux: 更新系统相关依赖命令yum update执行失败: One of the configured repositorie
    环境:CentOS7(ISO映像文件=CentOS-7-x86_64-DVD-2009.iso)解决思路:系统repo镜像源连接问题导致执行失败,切换repo为国内源即可#切换仓库镜像源curl-o/etc/yum.repos.d/CentOS-Base.repohttps://mirrors.aliyun.com/repo/Centos-7.repo#或者wget-O/etc/yum.rep......
  • Linux捣鼓记录:debian12日志警告:firmware: failed to load iwl-debug-yoyo.bin (-2)
    问题现象:网卡为intelax200,系统为debian12蓝牙wifi使用功能一切正常,根据wiki检查了驱动也都已经安装,但每次开机后,查看cockpit日志会看到警告:firmware:failedtoloadiwl-debug-yoyo.bin(-2)......问题分析:检索网络得到初步结论:iwl-debug-yoyo.bin是一个intel网卡相关的de......
  • 【Go】基于 Go 1.19 的站点模板爬虫【实战演练版】
    0.前言Go语言,也被称为Golang,是由Google开发的一种开源编程语言,它在2009年首次发布,并在2012年正式开源。Go语言被设计用来简化大型软件的开发,特别注重并发编程和内存安全。0.1特点静态类型:Go是静态类型语言,这意味着类型在编译时已经确定,有助于在编译阶段捕捉错误......
  • 【项目实战】解码软件工程:一文读懂DO/PO/BO/AO/DTO/DAO/POJO/VO的奥秘
    文章目录一文读懂DO/PO/BO/AO/DTO/DAO/POJO/VO的奥秘不同领域作用POJO(PlainOldJavaObject)VO(ValueObject)VO(ViewObject)的特点:实体类(Entity)数据传输对象(DTO)领域对象(DomainObject)持久化对象(PersistentObject)业务对象(BusinessObject)应用对象(ApplicationObject)......
  • SpringBoot入门实战:SpringBoot整合Shiro
    1.背景介绍SpringBoot是一个用于快速开发Spring应用程序的框架。它的核心是对Spring框架的一层封装,使其更加简单易用。SpringBoot整合Shiro是一种将SpringBoot与Shiro整合的方法,以实现身份验证和授权功能。Shiro是一个强大的Java安全框架,它提供了身份验证、授权、密码存......
  • linux学习记录(docker)
    DockeDocker是基于Go语言实现的开源容器项目。它诞生于2013年年初,最初发起者是dotCloud公司。Docker自开源后受到业界广泛的关注与参与,目前已有80多个开源组件,逐渐形成了围绕Docker容器的完整的生态体系。dotCloud公司于2013年年底改名为DockerIoc,专注于Docker相关技术和产......
  • Java全栈课程之Linux——账号管理
    一、简介Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文......
  • [RHEL7基础篇-14] Linux中的LVM管理
    简介LVM(逻辑卷管理)是一种在Linux系统上使用的逻辑卷管理工具。它允许用户管理磁盘分区和分卷,以便更有效地使用存储空间。LVM是一种强大的存储管理工具,使用户能够更有效地管理磁盘空间,并提供高级功能来保护数据和增强系统的可用性。下面我们将使用RHEL7来学习LVM的使用。LV......
  • Linux磁盘管理
    Linux磁盘管理Linux在使用过程中产生的数据量不断增大,逐渐导致初始配置的磁盘空间不足,这时候就需要进行扩容,以满足业务需求。一般情况下会选择新添加磁盘,本文介绍了如何将新磁盘分区、格式化、挂载或制作LVM逻辑卷,进行磁盘空间扩容。1.基本分区磁盘的分区格式一共有两种:一......
  • Linux应用层开发(6):SPI通信
            本章通过讲解在应用层中使用SPI总线与外部设备的通讯,讲解Linux系统总线类型设备驱动架构的应用,它与上一章的I2C总线操作方法非常相似,可以对比学习。在Linux内核文档的Documentation/SPI目录下有关于SPI驱动非常详细的说明。1. SPI通讯协议简介     ......