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

【Liunx基础】之指令(一)

【Liunx基础】之指令(一)

  • 1.ls指令
  • 2.pwd命令
  • 3.cd指令
  • 4.touch指令
  • 5.mkdir指令(重要)
  • 6.rmdir指令与rm指令(重要)
  • 7.man指令(重要)
  • 8.cp指令(重要)

📃博客主页: 小镇敲码人
💞热门专栏:linux操作系统
🚀 欢迎关注:👍点赞 👂🏽留言 😍收藏
🌏 任尔江湖满血骨,我自踏雪寻梅香。 万千浮云遮碧月,独傲天下百坚强。 男儿应有龙腾志,盖世一意转洪荒。 莫使此生无痕度,终归人间一捧黄。🍎🍎🍎
❤️ 什么?你问我答案,少年你看,下一个十年又来了 💞 💞 💞
前言:接上一篇博客【C语言进阶】之动态内存管理,今天来跟着博主把理论应用在实践之中,彻底掌握动态内存管理的相关知识!!!!

1.ls指令

  • 语法:ls [选项] [目录或文件]
  • 功能:对于目录,该命令列出该目录下的所有子目录和文件名。对于文件,该命令会列出文件名称及其它信息。

常用选项:

1. -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
2. -d 将目录像文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
3. -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
3. -k 以 k 字节的形式表示文件的大小。ls –alk 指定文件
4. -l 列出文件的详细信息。
5. -n 用数字的 UID,GID 代替名称。
6. -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表
示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别)
7. -r 对目录反向排序。
8. -t 以时间排序。
9. -s 在l文件名后输出该文件的大小。
10.-R 列出所有子目录下的文件。(递归)
11.-1 一行只输出一个文件。

我们以根目录来做下演示:

  1. ls -l
    在这里插入图片描述
    因为-l选项是列出文件的详细信息,但是不包括隐藏文件,所以这里什么的没显示,同时也说明了一个问题,就是root根目录下全部都是隐藏文件。
  2. ls -a
    在这里插入图片描述
    因为-a选项列出目录下的所有文件但是也包括隐藏文件,但是不显示文件的详细信息。

那么如果我们想查看隐藏文件的详细信息应该怎么办呢,我们的选项是可以叠加使用的:

  1. ls -a -l

在这里插入图片描述
可以看到此时系统给我们显示出了,root目录下的所有文件的详细信息,注意不同的选项叠加,顺序没有要求,也可以将他们只用一个-放在一起,例如:

在这里插入图片描述
或者是ls -la /root也是可以的。

  1. ls -a -1在这里插入图片描述
    选项-1-a加在一起可以每一行只列出一个文件(包括隐藏文件)或目录,但是不显示文件的详细信息。

  2. ls -t -a

在这里插入图片描述
这里可以看到,第一种应该是按照时间的先后排列的文件顺序,-t选项可以将一个目录下的文件和目录按照时间来排序,到底是升序还是降序,我们之后可以验证一下。

  1. ls -r -a
    在这里插入图片描述
    -r选项是对目录进行反向排序,我们可以知道,ls -r -t应该就可以按照时间对目录进行反向排序:
    在这里插入图片描述
    更多选项请大家自行下去研究。

2.pwd命令

语法:pwd
功能:显示当前用户所在目录
常用选项:无
在这里插入图片描述
比如当前使用pwd命令,显示我们在根目录。

3.cd指令

  • 注意:每一个目录下都有两个隐藏目录....代表当前目录,..代表上级目录,也就是说如果你当前在root目录,/root = ./,可以这样去理解它们就相当于两个指针,.指向当前目录,..指向上级目录。

在linux上,磁盘上的文件和目录被组成一棵树,每个节点都是一个文件或者目录,比如root目录下的树展开是这样的:

在这里插入图片描述
关于目录,我们后续会有更加详细的讲解。
语法:cd 目录名
功能:改变工作目录,将工作目录改变到指定目录下。

1. cd .. : 返回上级目录
2. cd /dev/raw : 绝对路径
3. cd ../../root : 相对路径
4. cd ~:进入用户家目
5. cd -:返回最近访问目录
  1. cd ..
    在这里插入图片描述
    我们pwd知道当前目录在/bin,cd ..来到上级目录

  2. 绝对路径
    绝对路径就是从根目录开始到该目录的路径
    在这里插入图片描述
    我们现在在root目录下,然后通过绝对路径/dev/raw进入raw目录,这个/dev/raw就是绝对路径。

  3. 相对路径
    我们现在在/dev/raw,通过…/…/root,访问root目录,这个…/…/root就是相对路径。
    在这里插入图片描述
    因为…是返回上一级目录,我们返回两级就到了根目录,然后再访问其下面的root目录。

  4. cd ~
    这个指令可以帮我们进入我们的家目录
    在这里插入图片描述
    我们现在在/bin目录下,cd ~直接来到家目录/root,root用户的家目录就是/root。

  5. cd -
    这个指令可以帮助我们返回到刚刚的目录。
    在这里插入图片描述
    我们刚刚在/bin目录下,cd ~来到家目录,然后cd -可以又回到/bin目录,cd -又可以来到刚刚的/root目录,实现反复横跳。

4.touch指令

语法:touch [选项] 文件名
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项:

  • -a 或–time=atime或–time=access或–time=use只更改存取时间。
  • -c 或–no-create 不建立任何文档。
  • -d 使用指定的日期时间,而非现在的时间。
  • -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
  • -m 或–time=mtime或–time=modify 只更改变动时间。
  • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
  • -t 使用指定的日期时间,而非现在的时间。

我们常见的使用touch的场景是建立一个文件:

在这里插入图片描述

5.mkdir指令(重要)

语法:mkdir [选项] 目录名
功能:建立一个新的目录。
选项:

  • -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立
    好那些尚不存在的目录,即一次可以建立多个目录;

使用这两个选项可以一次性建立多个还不存在的目录:
在这里插入图片描述
如果不指定路径就默认在当前路径创建目录,如果指定就可以在多个指定的目录创建,比如下面:

在这里插入图片描述

6.rmdir指令与rm指令(重要)

rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令。
语法:rmdir [-p][dirName]
适用对象:具有当前目录操作权限的所有使用者
功能:删除空目录
常用选项:

  • -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。

我们来演示一下:

在这里插入图片描述

  • 注意:我们使用了一个*,系统帮助我们删除了所有目录,*叫做通配符,可以删除指定路径下的所有文件和目录,因为rmdir只能删除目录所以还剩一个文件没有删除。

rm命令可以同时删除文件或目录
语法:rm [-f-i-r-v][dirName/dir]
适用对象:所有使用者
功能:删除文件或目录
常用选项:

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件
  1. rm -rf
    这个指令即使你没有写权限,只有读权限,也可以直接删除,而且可以删除文件和目录。

在这里插入图片描述
因为-f选项是删除文件的,所以它单独存在不能删除目录:

在这里插入图片描述
但是它单独存在可以删除文件:

在这里插入图片描述

-r选项单独存在既可以删除目录也可以删除文件:

在这里插入图片描述
*同样可以和rm搭配使用,删除所有该目录下该选项可以删除的文件或目录,但是此时我们发现系统一直在问我们是否要删除,如果我们-f -r选项一起用,就可以直接删除:

在这里插入图片描述

  1. rm -i -f
    这个-i选项可以让系统在删除前询问我们一下,如果和-f选项放在一起,也是可以触发询问的,因为有时候你可能想删除一些只读的文件,但是你想要系统问你一下就可以用这个指令:

在这里插入图片描述
可以发现使用这个-f选项删除文件系统是默认不询问的,如果我们加了-i选项系统就会询问,会更加安全。

这里我们可以得到一个结论:当我们单独使用-r选项删除文件或者目录时,系统会询问。但是当我们使用-f选项删除文件时,系统是不会询问的。

7.man指令(重要)

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。man指令可以帮助进入手册
man 语法: man [选项] 命令
常用选项

  • -k 根据关键字搜索联机帮助
  • num 只在第num章节找
  • -a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。
    解释一下面手册分为8章
    1 是普通的命令
    2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文
    件)
    3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
    5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
    6 是给游戏留的,由各个游戏自己定义
    7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
    8 是系统管理用的命令,这些命令只能由root使用,如ifconfig

比如我们使用man mkdir系统就会帮助我们找mkdir的相关介绍:
在这里插入图片描述
输入q可以退出。

8.cp指令(重要)

语法:cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息

常用选项:

  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链
    接,则一律视为普通文件处理
  • -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

我们可以使用cp命令不加选项直接,把一个目录里的文件拷贝到另外一个目录
在这里插入图片描述
我们可以使用-r选项将一个目录里子目录都递归拷贝到另一个目录:

在这里插入图片描述
此时我们想把/root目录下的aa目录里面的内容全部拷贝到bb目录里面,直接拷贝是不行的,因为它有多级子目录,我们需要使用-r选项递归拷贝。

cp指令还有创建新目录的作用,如果我们想将一个存在的目录递归拷贝到一个目录中,如果它不存在,系统会创建一个新的目录,并完成拷贝:
在这里插入图片描述

如果一个目录里面有多个目录,后面那个目标目录不存在就会报错:
在这里插入图片描述
使用-f选项也会报错,但是使用-r选项可以成功拷贝:
在这里插入图片描述

相关文章:

【Liunx基础】之指令(一)

【Liunx基础】之指令(一) 1.ls指令2.pwd命令3.cd指令4.touch指令5.mkdir指令(重要)6.rmdir指令与rm指令(重要)7.man指令(重要)8.cp指令(重要) 📃博客主页: 小…...

jQuery案例专题

jQuery案例专题 本学期主要担任的课程是js和jQuery&#xff0c;感觉用到的有一些案例挺有意思的&#xff0c;就对其进行了一下整理。 目录&#xff1a; 电影院的幕帘特效 手风琴特效 星光闪烁 网页轮播图 1.电影院的幕帘特效代码如下 html <!DOCTYPE html > <html…...

【Linux】服务器间免登陆访问

准备两台服务器&#xff0c;服务器A&#xff0c;服务器B 在服务器A中实现免登陆服务器B 进入服务器A操作 进入目录/root/.ssh cd /root/.ssh秘钥对使用默认文件名 生成秘钥对&#xff0c;在输入秘钥文件时直接回车则会使用默认文件名&#xff1a;id_rsa ssh-keygen -t rsa…...

【信息安全原理】——IP及路由安全(学习笔记)

目录 &#x1f552; 1. IPv4协议及其安全性分析&#x1f552; 2. IPsec&#xff08;IP Security&#xff09;&#x1f558; 2.1 IPsec安全策略&#x1f564; 2.1.1 安全关联&#xff08;Security Association, SA&#xff09;&#x1f564; 2.1.2 安全策略&#xff08;Security…...

【jvm】虚拟机之本地方法栈

目录 一、说明二、注意 一、说明 1. Java虚拟机栈用于管理Javaj法的调用&#xff0c;而本地方法栈用于管理本地方法的调用。 2. 本地方法栈&#xff0c;也是线程私有的。 3. 允许被实现成固定或者是可动态扩展的内存大小。 (在内存溢出方面是相同&#xff09; 4. 如果线程请求分…...

『CV学习笔记』图像超分辨率等图像处理任务中的评价指标PSNR(峰值信噪比)

图像超分辨率等图像处理任务中的评价指标PSNR(峰值信噪比) 文章目录 一. PSNR(峰值信噪比)1.1. 定义1.2. 作用1.3. 例子1.4 . PSNR评价标准二. 参考文献一. PSNR(峰值信噪比) 1.1. 定义 峰值信噪比(Peak Signal-to-Noise Ratio, PSNR)是图像超分辨率等图像处理任务中常用的一…...

【51nod 连续区间】 题解(序列分治)

题目描述 区间内的元素元素排序后 任意相邻两个元素值差为 1 1 1 的区间称为“连续区间”。 如 3 , 1 , 2 3,1,2 3,1,2 是连续区间&#xff0c; 3 , 1 , 4 3,1,4 3,1,4 不是连续区间。 给出一个 1 ∼ n 1 \sim n 1∼n 的排列&#xff0c;问有多少连续区间。 …...

10.30校招 实习 内推 面经

绿*泡*泡&#xff1a; neituijunsir 交流裙 &#xff0c;内推/实习/校招汇总表格 1、校招&#xff5c;极目智能2024届校招 校招&#xff5c;极目智能2024届校招 2、校招&#xff5c;杭州极弱磁场国家重大科技基础设施研究院2024秋季校园招聘正式启动&#xff01; 校招&…...

相比typescript,python的动态类型有什么优缺点?

以下是Python的动态类型相对于TypeScript的静态类型的一些优缺点&#xff1a; 1、Python的动态类型优点&#xff1a; 更灵活&#xff1a;Python的动态类型允许你在运行时更灵活地改变变量的类型&#xff0c;这对于快速原型设计和快速开发非常有帮助。 代码更简洁&#xff1a;…...

高效处理文件:批量顺序编号重命名方法

每个人都面临着文件管理的挑战&#xff0c;特别是那些需要处理大量文件的人。如何高效地管理这些文件一直是一个难题。为了解决这个问题&#xff0c;我向大家推荐一款强大的文件管理工具——固乔文件管家。这个工具可以帮助你快速有效地给文件进行批量重命名和编号&#xff0c;…...

JAVA深化篇_29—— 线程使用之线程联合以及Thread类中的其他常用方法【附有详细说明及代码案例】

线程联合 当前线程邀请调用方法的线程优先执行&#xff0c;在调用方法的线程执行结束之前&#xff0c;当前线程不能再次执行。线程A在运行期间&#xff0c;可以调用线程B的join()方法&#xff0c;让线程B和线程A联合。这样&#xff0c;线程A就必须等待线程B执行完毕后&#xf…...

〖Python网络爬虫实战㊲〗- JavaScript 逆向实战(一)

订阅:新手可以订阅我的其他专栏。免费阶段订阅量1000+python项目实战 Python编程基础教程系列(零基础小白搬砖逆袭) 说明:本专栏持续更新中,订阅本专栏前必读关于专栏〖Python网络爬虫实战〗转为付费专栏的订阅说明作者:爱吃饼干的小白鼠。Python领域优质创作者,2022年度…...

2023辽宁省数学建模A题铁路车站的安全标线完整原创论文详细讲解(含matlab代码)

大家好呀&#xff0c;从发布赛题一直到现在&#xff0c;总算完成了辽宁省数学建模A题完整的成品论文。 本论文可以保证原创&#xff0c;保证高质量。绝不是随便引用一大堆模型和代码复制粘贴进来完全没有应用糊弄人的垃圾半成品论文。 B预计下午两点前更新完毕&#xff0c;A全…...

(14)学习笔记:动手深度学习(Pytorch神经网络基础)

文章目录 神经网络的层与块块的基本概念自定义块 问答 神经网络的层与块 块的基本概念 以多层感知机为例&#xff0c; 整个模型接受原始输入&#xff08;特征&#xff09;&#xff0c;生成输出&#xff08;预测&#xff09;&#xff0c; 并包含一些参数&#xff08;所有组成层…...

Leetcode-1 两数之和

暴力穷举 class Solution {public int[] twoSum(int[] nums, int target) {int[] num new int[2];for(int i0;i<nums.length-1;i){for(int ji1;j<nums.length;j){if(nums[i]nums[j]target){num[0]i;num[1]j;}}}return num;} }HashMap&#xff0c;记录下标和对应值&…...

Screens for Mac 中文版 远程桌面连接控制工具

Screens Mac 版是Mac os平台上的一款Mac VNC 客户终端,能够自由访问远程计算机设备&#xff0c; Screens Mac 版支持各种强大的远程控制辅助工具&#xff0c;例如剪切板共享、快捷方式自定义、安全连接、多屏幕支持、快速扫描连接等。 Screens 4 for mac支持多种远程桌面协议&…...

解决vmware安装ubuntu虚拟机显示不全以及无法实现windows与虚拟机之间无法相互复制粘贴问题

01、存在问题 02、解决方案 sudo apt-get autoremove open-vm-tools sudo apt-get install open-vm-tools sudo apt-get install open-vm-tools-desktop reboot //重启重启后界面如下&#xff1a; 存在Bug 如果遇到一下问题&#xff0c;请先执行下列命令&#x…...

希腊字母读音表

序号大写小写英文注音国际音标注音中文读音意义1Ααalphaa:lf阿尔法角度&#xff1b;系数2Ββbetabet贝塔磁通系数&#xff1b;角度&#xff1b;系数3Γγgammaˈɡmə伽马电导系数&#xff08;小写&#xff09;4Δδdeltadelt德尔塔变动&#xff1b;密度&#xff1b;屈光度5…...

如何使用CodeceptJS、Playwright和GitHub Actions构建端到端测试流水线

介绍 端到端测试是软件开发的一个重要方面&#xff0c;因为它确保系统的所有组件都能正确运行。CodeceptJS是一个高效且强大的端到端自动化框架&#xff0c;与Playwright 结合使用时&#xff0c;它成为自动化Web、移动甚至桌面 (Electron.js) 应用程序比较好用的工具。 在本文中…...

解析python爬取Ebay数据的方式

前言 Ebay是全球著名的电子商务平台之一&#xff0c;每天都有海量的商品信息涌入其中&#xff0c;在电商行业获取这些数据试试非常有价值的&#xff0c;为了更好地了解市场动态&#xff0c;掌握更多的电商行情。Python爬虫成为了必不可少的工具&#xff0c;本文将通过使用Http…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

Debian系统简介

目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版&#xff…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请&#xff0c;不同级别的经理有不同的审批权限&#xff1a; // 抽象处理者&#xff1a;审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...

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…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成

一个面向 Java 开发者的 Sring-Ai 示例工程项目&#xff0c;该项目是一个 Spring AI 快速入门的样例工程项目&#xff0c;旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计&#xff0c;每个模块都专注于特定的功能领域&#xff0c;便于学习和…...