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

Linux之旅:常用的指令,热键和权限管理

目录

前言

1. Linux指令

(1) ls

(2) pwd 和 cd

(3)touch 和 mkdir

(4) rmdir 和 rm

(5)cp

(6)mv

(7)man

(8)cat,more和less

(9)head 和 tail

(10)grep

(11)zip和unzip

(12)tar

1.2 热键

2. 权限管理

2.1 文件访问者

2.1 文件属性,文件类型和访问权限

2.3 权限值的表示方法

2.4 设置文件访问权限

2.5 粘滞位

总结


前言

本文将开启我的Linux之旅,主要讲述Linux中常用的指令,热键和权限管理。内容丰富,干货满满,适合新手学习!


1. Linux指令

(1) ls

作用:对于目录,列举出目录下的所有子目录与文件。对于文件,列举出文件名及其他信息。

用法:ls [目录或文件] [选项] (可以颠倒)

选项:

  • -a 列举出目录下的所有文件,包括以.开头的隐含文件。
  • -d 将目录像文件一样显示,而不是显示其下的文件。
  • -l 列出文件的详细信息。

 不加选项,显示当前目录下的文件与目录。

 加上-l选项,显示详细信息,其中ll是该命令的缩写。

 不同选项可以组合,下面显示了隐藏文件。

(2) pwd 和 cd

pwd

  • 作用:可以显示用户当前所在目录。
  • 无选项。

cd

作用:进入指定目录或文件。

用法:cd + [目录名]

  • 路径分绝对路径和相对路径。其中.代表当前目录,..代表上级目录。一开始使用的是绝对路径,第二个使用的是相对路径。

  • ~代表家目录,-会返回上次所在目录。一开始在doc目录下,cd+~到普通用户名目录,再cd+-返回doc目录。

(3)touch 和 mkdir

touch

作用:可以用来创建一个新文件。

用法:touch + [文件名]

mkdir

作用:可以在当前目录下创建一个新目录。

用法:mkdir + [目录名]

  • 选项:-p 后面可以跟路径,递归创建多个目录。当前目录下,有一个file.txt文件和doc1目录。使用mkdir加上-p选项,递归创建目录。通过tree指令,查看当前目录树状展开图,可以发现递归创建多级目录成功。

(4) rmdir 和 rm

rmdir跟mkdir是相对的,是remove directory的缩写,意思是删除目录。

作用:删除空目录

用法:rmdir + [目录名]

rm是remove的缩写,删除的意思。

作用:删除文件或者目录

用法:rm +[选项] + [文件或目录] (选项也可以放在文件或目录后面)

  • -r选项用来递归删除目录内部所有内容。当前目录下,有dir1/dir2/dir3这个路径,正常使用rm是无法删除一个目录的,需要加上-r选项,才能删除干净。

  • -f选项是force的缩写,强制删除。在root账号下,删除时通常会询问,如果不想弹出询问,可带上-f选项。

(5)cp

cp是copy的缩写。

作用:复制文件或者目录

用法:cp + [源文件或目录] + [目标文件或目录]

  • file.txt文件中有五行p字符。通过cp指令复制到hello.txt文件中,使用cat指令可以打印文件内容。

  • -r选项可以递归赋值某个目录内的所有内容,操作如下。

(6)mv

mv是move的缩写,可以移动文件和重命名文件。

用法:mv + [源文件或目录] + [目标文件或目录]

作用:

  • 当第二个参数不是路径,是一个名称时,可以给源文件或目录进行重命名。

  •  当第二个参数是已存在的路径(相对路径和绝对路径都可以),源文件或者目录可以有多个,mv指令会将指定的文件或目录全部移动到指定路径下。

 我们通过mv指令,将dir1目录和big.txt文件移动到doc目录下。

(7)man

Linux的命令有许多选项,我们不可能全部记住,man指令就是用来查找内容。

用法:man + [选项] +[指令]

通过man指令,查询ls指令的详细说明。

在man指令后加上数字,指定去那一部分查找信息。

  • 第1节:用户命令(User Commands)
  • 第2节:系统调用(System Calls)
  • 第3节:库函数(Library Calls)
  • 第4节:特殊文件(Special Files)
  • 第5节:文件格式和约定(File Formats and Conventions)
  • 第6节:游戏和娱乐(Games et. Al.)
  • 第7节:宏命令和约定(Miscellaneous)
  • 第8节:系统管理员命令(System Administration)

(8)cat,more和less

cat用来查看指定文件内容

用法:cat + [选项] + [文件名]

  • -n选项表示显示行号。

  • -b选项,对于非空行输出行号。

  • -s选型不输出多行空行。本来有两行空行,现在只输出一行。

more也是查看指定文件内容。

用法:more + [选项] + [文件名]

less指令十分强大,是more命令的改进版。

  • 分页显示less允许您一次查看文本文件的一部分,而不是一次性加载整个文件到内存,这对于查看大文件非常有用。
  • 随机访问:您可以向前或向后滚动文件,并且可以跳转到文件的特定位置。
  • 搜索功能:可以在文件中搜索特定的文本字符串。

输入指令时

  • -i 忽略搜索时的大小写
  • -N  显示每行的行号

进入less内部后

  • /:进入搜索模式,输入要搜索的字符串后按回车键。
  • n:跳转到下一个搜索结果。
  • N:跳转到上一个搜索结果。
  • q:退出less。

(9)head 和 tail

head用来实现文件开头内容到标准输出上,默认head打印指定文件前十行

用法:head + [选项] + [文件]

  • -n后面紧跟行号,表示需要显示的行数。

tail顾名思义是显示文件的尾部内容到标准输出,并且不断刷新,是你看到最新文件的内容。

用法:tail + [选项] + [文件]

  • -f 循环读取
  • -n后紧跟行号,表示读取的行数。

读取指定文件后10行的内容。

在big.txt中有1000行内容,怎么读取到到第100行的内容?

  • 方法一:先使用head读取前100行内容到一个临时文件中,使用‘’>‘’符号,这个操作叫做重定向。再从临时文件中,使用tail指令读取最后一行。

  • 方法二:使用"|"符号,叫做管道。把head和tail指令直接连接在一起,管道会把head指定内容存储起来,方便后面指令的使用。

(10)grep

grep可以在文件中搜索字符串,并打印出字符串所在行。

用法:grep + [选项] + [搜索字符串] + [文件]

  • -i选项,可以忽略字母大小写。file文件中有6行内容,查找“a”时,不管是大写还是小写都会显示。

 

  • -n选项,会显示匹配内容所在的行号。

  • -v选项会显示不匹配的内容。

  • -c选项会计算匹配内容的行数,并显示出来。

(11)zip和unzip

zip指令时将目录或者文件压缩zip格式,unzip就是解压zip格式的文件。

用法:zip + [选项] + [压缩后的文件名] + [目标文件或目录]

  • -r选项,递归处理,将指定目录下的所有文件和子目录一并处理。在当前目录下,doc目录中有许多文件和子目录,我们对他进行压缩。

 

  • -d选项是解压到指定目录,一般会解压到当前工作目录。

 

(12)tar

tar也是用来打包和解包的。

用法:tar + [-cvxzf] + [压缩的文件名]

  • -c :建立一个压缩文件的参数指令(create 的意思);
  • -x :解开一个压缩文件的参数指令!
  • -t :查看 tarfile 里面的文件!
  • -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
  • -v :压缩的过程中显示文件,这个常用,但不建议用在背景执行过程!
  • -f :使用档名,请留意,在 f 之后要立即接档名喔,不要再加参数!
  • -C : 解压到指定目录

一般来说,接cvzf即可。选项后面跟的是压缩后的文件名,.tgz是.tar.gz的缩略形式。

解压的话,将选项中的c换成x,去掉z即可。-C指定解压目录。

 

1.2 热键

[Tab]按键——具有命令补齐文件或目录名补齐的功能。

[Ctrl]-c按键——可以终止当前的程序,直接退出。

[Ctrl]-d按键——代表着键盘输入结束(End Of File)的意思,在某些情况下,可以直接退出回话。

2. 权限管理

2.1 文件访问者

  • 文件和文件目录的所有者:u--->User
  • 文件和文件目录的所有者所在的组的用户:g--->Group
  • 其他用户:o--->Others(外国人)

2.1 文件属性,文件类型和访问权限

文件的属性:

 

 

文件类型:

  • d:文件夹
  • -:普通文件
  • l:软链接(类似Windows的快捷方式)
  • b:块设备文件(例如硬盘、光驱等)
  • p:管道文件
  • c:字符设备文件(例如屏幕等串口设备)
  • s:套接口文件

基本权限:

  • 读(r):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限。
  • 写(w):Write对文件而言,具有修改文件内容的权限;对目录来说,具有删除移动目录内文件权限。
  • 执行(x):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限。
  • “-”表示不具有该项权限。

2.3 权限值的表示方法

rwx分别表示读写执行的权限,当没有权限时,用“-”表示。这只有两种形态,可以用二进制数0和1表示。所以这三个位置中有权限用1表示,无权限用0表示。

  • rwx代表111,相当于八进制7
  • rw- 代表110,相当于八进制6
  • r-x  代表101,相当于八进制5
  • r--   代表100,相当于八进制4
  • -wx 代表011,相当于八进制3
  • -w-  代表010,相当于八进制2
  • --x  代表001,相当于八进制1
  • ---   代表000,相当于八进制0

2.4 设置文件访问权限

chmod可以设置文件访问权限

用法:chmod + [选项] + [权限] + [文件或目录]

  • +:向权限范围增加权限代号所表示的权限
  • -:向权限范围取消权限代号所表示的权限
  • =:向权限范围赋予权限代号所表示的权限

用户符号: 

  • u:拥有者
  • g:拥有者同组用
  • o:其它用户
  • a:所有用户

chmod可以跟+-=结合改变不同对象的权限。

chmod指令与a结合可以改变三个对象的所有权限。

根据权限值的表示方法,可以直接写三位数字,每个数字都是八进制来设置权限。

umask是用来查看或修改文件掩码。

新建文件默认权限=0666,新建目录默认权限=0777。但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。因为会受到umask的影响,假设默认权限是tmp,那么实际创建出来的文件权限是tmp&(~umask)。

用法:umask + [权限值]

2.5 粘滞位

目录的权限:

  • 可执行权限(Execute permission): 如果目录没有可执行权限,则用户无法通过 cd 命令进入该目录。

  • 可读权限(Read permission): 如果目录没有可读权限,则用户无法使用 ls 命令列出目录中的文件和子目录。

  • 可写权限(Write permission): 如果目录没有可写权限,则用户无法在目录中创建新文件或子目录,也无法删除目录中的文件或子目录。

也就是说,在同一个目录下,只要有该目录的写权限,不管我是不是拥有这个文件的写权限,都可以删除文件或子目录。这不是一个BUG吗?

为了解决这样的事情,Linux中有粘滞位的概念。

目录使用chmod +t指令来设置粘滞位。设置完后,该目录下的文件只能由

  • 超级管理员删除
  • 该目录的所有者删除
  • 该文件的所有者删除


总结

通过本文,可以学习到一些Linux的皮毛知识。前路漫漫,任重道远!

创作不易,希望这篇文章能给你带来启发和帮助,如果喜欢这篇文章,请留下你的三连,你的支持的我最大的动力!!!

ee192b61bd234c87be9d198fb540140e.png

相关文章:

Linux之旅:常用的指令,热键和权限管理

目录 前言 1. Linux指令 (1) ls (2) pwd 和 cd (3)touch 和 mkdir (4) rmdir 和 rm (5)cp (6)mv (7)…...

简单实用的企业舆情安全解决方案

前言:企业舆情安全重要吗?其实很重要,尤其面对负面新闻,主动处理和应对,可以掌握主动权,避免股价下跌等,那么如何做使用简单实用的企业舆情解决方案呢? 背景 好了,提取词…...

【中项】系统集成项目管理工程师-第2章 信息技术发展-2.1信息技术及其发展-2.1.1计算机软硬件与2.1.2计算机网络

前言:系统集成项目管理工程师专业,现分享一些教材知识点。觉得文章还不错的喜欢点赞收藏的同时帮忙点点关注。 软考同样是国家人社部和工信部组织的国家级考试,全称为“全国计算机与软件专业技术资格(水平)考试”&…...

SpringBoot集成Sharding-JDBC-5.3.0实现按月动态建表分表

Sharding-JDBC系列 1、Sharding-JDBC分库分表的基本使用 2、Sharding-JDBC分库分表之SpringBoot分片策略 3、Sharding-JDBC分库分表之SpringBoot主从配置 4、SpringBoot集成Sharding-JDBC-5.3.0分库分表 5、SpringBoot集成Sharding-JDBC-5.3.0实现按月动态建表分表 前言 …...

ubuntu 上安装中文输入法

在Ubuntu上安装中文输入法,通常有以下几种方法: 方法一:使用Fcitx输入法框架和搜狗输入法 安装Fcitx: sudo apt update sudo apt install fcitx fcitx-bin fcitx-table-all 安装搜狗输入法: 首先,从搜狗…...

Postman导出excel文件

0 写在前面 在我们后端写接口的时候,前端页面还没有出来,我们就得先接口测试,在此记录下如何使用postman测试导出excel接口。 如果不会使用接口传参可以看我这篇博客如何使用Postman 1 方法一 2 方法二 3 写在末尾 虽然在代码中写入文件名…...

你还在手动构建Python项目吗?PyBuilder让一切自动化!

在 Python 项目开发中,构建和管理项目是一项繁琐但必不可少的工作。你可能需要处理依赖项、运行测试、生成文档等。这时候,PyBuilder 出场了。它是一个强大的构建自动化工具,可以帮助你简化项目管理,让你更专注于编写代码。 什么…...

WebRTC音视频-前言介绍

目录 效果预期 1:WebRTC相关简介 1.1:WebRTC和RTC 1.2:WebRTC前景和应用 2:WebRTC通话原理 2.1:媒体协商 2.2:网络协商 2.3:信令服务器 效果预期 1:WebRTC相关简介 1.1&…...

centos/rocky容器中安装xfce、xrdp记录

最近需要一台机器来测试rdp连接,使用容器linuxxfcexrdp来实现,在此记录下主要步骤 启动rockylinux容器(其他linux发行版步骤应该相似) docker run -it -p 33891:3389 rockylinux:9.3 bash容器内操作 # 省略替换软件源步骤 ...# …...

实战:Eureka的概念作用以及用法详解

概叙 什么是Eureka? Netflix Eureka 是一款由 Netflix 开源的基于 REST 服务的注册中心,用于提供服务发现功能。Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 进行了二次封装,主要负责…...

jupyter_contrib_nbextensions安装失败问题

目录 1.文件路径长度问题 2.jupyter不出现Nbextensions选项 1.文件路径长度问题 问题: could not create build\bdist.win-amd64\wheel\.\jupyter_contrib_nbextensions\nbextensions\contrib_nbextensions_help_item\contrib_nbextensions_help_item.yaml: No su…...

设计模式-Git-其他

目录 设计模式? 创建型模式 单例模式? 啥情况需要单例模式 实现单例模式的关键点? 常见的单例模式实现? 01、饿汉式如何实现单例? 02、懒汉式如何实现单例? 03、双重检查锁定如何实现单例&#xff…...

【C#】计算两条直线的交点坐标

问题描述 计算两条直线的交点坐标,可以理解为给定坐标P1、P2、P3、P4,形成两条线,返回这两条直线的交点坐标? 注意区分:这两条线是否垂直、是否平行。 代码实现 斜率解释 斜率是数学中的一个概念,特别是…...

在项目服务器部署git 并实现自动提交

以下场景适合在服务器当中使用git 方便提交代码,同时不需要外部的git仓库(码云gitee或者github作为管理平台)。依靠服务器本身ssh 连接协议做为git提交的地址,同时利用钩子自动同步项目代码 首先下载git sudo apt update sudo a…...

前缀匹配工具之IP-Prefix

目录 基本概念: 技术背景: 用户需求: 安全需求: 企业内部的访问控制需求: IP-Prefix的配置与语句分析: 调用方式: 尾声 基本概念: IP-Prefix,即IP前缀,相比传统ACL,它能…...

等级保护测评案例分享及合规建议

一、黑龙江省等级保护测评概述 黑龙江省等级保护测评(简称“等保测评”)是依据国家网络安全等级保护制度的要求,对信息系统进行安全等级划分和安全保护能力的评估。等保测评不仅能够帮助企业和组织发现潜在的安全风险,还能够指导…...

GOLLIE : ANNOTATION GUIDELINES IMPROVE ZERO-SHOT INFORMATION-EXTRACTION

文章目录 题目摘要引言方法实验消融研究 题目 Techgpt-2.0:解决知识图谱构建任务的大型语言模型项目 论文地址:https://arxiv.org/abs/2310.03668 摘要 大型语言模型 (LLM) 与指令调优相结合,在泛化到未见过的任务时取得了重大进展。然而,它…...

2024-07-19 Unity插件 Odin Inspector9 —— Validation Attributes

文章目录 1 说明2 验证特性2.1 AssetsOnly / SceneObjectsOnly2.2 ChildGameObjectsOnly2.3 DisallowModificationsIn2.4 FilePath2.5 FolderPath2.6 MaxValue / MinValue2.7 MinMaxSlider2.8 PropertyRange2.9 Required2.10 RequiredIn2.11 RequiredListLength2.12 ValidateIn…...

跨平台WPF音乐商店应用程序

目录 一 简介 二 设计思路 三 源码 一 简介 支持在线检索音乐,支持实时浏览当前收藏的音乐及音乐数据的持久化。 二 设计思路 采用MVVM架构,前后端分离,子界面弹出始终位于主界面的中心。 三 源码 视窗引导启动源码: namesp…...

设计模式简述(一)

定义:设计模式指的是在软件开发过程中,经过验证的,用于解决在特定环境下,重复出现的,特定问题的解决方案。创建型设计模式关注对象的创建过程,提供了更灵活、可扩展的对象创建机制。结构型设计模式用于解决…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

React Native 导航系统实战(React Navigation)

导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...

C++ 基础特性深度解析

目录 引言 一、命名空间(namespace) C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用(reference)​ C 中的引用​ 与 C 语言的对比​ 四、inline(内联函数…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...