【Linux】2.Linux常见指令以及权限理解(1)

文章目录

  • 1.Xshell的一些快捷键操作
  • 2.Linux指令
    • 2.1常用指令示例
    • 2.2常用指令选项
      • 2.2.1 ls指令
      • 2.2.2 cd/pwd/shoami指令
      • 2.2.3 touch指令
      • 2.2.4 mkdir指令
      • 2.2.5 rmdir指令
      • 2.2.6 rm指令


1.Xshell的一些快捷键操作

Xshell

alt+enterXshell自动全屏,自动取消全屏

XShell 下的复制粘贴

复制: ctrl + insert (有些同学的 insert 需要配合 fn 来按)

粘贴: shift + insert

ctrl + c / ctrl + v 是不行的.


2.Linux指令

2.1常用指令示例

ls:显示当前目录下的所有的文件列表

99ca5b5f06bb304526201538e53b0bc9

pwd:显示当前命令行操作的时候所处的目录在哪里

0150739e2c95665f089752cc23d15b10

mkdir 108_class:创建108_class文件夹

a98f885afbb95e79ed04f25614f19216

cd 108_class/:进入108_class文件夹,可通过pwd来检查

9e800e713ebada906457cd5b111b492e


2.2常用指令选项

2.2.1 ls指令

指令是可以携带选项的。

touch test.txt:当你执行 touch test.txt 命令时,如果 test.txt 文件不存在,系统会创建一个名为 test.txt 的空文件。如果 test.txt 文件已经存在,那么这个命令会更新该文件的访问时间和修改时间到当前时间,但不会改变文件的内容。

40188269d394dbc25b78c188fcf722a4

如果我们创建一个文件,但是文件里面什么都没写,那么文件占用空间吗?

占用。


就像我们创建一个记事本,他会显示0KB,以及默认的名字,图标,修改日期,类型,这些都是文件的属性。

属性也是数据,是数据就要存储。

文件 = 文件内容 + 文件的属性

文件的操作 = 对文件内容的操作 or 对文件属性的操作

  1. ls -l:列出文件的详细信息。

c942006b7c1dd692e97faddbec28d849

ba334bb289370d59633a30003986b2b5

剩下的一些后面会介绍。

ls -l等价于ll

9df7523b94ff89515e437b24ee3b6635


  1. ls -a:列出目录下的所有文件,包括以 . 开头的隐含文件。

  2. ls -la:显示所有的文件,包括隐藏文件。

    ls -a -lls -alls -la等价的

8712d17bcfa7eced451e92b54b629c09

fc73174a517d1e6238aacb931c77fb6b

00965a2a47c4ec4728213f9cde752895

那么...开头的有什么区别呢?

24960869ded208dc78900e205d384713

b58072ea8fb77b692a34f7d80c1add4d

153049cc779167cb967932a597754ee7

表面上看.似乎没什么用。

如果当前路径下有个a.out的可执行程序,你想要去执行这个程序,那么就必须执行./a.out它才可以跑。

换而言之,这个.可以让我们限定当前目录下的文件,我们用文件的时候要先找到他。


  1. ls -d:将目录象文件一样显示,而不是显示其下的文件,指定目录。

    下面ls -d就是把108_class当前目录的东西显示出来了,里面的东西不显示。

bc626208a31067bcf5ed1991e26129cb


  1. ls -F:在每个文件名后附上一个字符以说明该文件的类型。(目录类型识别)

    *”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets);什么都没带的就算普通的文本文件了。

fe24c5994f7082f78f9da1d3ecefb6cf


2.2.2 cd/pwd/shoami指令

ccd0e0790ee7af2279bc5eb91d2047c1

目录的里面可以放目录和其他普通文件,所以Linux的整个目录结构一定是一个多叉树的样子。

a412549459af82b7dbf4e551f28c7a2d

Linux的目录结构整体是一个多叉树,他的叶子节点一定是空目录或者非空目录,路上节点一定是一个非空目录。

所以我们所有的对文件或者目录的增删改查,本质都是对这颗多叉树的增删改查。

所以我们定位一个文件,就通常用路径来进行定位。任何结点只有一个父节点。

路径定位:唯一性。

我们把从根目录/开始,到指定位置具有唯一性的路径叫做绝对路径

7aab51816b154a522c2aa19cd94bfa52

我们把以自己当前所处的路径为起始参照位置,来进行特定文件的定位我们这种路径叫做相对路径

但是一旦我所处的路径发生变化,可能相对路径就失效了。

  1. 绝对路径往往比较长,但是不变,一般在一些固定场景,配置文件中使用。
  2. 相对路径一般命令行输入,比较常用。

whoami:查看当前登录的用户

/rootroot用户的根目录

fe20d475a60193695dae0f540808e42b

然后我们退出Xshell,登录另外的普通用户。

Linux里面有两类用户:超级用户root,普通用户。

超级用户只能有1个,普通用户可以有多个。

/home/ydk_108ydk_108这个用户的家目录。

centos系统中,所有的普通用户的用户账号都会统一放在/home里面

72cdd920db570bdd9fce6a1206662ba1

cd ~:进入用户家目录

e65a386c037b14d1a5f35bcc430cff7e

cd -:返回上一次访问目录

ff0a8b4b1ef111e966b17e6050916c71


cd .. : 返回上级目录

cd /root/108_class/dir1/ : 绝对路径

cd ../day02/ : 相对路径

cd ~:进入用户家目录

cd -:返回上一次访问目录


2.2.3 touch指令

touch 文件名:创建普通文件

2876307a11293e48cc8feec7b9b173eb


2.2.4 mkdir指令

mkdir 目录名:创建文目录

0cca12a068b1b5be0000de86bdbb0833

这个在目录里面创建目录的步骤有点繁琐。

4a0e7d06c962b13d425f994d76e9aa76

我们可以这样搞:

首先安装树的图形化界面。(安装的时候需要登录root账号)

输入:yum -y install tree,回车

de283a229055aaccc7552a3350110fd6

下载完成后

8b02d03406c042aad524bba91472e3ec

我们可以看到,直接mkdir是无法递归创建目录的,但是加上-p就可以了

5cd4c8d8a2f289ce3f3c4d07db88a850


2.2.5 rmdir指令

rmdir 目录名:删除空目录

54d161db9304a78c827b8b7d01f33898

dir1被删了,d1却删不了


2.2.6 rm指令

rm 文件名/目录名:删除对应文件/目录

y/yes:表示确定删除n/no:表示不删除
58a3305238c52e03cc5c880dd776099d90b471c713ddfd9cb1933f9ba848bafc

如果我们不想写n/y呢?

我们可以加个-f,表示强制删除

e21e8fa444340866a825604f838fc34d


rm dir2无法直接删除,是因为dir2是目录,目录要加-r表示递归删除

094193ea1384809033c2b9dd30eea5c4

rm -r d1就可以递归删除d1目录以及d1目录里面的东西。

rm -rf d1就可以一键强力删除d1目录以及d1目录里面的东西。

655b441a40dc56c654e9f95cc5ed39a4

注意:Linux里面删除了就是删除了,不好恢复,所以强制删除要谨慎。

对于小白来说,删错了一些不该删的重要的东西(比如root目录下的所有东西),最快的方法是把系统重置一下。

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

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

相关文章

计算机Java项目|基于SpringBoot的精简博客系统的设计与实现

作者主页:编程指南针 作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参…

【目标检测】CFINet:通过由粗到精的区域提议网络和模仿学习进行小目标检测

《Small Object Detection via Coarse-to-fine Proposal Generation and Imitation Learning》 通过由粗到精的区域提议网络和模仿学习进行小目标检测 期刊:ICCV 2023 原文:https://arxiv.org/abs/2308.09534 源码:https://github.com/shauny…

Linux之HTTP服务器的构建

欢迎诸位来阅读在下的博文~ 在这里,在下会不定期发表一些浅薄的知识和经验,望诸位能与在下多多交流,共同努力! 江山如画,客心如若,欢迎到访,一展风采 文章目录 参考环境参考书籍一、HTTP的工作原理1. 建立连…

Windows 11上RTX 4090深度学习与大模型微调环境安装指南

【本文原作者:擎创科技资深产品专家 布博士】 在安装深度学习及大模型微调环境时,经历了多次反复操作(如CUDA、cuDNN、PyTorch的安装与卸载)。为了避免走弯路,总结了以下步骤: 步骤 1:显卡驱动…

11-sentinel利用nacos作持久化

本文介绍sentinel配置数据的持久化方法。由于sentinel官方并没有提供持久化功能,大家在测试过程中也能发现sentinel服务重启后,原来配置的数据就丢了,本文就是来处理这一问题的。 做好心理准备,我们要修改sentinel的源代码&#…

Qt消息对话框的实现

Widget.cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);this -> setWindowIcon(QIcon(":/picture/hp.jpg"));//设置窗口图标this -> setW…

Leetcode JAVA刷刷站(57)插入区间

一、题目概述 二、思路方向 为了解决这个问题,我们可以遍历给定的区间列表 intervals,并同时构建一个新的列表来存储最终的合并结果。遍历过程中,我们检查当前区间是否与 newInterval 重叠或相邻,并根据需要进行合并。如果不重叠…

2024新生训练营 8.20 做题活动

A 输出题罢了不讲直接看代码 #inlclude<stdio.h> int main() {printf("Eclipse First&#xff0c;the Rest Nowhere.");return 0; }B 首先要知道的是凡是大于1的整数要么是质数要么是合数&#xff0c;而1既不是质数也不是合数&#xff0c;题目问从0到n所有质数…

微信小程序--30(网络数据请求)

1.小程序中网络数据请求的限制 只能请求HTTPS类型的接口必须将接口的域名添加到信任列表中 2.配置request合法域名 需求描述 希望请求某个域名下的接口 步骤 登录小程序管理后台→开发→开发设置→服务器域名→修改request合法域名 练习 注意事项 域…

系统架构:分而治之

系统架构&#xff1a;分而治之 引言“分而治之”在架构中的应用模块化设计分层化架构微服务架构 分而治之的优势降低复杂性提高灵活性和可扩展性增强可维护性促进团队协作 分而治之的劣势复杂性转移性能开销开发和运维的复杂性数据一致性挑战 结论 引言 “分而治之”是一种分析…

wo是如何克服编程学习中的挫折感的?

你是如何克服编程学习中的挫折感的&#xff1f; 编程学习之路上&#xff0c;挫折感就像一道道难以逾越的高墙&#xff0c;让许多人望而却步。然而&#xff0c;真正的编程高手都曾在这条路上跌倒过、迷茫过&#xff0c;却最终找到了突破的方法。你是如何在Bug的迷宫中找到出口的…

QT基础知识4

思维导图 项目文件里面要加texttospeech模块 widget.h: #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTime>//时间类 #include <QTextToSpeech>//语音播报类QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass…

C:每日一练:单身狗(2.0版本)

前言&#xff1a; 今天在刷题的时候突然看到一道题&#xff0c;疑似一位故题。仔细一看&#xff0c;欸&#xff01;这不是就是单身狗的升级版吗&#xff1f;我想那必须再安排一篇&#xff0c;不过由于本篇文章与上一篇单身狗文章所涉及的知识点基本相同&#xff0c;所以还请大…

流媒体服务器二:2.RTMP协议学习

RTMP协议详解 一.总体介绍 RTMP协议是应⽤层协议&#xff0c;是要靠底层可靠的传输层协议&#xff08;通常是TCP&#xff09;来保证信息传输的可靠性的。在 基于传输层协议的链接建⽴完成后&#xff0c;RTMP协议也要客户端和服务器通过“握⼿”来建⽴基于传输层链接之 上的RT…

滴滴开源新项目Unify:聚焦Flutter与原生通信难题,助力跨端应用落地

引言 在移动开发领域&#xff0c;移动跨端技术因其提效收益&#xff0c;逐渐成为业界趋势之一。Flutter 作为近年来热门的跨端技术&#xff0c;以高性能、自渲染、泛跨端著称&#xff0c;得到广泛应用。在滴滴国际化业务中&#xff0c;我们大量应用 Flutter。目前已在滴滴国际化…

C语言-使用数组法,指针法实现将一个5X5的矩阵中最大的元素放在中心,四个角分别放四个最小的元素(顺序为从左到右,从上到下,从小到大存放),写一函数实现之。

1.题目要求&#xff1a; 将一个5X5的矩阵中最大的元素放在中心&#xff0c;四个角分别放四个最小的元素&#xff08;顺序为从左到右&#xff0c;从上到下&#xff0c;从小到大存放&#xff09;&#xff0c;写一函数实现之。 2.数组法实现 #define _CRT_SECURE_NO_WARNINGS 1…

python从入门到精通:数据容器

数据容器介绍 一种可以容纳多份数据的数据类型&#xff0c;容纳的每一份数据称之为一个元素&#xff0c;可以是任意类型的数据&#xff0c;如字符串、数字、布尔等。 数据容器根据特点的不同&#xff0c;如&#xff1a; 是否支持重复元素 是否可以修改 是否有序&#xff0…

数据库根据日期统计SQL编写记录

统计每天产生多少数据 SELECT to_char("日期字段",YYYY-MM-dd) time ,count(*) FROM "表名" GROUP BY time;统计每月产生多少数据 SELECT to_char("日期字段",YYYY-MM) time ,count(*) FROM "表名" GROUP BY time;统计每年产生多少数…

【GitLab】使用 Docker 安装 GitLab 1:配置 SSH 端口

使用 Docker 安装 GitLab 要求修改ssh端口 GitLab 使用 SSH 通过 SSH 与 Git 交互。默认情况下,GitLab 使用端口22。 要在使用 GitLab Docker 映像时使用其他端口,您可以执行以下操作之一: 更改服务器的 SSH 端口(推荐)。 更改 GitLab Shell SSH 端口。 更改服务器的 SSH …

C++(week17): C++提高:(七)workflow

文章目录 一、Http协议二、Nginx1.概念2.nginx的安装和部署(1)安装nginx(2)使用nginx服务器部署静态资源 3.HTTP服务器架构(1)基于进程、基于线程&#xff1a;APache(2)事件驱动模型&#xff1a;Nginx(3)反向代理(4)负载均衡 三、workflow异步事件引擎 (异步回调模型)1.服务器底…