【Linux】常见指令以及权限理解

使用XShell远程登录Linux

XShell下的复制粘贴

Ctrl + c/v行不通,要改成:

复制:Ctrl + Fn + Ins(F12)

粘贴:Shift + Fn + Ins(F12)

Linux下基本指令

01. ls指令(list)

  1. 对于目录,该命令列出该目录下的所有子目录与文件。
  2. 对于文件,列出文件名以及其他信息。
  • ls -a 列出目录下的所有文件,包括以 . 开头的隐藏文件

Linux任何一个目录下都有两个隐藏文件:

..:表示当前路径的上级路径

.:表示当前路径

  • ls -d 将目录像文件一样显示,而不是显示其下的文件

比如显示指定目录的名称:

  • ls -l 列出文件的详细信息(文件的全部属性),等价于ll

上图框出来的表示文件的类型:

d:是一个目录

-:是一个普通文件

* 为通配符,ls *可以匹配所有文件

02. pwd命令(Print Working Directory)

显示用户当前所在的目录

/ 称为路径分隔符

最前面的一个 / 是Linux的根目录

03. cd命令(Change Directory)

Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。

从 / 开始定位到指定位置,具有唯一性的路径,称为绝对路径。

以当前所处的路径为起始参照位置,称为相对路径。

  • cd ..:返回上级目录
  • cd /home/yf/2024/lesson8:绝对路径

  • cd ./lesson8:相对路径

  • cd ~:进入用户家目录

04. touch指令

新建普通文件

05. mkdir指令

在当前目录下创建目录

  • mkdir -p:递归创建多个目录

06. rmdir指令 && rm指令

  1. rmdir:删除空目录
  2. rm:删除文件或目录
  • rm -f:即使文件属性为只读(即写保护),也直接删除
  • rm -i:删除前逐一询问确认
  • rm -r:递归删除目录及其下所有文件

07. man指令

查找手册获取帮助

  • man num:只在第num章节找

man手册分为8章:

1 是普通的命令

2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)

3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件

5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义

6 是给游戏留的,由各个游戏自己定义

7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明

8 是系统管理用的命令,这些命令只能由root使用,如ifconfig

08. cp指令

复制文件或目录

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

小知识点echo:

>:输出重定向(将本来应该显示到显示器的内容打印到文件中)

向目标文件写入的时候:先清空文件,再写入新内容

>>:追加重定向

09. mv指令

可以用来移动文件或者将文件改名(剪切并重命名

10. cat

查看目标文件的内容(不适合查看大文本)

11. more指令

more命令,功能类似cat

12. less指令

  1. less 工具也是对文件或其它输出进行分页显示的工具
  2. less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看
  3. 但若使用了 less 时,就可以使用 [pageup](上箭头)[pagedown](下箭头) 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容。
  • less -N:显示每行的行号
  • q:quit

13. head指令

head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。

  • head -n<行数>:显示行数

14. tail指令

用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

  • tail -n<行数>:显示行数

练习:一个文件共有100行内容,请取出第50行内容

  • 方法1:

先将前50行放入临时文件tmp中

用tail得到最后一行的内容

  • 方法2:

管道,head -50 log.txt的输出将作为tail -1的输入,不需要临时文件

15. 时间相关的指令:date显示

  • date 指定格式显示时间

  • 时间转化为时间戳

  • 时间戳转化为时间

Unix 时间戳(英文为 Unix epoch, Unix time, POSIX time Unix timestamp )是从 1970 1 1 日( UTC/GMT 的 午夜)开始所经过的秒数,不考虑闰秒。

16. find指令

用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)

  • find -name:按照文件名查找文件

~表示当前用户的主目录,也就是/home/yf

还有两种查找指令:

  1. which可以在指令路径下(/usr/bin)搜索指令文件

  2. whereis:在系统特定的路径下查找,既可以找到可执行程序,又可以找到手册,安装包,压缩包等

17. grep指令

语法: grep [选项] 搜寻字符串 文件

在文件中搜索字符串,将找到的行打印出来

  • grep -i:忽略大小写的不同
  • grep -n:顺便输出行号

  • greap -v:反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行

18. zip/unzip指令

语法: zip 压缩文件.zip 目录或文件

将目录或文件压缩成zip格式

  • zip -r:递归处理,将指定目录下的所有文件和子目录一并处理

解压到tmp目录:

  • unzip -d:指定解压缩后的文件将放置的目标目录

19. tar指令:打包/解包,不打开它,直接看内容

打包并压缩:

预览:

解压和解包:

  • tar -C:解压到指定目录

.tar 打包后缀

.gz 压缩后缀

完整的后缀是 XXX.tar.gz 简称 XXX.tgz

20. uname指令

uname用来获取电脑和操作系统的相关信息

  • uname -a/-all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

补充:

top指令:Linux下查看CPU占用。

shell命令以及运行原理

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel)“ ,但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel?

从技术角度,Shell的最简单定义:命令行解释器(command Interpreter)主要包含:

  • 将使用者的命令翻译给核心(kernel)处理。

  • 同时,将核心的处理结果翻译给使用者。

对比windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作。

shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。

Linux权限的概念

Linux下有两种用户:超级用户(root)、普通用户。

  • 超级用户:可以在linux系统下做任何事情,不受限制
  • 普通用户:在linux下做有限的事情
  • 超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。

这两个用户之间怎么切换呢?

  • su / su - user
  • exit / Ctrl+d(退回)
  • 如果要暂时对一条命令提权:sudo command

Linux权限管理

1. 文件访问者的分类(人)

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

2. 文件类型和访问权限(事物属性)

3. 文件权限值的表示方法

a)字符表示方法

b)8进制数值表示方法

4. 文件访问权限的相关设置方法

a)chomd

格式:chmod [参数] 权限 文件名

 chmod命令权限的格式:

① 用户表示符+/-=权限字符
+向权限范围增加权限代号所表示的权限
-向权限范围取消权限代号所表示的权限
=向权限范围赋予权限代号所表示的权限

用户符号:

u拥有者,g拥有者所在组,o其他用户,a所有用户

 ②三位8进制数字

 b)umask:查看或修改文件掩码

每个文件都有起始权限:

普通文件664

目录文件775

但其实:

新建文件默认权限=0666

新建目录默认权限=0777

默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask

超级用户默认掩码值为0022,普通用户默认为0002

补充:

粘滞位:在设置的沾滞位的目录下,其它用户可以创建文件,但是只能删除自己的文件,不可以删除别人的文件。

如果要在 /tmp 目录上设置粘滞位:chmod  +t /tmp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值