Linux操作系统学习:day03

news2024/11/25 3:03:37

内容来自:Linux介绍

视频推荐:[Linux基础入门教程-linux命令-vim-gcc/g++ -动态库/静态库 -makefile-gdb调试](

目录

    • day03
      • 17、创建删除目录
        • 创建目录
        • 删除目录
      • 18、文件的拷贝
      • 19、mv 命令
      • 20、查看文件内容的相关命令
      • 21、给文件创建软连接或硬链接

day03

17、创建删除目录

创建目录

目录的创建分为两种, 一种是创建单个目录, 另一种是一次性创建多层目录, 使用的命令是mkdir, 后边参数是要创建的目录的名字, 如果是多层目录需要添加参数-p

# 单层目录
$ mkdir 新目录的名字

# 多层目录, 需要加参数 -p
$ mkdir parent/child/baby1/baby2 -p
删除目录

如果要删除已经存在的路径一共有两种方式, 可以使用rmdir或者rm

  • rmdir: 只能删除空目录,有点low,不好用
  • rm: 可以删除文件也可以删除目录, 如果删除的的是目录, 需要加参数 -r, 意思是递归(recursion)

rm命令还有另外两个经常使用的参数:

  • -i: 删除的时候给提示
  • -f: 强制删除文件, 没有提示直接删除并且不能恢复, 慎用
# 1. low, 矮穷矬, 只能删除空目录
$ rmdir 目录名

# 2. 高大上, 可以删除目录也可以删除文件
# 删除目录需要加参数 -r, 递归的意思, 删除之后是不能恢复的
$ rm 目录名 -r

示例:

# 删除时不给提示
rm -rif c

# 删除时给提示
rm -rfi c

tipsif 同时用的话,谁写在后面谁生效。

18、文件的拷贝

cp 就是copy, 拷贝, 使用这个命令可以拷贝文件也可以拷贝目录

  • 拷贝文件 => 文件不存在得到新文件, 文件存在就覆盖

    # `语法: cp 要拷贝的文件  得到的文件`
    
    # `场景1: 文件A, 将A拷贝一份得到文件B`
    $ cp 文件A 文件B
    
    # `场景2: 文件A存在的, 文件B也是存在的, 执行下边的拷贝 ==> 文件A覆盖文件B`
    $ cp 文件A 文件B
    
  • 拷贝目录 ==> 目录不存在得到新目录, 该目录被拷贝到存在的目录中

    # 拷贝目录需要参数 -r
    # 场景1: 目录A, 通过拷贝得到不存在的目录B
    $ cp 目录A 目录B -r
    
    # 场景2: 目录A存在的, 目录B也是存在的, 执行下边的拷贝 ==> 目录A会被拷贝并将其放到目录B中
    $ cp 目录A 目录B -r
    
    # 场景3: 把A目录里的某一个或者多个文件拷贝到B目录中
    $ cp A/a.txt B	# 拷贝 A目录中的 a.txt 到目录B中
    $ cp A/* B -r	# 拷贝 A目录中的所有文件到目录B中, 不能确定A目录中是否有子目录, 因此需要加 -r
    

19、mv 命令

mv 就是move, 这个Linux命令既能移动文件所在目录也可以给文件改名。

  • 文件的移动

    # 语法: mv 要移动的文件目录
    # 有一个文件A, 移动到目录B中
    # 其中A可以是文件也可以是目录, B必须是目录而且必须是存在的
    $ mv A B
    
  • 文件改名

    # 语法: mv 要改名的文件  新名字(原来是不存在的,这点很重要)
    # 其中A可以是文件也可以是目录,并且是存在的, B原来是不存在的
    $ mv A B
    
  • 文件覆盖

    # 语法: mv 存在文件A  存在的文件B
    # 其中A是文件(非目录)并且是存在的, B也是一个文件(非目录)并且也存在
    # A文件中的内容覆盖B文件中的内容, A文件被删除, 只剩下B文件
    $ mv A B
    

20、查看文件内容的相关命令

如果想要查看文件内容方式有很多, 最常用的是vim, 下面介绍一下vim以外的一些的一些方式:

  • cat

    该命令可以将文件内容显示到终端, 由于终端是有缓存的, 因此能显示的字节数也是受限制的。 如果文件太大数据就不能完全显示出来了,因此该命令适合查看比较小的文件内容。

    $ cat 文件名
    
  • more

    该命令比cat要高级一点, 我们可以以翻屏的方式查看文件中的内容,使用方式如下:

    $ more 文件名
    # 快捷键
    - 回车: 显示下一行
    - 空格: 向下滚动一屏
    - b: 返回上一屏
    - q: 退出more
    
  • less

    该命令和more命令差不多, 我们可以以翻屏的方式查看文件中的内容,使用方式如下:

    $ less 文件名
    # 快捷键
    - b: 向上翻页
    - 空格: 向后翻页
    - 回车: 显示下一行
    - 上下键: 上下滚动
    - q:退出
    
  • head

    使用该命令可以查看文件头部的若干行信息, 使用方式如下:

    # 默认显示文件的前10行
    $ head 文件名
    # 指定显示头部的前多少行
    $ head -行数 文件名
    
  • tail

    使用该命令可以查看文件尾部的若干行信息, 使用方式如下:

    # 默认显示文件的后10行
    $ tail 文件名
    # 指定显示尾部的最后多少行
    $ tail -行数 文件名
    

21、给文件创建软连接或硬链接

链接分两种类型: 软连接硬链接。软连接相当于windows中的快捷方式,硬链接前边也已经介绍过了文件并不会进行拷贝,只是多出一个新的文件名并且硬链接计数会加1。

  • 软连接

    基本语法格式:

    ln -s 源文件路径 软链接文件的名字(可以带路径)
    

    示例:

    # 查看目录文件
    [root@VM-8-14-centos ~/luffy]# ll
    total 8
    drwxr-xr-x 3 root root 4096 Jan 25 17:27 get
    -rw-r--r-- 1 root root   37 Jan 25 17:26 onepiece.txt
    
    # 给 onepiece.txt 创建软连接, 放到子目录 get 中
    [root@VM-8-14-centos ~/luffy]# ln -s /root/luffy/onepiece.txt get/link.lnk  
    [root@VM-8-14-centos ~/luffy]# ll get
    total 4
    lrwxrwxrwx 1 root root   24 Jan 25 17:27 link.lnk -> /root/luffy/onepiece.txt
    drwxr-xr-x 2 root root 4096 Jan 24 21:37 onepiece
    

    在创建软链接的时候, 命令中的 源文件路径建议使用绝对路径, 这样才能保证创建出的软链接文件在任意目录中移动都可以访问到链接的那个源文件。

    tips:软链接文件以 .lnk 结尾,且软链接更换目录后会失效

  • 硬链接

    基本语法格式:

    ln 源文件 硬链接文件的名字(可以带路径)
    

    示例:

    # 创建硬链接文件, 放到子目录中
    [root@VM-8-14-centos ~/luffy]# ln onepiece.txt get/link.txt
    
    # 查看链接文件和硬链接计数, 从 1 --> 2
    [root@VM-8-14-centos ~/luffy]# ll get
    total 8
    lrwxrwxrwx 1 root root   24 Jan 25 17:27 link.lnk -> /root/luffy/onepiece.txt
    -rw-r--r-- 2 root root   37 Jan 25 17:26 link.txt
    drwxr-xr-x 2 root root 4096 Jan 24 21:37 onepiece
    

    硬链接和软链接不同, 它是通话文件名直接找对应的硬盘地址, 而不是基于路径, 因此 源文件使用相对路径即可, 无需为其制定绝对路径。

    tips

    1. 创建硬链接后,硬链接计数会增加;
    2. 目录是不允许创建硬链接的
    3. 硬链接源文件路径不需要绝对路径,只需要相对路径;
    4. 软链接源文件路径使用绝对路径
      在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker部署dm数据库

官方文档参考 官网地址:https://eco.dameng.com/document/dm/zh-cn/start/dm-install-docker.html 下载镜像地址 docker部署 1、加载镜像 docker load -i dm8_20240613_x86_rh6_64_rq_ent_8.1.3.140_pack5.tar使用docker images,查看镜像和镜像标签…

【RK3588/算能/Nvidia智能盒子】挑战「无电无网」部署AI算法,守护大亚湾荃美石化码头工地安全

“万顷碧波之上,一座千米钢栈桥如蛟龙出水,向大海蜿蜒。钢栈桥上的项目建设者正在加紧作业,为助推惠州大亚湾加快建设成为世界级绿色石化基地全力奋战。”这是不久前北京日报对大亚湾惠州港荃湾港区荃美石化码头工地的描述。 △ 图片来源于北…

【RK3588/算能/Nvidia智能盒子】AI“值守”,规范新能源汽车充电站停车、烟火及充电乱象

近年来,中国新能源汽车高速发展,产量连续8年位居全球第一。根据中国充电联盟数据,截至2023年6月,新能源汽车保有量1620万辆,全国充电基础设施累计数量为665.2万台,车桩比约2.5:1。 虽然新能源汽车与充电桩供…

java架构设计-COLA

参考:https://github.com/alibaba/COLA 架构 要素:组成架构的重要元素 结构:要素直接的关系 意义:定义良好的结构,治理应用复杂度,降低系统熵值,改善混乱状态 创建COLA应用: mvn …

代理商 SAAS 系统权限设计

代理商 SAAS 系统与垂直业务系统不一样,代理商可以不断发展下级,每一级有每一级的管理员。超级管理员可以开通下级代理机构,同时设置下级机构的管理员账号。每一级管理员可以管理本级机构对应的部门、岗位、员工,并进行授权管理。…

SSH 远程执行任务

SSH 是 Linux 下进行远程连接的基本工具,但是如果仅仅用它来登录那可是太浪费啦!SSH 命令可是完成远程操作的神器啊,借助它我们可以把很多的远程操作自动化掉!下面就对 SSH 的远程操作功能进行一个小小的总结。 远程执行命令 如…

拦截器 之 用户登录判断

spring boot 拦截器的实现需要有两步: 拦截器 自定义一个拦截器 package com.example.demo.common;import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpSession; import org.s…

【React】极客园--01.项目前置准备

项目搭建 基于CRA创建项目 CRA是一个底层基于webpack快速创建React项目的脚手架工具 # 使用npx创建项目 npx create-react-app react-jike# 进入到项 cd react-jike# 启动项目 npm start调整项目目录结构 -src-apis 项目接口函数-assets 项目资源文件&…

Flume基础教程

Apache Flume教程 资料来源:Apache Flume - Introduction (tutorialspoint.com) Flume是一个标准的、简单的、健壮的、灵活的、可扩展的工具,用于将从各种数据生产者(web服务器)中所产生的数据抽取到Hadoop中。在本教程中,我们将使用简单的…

内部类介绍

内部类(Inner Class)是在另一个类的内部定义的类。它可以访问外部类的所有成员,包括私有成员。内部类有两种主要形式:局部内部类(定义在方法内部)和成员内部类(定义在类的内部,但不在…

《Nest系列 - 2. Nest 代码生成器,让你告别base代码书写!!!》

紧接上文我们做一些核心梳理 核心梳理: /controllers目录:存放控制器文件,每个控制器对应一组路由和请求处理方法。控制器处理来自客户端的HTTP请求,并返回相应的响应。/modules目录:存放模块文件,每个模块…

第十一章:接口

接口 文章目录 接口一、简介1.1 接口是什么1.2 接口的作用1.3 接口的开发与调用1.4 接口的组成 二、RESTful API三、json-server四、接口测试工具五、接口的创建 一、简介 1.1 接口是什么 接口是前后端通信的桥梁 简单理解:一个接口就是 服务中的一个路由规则&am…

7.华为交换机端口配置链路聚合Eth-trunk

目的:两台华为交换机端口配置链路聚合 LSW1配置 [Huawei]interface Eth-Trunk 1 [Huawei-Eth-Trunk1]q [Huawei]int g0/0/1 [Huawei-GigabitEthernet0/0/1]eth-trunk 1 [Huawei-GigabitEthernet0/0/1]int g0/0/2 [Huawei-GigabitEthernet0/0/2]eth-trunk 1LSW2配置…

产品经理用好AI,最关键的一个点

前言 AI大模型已经越来越强大了,我们要怎么才能把它变成生产力工具?根据最近的一个调研发现,即使是在产品经理这个群体里,能真正用好AI去激发生产力的人也只占6%,也就是说其实有94%的人都还不能很好的把生成式AI转化为…

个人博客测试用例设计

个人博客测试用例设计 个人博客测试用例 分别从功能、性能、安全、兼容及界面分别展开 个人博客测试用例

VST3音频插件技术介绍

一.概述 1.VST3介绍 VST3(Virtual Studio Technology 3)是一种音频插件格式,由Steinberg公司开发,用于在数字音频工作站(DAW)中使用。VST3插件可以是模拟合成器、鼓机、混响器、压缩器等多种类型的音频处理…

文件系统崩溃一致性、方法、原理与局限

前言 先提几个问题:什么是文件系统崩溃一致性?为什么会出现文件系统崩溃一致性问题?有哪些方法可以解这个问题?它们各自又有哪些局限性? window系统电脑异常后会蓝屏、手机死机卡顿后我们会手动给它重启,大…

VirtualStudio配置QT开发环境

环境 VirtualStudio2022Qt5.12.10 安装msvc工具链(这一步不是必须的) 打开virtual studio,打开Virtual Studio Installer界面选择要安装的msvc版本,点击安装 安装VirtualStudio扩展 在线安装 打开virtual Studio,…

Blurry - hackthebox

简介 靶机名称:Blurry 难度:中等 靶场地址:https://app.hackthebox.com/machines/605 本地环境 靶机IP :10.10.11.19 linux渗透机IP(kali 2024.2):10.10.16.17 windows渗透机IP(windows11&#xff0…

excel宏处理魔法代码,实现按月份统计销售额和按产品统计销售额

目录 前言第一步:打开文件第二步:选中左侧任意一个sheet双击第三步:粘贴 魔法代码第四步:点击菜单栏 运行>运行子程序和用户窗口第五步:切换回文件,我们就可以看到已经生成了月份销售额统计和产品销售额…