Linux_基础指令(一)

       

目录

1、ls指令 

1.1 ls -l

1.2 ls -a 

1.3 ls -i 

2、pwd指令 

3、cd指令

3.1 路径的概念

3.1.1 绝对路径 

3.1.2 相对路径

3.2 cd ~

3.3 cd - 

4、touch指令

5、mkdir指令

6、删除系列的指指令 

6.1 rmdir 

6.2 rm

7、man指令 

8、cp指令

9、move指令

结语 


前言:

        Linux由林纳斯·托瓦兹于1991.10.5发布,是一款开放源代码的操作系统,Linux的应用场景非常广泛,例如服务器后台、车载系统、嵌入式设备等等,在Linux下有一句很经典的话叫做:一切皆为文件。无论是设备还是文件都当作文件来看待,因此他有着统一的文件操作接口,即拷贝文件、添加文件、删除文件都需要命令行来进行,本文介绍的是最基础的命令行指令对文件的操作。

        因此下文中“文件”的概念包括:普通文件和目录(目录的含义对应windows下的文件夹)

1、ls指令 

        语法:ls [选项] [要执行的目录或者普通文件] (注意指令之间用空格隔开

        他的功能是列出该目录下所有的普通文件和子目录,选项的作用就是可以列出普通文件或目录的更详细的信息,若单独一个ls指令,则只是显示出该目录下的文件名,示例如下:

        上图中表示的是,在目录zh下,有普通文件11、普通文件20243.17以及目录code、目录new11(简单来说就是白色文件名是普通文件,而蓝色文件名是目录)并无其他的文件详细信息。

1.1 ls -l

        ls后面跟-l表示的是在显示文件名的基础下,还显示出文件的更多属性,即文件的时间、权限、大小,ls -l指令测试如下:

        从上图可以发现刚好对应windows下的文件的基本属性。 

1.2 ls -a 

         ls -a也可以查看该目录下的文件,并且包括隐藏文件,那什么又是隐藏文件呢?在Linux下以.开头的文件就叫做隐藏文件,若不使用ls -a是查看不了隐藏文件的,ls -a测试指令如下:

1.3 ls -i 

         ls -i可以显示出文件的索引信息,即文件的“身份证号码”,每个文件都有唯一的索引信息。ls -i测试指令如下:

        从上图可以发现,只要是文件就会有索引信息。

2、pwd指令 

        语法:pwd 

        该指令的功能就是显示当前目录的路径,pwd指令测试如下:

3、cd指令

        语法:cd 目录名/路径

        cd的功能是从当前目录进入到某个目录。 

3.1 路径的概念

        在介绍cd指令前,先引入路径的概念,因为在Linux下,所有的文件和目录都是以多叉树的结构进行存储的,每个节点代表的是一个普通文件或者目录,而该多叉树的根结点称为根目录,他是所有文件的源头,具体示意图如下:

        从上图可以得出一个结论,每个文件都会有一条专门的路径且唯一。参考windows下的路径形式:D:\vs代码\test_3_16, \是windows下的路径分隔符,得以将不同层级的文件分割开来。而在Linux下,路径的形式和windows下逻辑是一样的,只不过Linux下的路径分隔符是反斜杠/,比如上图中test.c的路径为:/home/code/test.c

        定位一个文件时,有两种方法:1、绝对路径定位。2、相对路径定位。 

3.1.1 绝对路径 

        从根目录开始定位的路径叫做绝对路径,cd 绝对路径就能进入该路径的最后一个目录,体现绝对路径的用法如下:

        值得注意的是,这里cd /home/zh可以写成cd /home/zh/,严格来说后者比较规范因为最后以/结尾表示是一个路径。

3.1.2 相对路径

        以当前目录为基准的叫相对路径,比如以下写法:

         相对路径的第二种写法,如下:

        cd ..也是一种以当前目录为基准,找到上层的目录的方式。

3.2 cd ~

        cd ~的作用是不管在哪个目录下,直接回到家目录(家目录即该用户的目录,一般是在home目录下),比如上述进行测试的用户是zh,zh的目录是:/home/zh,则zh就是家目录。

        cd ~测试指令如下:

3.3 cd - 

        cd -的作用是跳转至上一次所在的目录,测试指令如下:

4、touch指令

         语法:touch [选项] [文件]

        touch的作用是创建一个新的普通文件,若该普通文件存在则更新该文件的创建时间,touch指令测试如下:

5、mkdir指令

        语法:mkdir [选项] 目录名 

        mkdir是在当前目录下创建一个新的目录,值得注意的是:若选项为-p时,目录名可以是一条路径,即一次性创建多个目录,mkdir指令测试如下:


         mkdir -p 路径,创建一条路径下多个目录:

         此处的tree指令可以在屏幕上打印出当前目录下的所有内容的结构,tree是需要下载的,他的下载指令为:yum install -y tree

6、删除系列的指指令 

        首先,rm -rf /*或者rm -rf /这两个删除指令会删除根目录以下的所有文件,也就是说若执行了该指令则Linux系统会直接崩溃,所有不要执行这句指令!!! 

6.1 rmdir 

         rmdir只能删除空目录,但是必须得有该文件的使用权,他是与mkdir对应的,rmdir指令测试如下:


        但是用rmdir删除上文创建的z1目录,则会删除失败,因为z1目录不是一个空目录,需要对应的使用rmdir -p 路径的形式进行删除:

         若想删除非空目录,则还可以使用另一种删除指令:rm。

6.2 rm

       语法:rm [选项] 文件名

        rm可以删除任何文件, 甚至可以删除没有权限的文件,所以rm用起来即方便又危险。当rm不带任何选项时,只可以删除普通文件,rm指令测试如下:


        若想删除目录还需要在选项处加上-r,则rm -r可以删除该目录下的一切文件(除了只读权限的文件), 测试如下:

        rm -f可以删除权限为只读的文件,-f意为强制的意思,因此rm -r -f才是真正的可以删除一切文件。 

7、man指令 

        因为Linux的指令有很多,若有些记不住则可以查看联机手册,则直接在Linux下通过man指令进行手册的查看,甚至一些c语言的库函数也可以通过man指令查找。

        语法:man [选项] 命令/库函数 

        比如查找指令ls的用法:


         也可以使用man man直接打开手册的具体内容(手册总共分八章):

        比如我们要查找strlen函数的具体用法,可以使用指令man 3(对应手册第三章的内容) strlen,指令测试如下:

8、cp指令

        语法:cp [选项] 源文件 目标处 

        cp的功能就是拷贝文件,若没有选项,则cp只能拷贝普通文件,cp拷贝普通文件的测试代码如下:


        若想拷贝目录,则选项要为-r,即cp -r 目录名,测试指令如下:

9、move指令

         语法:mv [选项] 源文件 目标处/新的名字 

        move的缩写是mv,他的作用是可以移到文件或者将文件重命名,若mv的第二个参数是路径则发生的是移动,mv移动的指令:


        若mv的第二个参数是一个文件名则发生的是重命名,mv进行重命名的测试:

结语 

        以上就是关于Linux下的基础指令讲解,可以发现这些基础指令实现的是对文件的添加、删除、查看文件属性、修改文件名,以及路径的更换,只不过有些指令只对普通文件生效,而对目录的指令则需要多加一些选项。

        最后希望本文可以给你带来更多的收获,如果本文对你起到了帮助,希望可以动动小指头帮忙点赞👍+关注😎+收藏👌!如果有遗漏或者有误的地方欢迎大家在评论区补充,谢谢大家!!

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

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

相关文章

【Java】十大排序

目录 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 冒泡排序 冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的序列,依次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历…

论文阅读_参数微调_P-tuning_v2

1 P-Tuning PLAINTEXT 1 2 3 4 5 6 7英文名称: GPT Understands, Too 中文名称: GPT也懂 链接: https://arxiv.org/abs/2103.10385 作者: Xiao Liu, Yanan Zheng, Zhengxiao Du, Ming Ding, Yujie Qian, Zhilin Yang, Jie Tang 机构: 清华大学, 麻省理工学院 日期: 2021-03-18…

东京旅行攻略:机票、交通、消费和看富士山

欢迎关注「苏南下」 在这里分享我的旅行和影像创作心得 分享一些最近从香港去日本东京的短期周末旅行体验。 1:香港飞东京需要4小时,非旺季往返的价格在2000元左右。去年五一假期,我提前了两个多月买的香港快运就是这个价,不算贵。…

微信小程序的页面制作---常用组件及其属性

微信小程序里的组件就是html里的标签,但其组件都自带UI风格和特定的功能效果 一、常用组件 view(视图容器)、text(文本)、button(按钮)、image(图片)、form&#xff08…

Sentinel篇:线程隔离和熔断降级

书接上回:微服务:Sentinel篇 3. 隔离和降级 限流是一种预防措施,虽然限流可以尽量避免因高并发而引起的服务故障,但服务还会因为其它原因而故障。 而要将这些故障控制在一定范围,避免雪崩,就要靠线程隔离…

【Visual Studio】VS转换文件为UTF8格式

使用高级保存选项 更改VS的编码方案 首先需要打开高级保存选项 然后打开 文件 —> 高级保存选项 即可进行设置

OSPF协议全面学习笔记

作者:BSXY_19计科_陈永跃 BSXY_信息学院 注:未经允许禁止转发任何内容 OSPF协议全面学习笔记 1、OSPF基础2、DR与BDR3、OSPF多区域4、虚链路Vlink5、OSPF报文6、LSA结构1、一类/二类LSA(Router-LSA/Network-LSA) 更新完善中... 1、…

ChatGPT :确定性AI源自于确定性数据

ChatGPT 幻觉 大模型实际应用落地过程中,会遇到幻觉(Hallucination)问题。对于语言模型而言,当生成的文本语法正确流畅,但不遵循原文(Faithfulness),或不符合事实(Factua…

C++——string

一学习string的原因 1.从个人理解角度上: 在刚开始学习之前,我只知道学习完string在以后的刷题中能提高做题效率,在对字符串的处理string库中也许有对应的接口去实现需求,不用自己去写函数的实现。 但在学string中改变了之前的…

【PyTorch】基础学习:一文详细介绍 torch.save() 的用法和应用

【PyTorch】基础学习:一文详细介绍 torch.save() 的用法和应用 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&#x1f44…

Flask中的Blueprints:模块化和组织大型Web应用【第142篇—Web应用】

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Flask中的Blueprints:模块化和组织大型Web应用 在构建大型Web应用时&#xff0…

最后的挣扎 - Qt For Android on HuaWei Mate 60Pro (v4.0.0)

简介 为什么叫最后的挣扎, 其实都知道即将到来的 HarmonyOS NEXT 将抛弃Android支持,纯血HarmonyOS 将上线, 此时再说Qt for android支持Huawei HarmonyOS的设备其实并没有多少意思, 但恐怕在大多数基础软件完成兼容前, 很多人还是…

【PyTorch】基础学习:一文详细介绍 torch.load() 的用法和应用

【PyTorch】基础学习:一文详细介绍 torch.load() 的用法和应用 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&#x1f44…

UCORE 清华大学os实验 lab0 环境配置

打卡 lab 0 : 环境配置 : 首先在ubt 上的环境,可以用虚拟机或者直接在windows 上面配置 然后需要很多工具 如 qemu gdb cmake git 就是中间犯了错误,误以为下载的安装包,一直解压不掉,结果用gpt 检查 结…

LeetCode 189.轮转数组

题目:给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 思路: 代码: class Solution {public void rotate(int[] nums, int k) {int n nums.length;k k % n;reverse(nums, 0, n);revers…

sqlite 常见命令 表结构

在 SQLite 中,将表结构保存为 SQL 具有一定的便捷性和重要性,原因如下 便捷性: 备份和恢复:将表结构保存为 SQL 可以方便地进行备份。如果需要还原或迁移数据库,只需执行保存的 SQL 脚本,就可以重新创建表…

vulhub中GitLab 任意文件读取漏洞复现(CVE-2016-9086)

GitLab是一款Ruby开发的Git项目管理平台。在8.9版本后添加的“导出、导入项目”功能,因为没有处理好压缩包中的软连接,已登录用户可以利用这个功能读取服务器上的任意文件。 环境运行后,访问http://your-ip:8080即可查看GitLab主页&#xff0…

Linux进程管理:(六)SMP负载均衡

文章说明: Linux内核版本:5.0 架构:ARM64 参考资料及图片来源:《奔跑吧Linux内核》 Linux 5.0内核源码注释仓库地址: zhangzihengya/LinuxSourceCode_v5.0_study (github.com) 1. 前置知识 1.1 CPU管理位图 内核…

深度强化学习01

Random variable Probability Density Function 期望 Random Sampling 学习视频 这绝对是我看过最好的深度强化学习!从入门到实战,7小时内干货不断!_哔哩哔哩_bilibili

智慧城市新篇章:数字孪生的力量与未来

随着信息技术的迅猛发展和数字化浪潮的推进,智慧城市作为现代城市发展的新模式,正在逐步改变我们的生活方式和社会结构。在智慧城市的构建中,数字孪生技术以其独特的优势,为城市的规划、管理、服务等方面带来了革命性的变革。本文…