Linux基础指令(三)

目录

shell

权限指令:

文件的操作权限:

对文件进行操作的用户分类:

用户对文件进行的操作分类:

所有者、所属组、其他的访问权限:

创建用户

沾滞位

匹配查找指令:

grep

find


shell

shell:本质是一类程序的统称。---命令行解释程序

功能:捕捉键盘的输入,进行解析,然后执行输入内容对应的指令程序,完成功能其实我们所敲的指令,大多都有对应的一个功能程序--shell指令程序。

例:

vim main.c

gcc main.c -o main

cp main/usr/bin/

此时直接运行main那么就可以直接运行main,指令都是放在usr/bin下的,可以自己编写后放入该目录。

操作系统设计者:

用户不能直接针对系统内核进行操作

  • 1、内核的设计晦涩难懂,难以操作
  • 2、容易导致系统崩溃

因此设计者提供了以下解决方案:

  • 操作系统内核,向上层提供操作接口,一个接口对应一个功能。
  • 接口的操作都是单一功能的操作,操作是受限的。
  • 操作系统所提供的接口本身也并不足够友好,操作性不强,所以更多人针对这些常见的功能场景,直接对接口进行封装实现了对应的功能程序。这时候,用户只需要运行指定的程序就能进行操作。

例如:我们执行的每一个指令,都可以在这里面找到,都对应了一个功能程序。在下面的目录中:

ls /usr/bin

可以看见其中还有ls,zip,man

设计者为了能够让操作系统知道用户要运行什么指令,设计者封装了shell

权限指令:

用户权限: 对用户进行系统操作权力限制。

系统设计者对于操作系统权限设计了两个层次:管理员&普通用户。

管理员:root

普通用户:管理员创建的用户

所有的普通用户都有权限的限制,无法在操作系统上进行系统级别的操作

su [username] 切换到指定用户

su root 切换到root用户

但是root用户不能随意使用。

因此通常都是需要权限的时候进行用户切换,切换也麻烦。所以设计了一个操作:用户操作提权功能(针对普通用户临时提升操作权限)

sudo 并不是一个指令,而是针对其他指令的提权操作

​​​​​​​

如果遇到这样的问题,那么需要通过visudo命令进行配置(需要管理员添加配置)

在这一行进行插入即可

文件的操作权限:

对文件进行操作的用户分类:

文件所有者:这个文件是谁的

文件所属组:这个文件属于哪个组

其他用户:除了所有者和所属组都是other

用户对文件进行的操作分类:

可读

可写

可执行

所有者、所属组、其他的访问权限:

chmod 修改文件的操作权限

chmod [augo] +/- [rwx] filename

a -- 所有用户

u -- user所有者

g -- group所属组

o -- other其他用户

同时也可以通过

chmod 633 filename 来进行操作(二进制)

在系统中,存在一个文件的默认创建权限掩码 -- 决定了一个文件默认创建出来所具备的权限。

umask

-S 人性化显示

-s 设置

777 &(-umask)即得,文件权限(-号,是取反)

chown 修改文件所有者

通常只有管理员才能进行

创建用户

useradd -m [zhangsan]

创建一个新用户

-m 同时为用户创建一个家目录,如果不加m就没有家目录

passwd [zhangsan] 为新用户设置密码

usermod -s 为新用户设置默认的shell

有bash和dash可以ls /bin/*sh

usermod -s/bin/bash [zhangsan]

chgrp 修改文件所属组

沾滞位

特殊权限位:沾滞位

用于设置目录针对其他用户的权限位,其他用户具备目录的可写权限,则可以在这个目录下创建文件,删除文件,但是这样存在风险。

沾滞位:在目录下可以创建文件,但是删除只能删除属于自己的文件。

匹配查找指令:

grep

grep         针对文件内容的字符串匹配操作

使用方式:

grep [想查找的关键字] [文件名如:/etc/passwd] 在passwd文件中查找包含指定字符串的行

-n         查找到包含指定字符串的行后,顺便打印对应的行号

-R         针对指定目录下的所有文件进行匹配

grep [关键字] /etc/ 后面接的就是目录,而不是行号

-i                  忽略大小写就行字符串匹配

-v                 匹配不包含的行

find

find              文件查找指令

-name         以文件名进行查找

-type           以文件类型进行查找

-size            以文件大小进行查找

-ctime -mtime -atime

(access最后访问的时间,modify最后的修改时间,chage最后的状态改变时间)以天为单位进行文件查找

-cmin -mmin -amin

find ./ -name"test"

查找当前目录下带test字符的文件,精确查找

find ./ -name"test*"

查找当前目录下带test字符的文件,模糊查找

  • 15
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Linux基础指令使用练习对于初学者来说非常重要。以下是一个简单的练习示例: 1. 打开终端:在桌面点击鼠标右键,选择“打开终端”或使用快捷键Ctrl+Alt+T打开终端。 2. 列出目录内容:使用"ls"命令列出当前目录的内容。例如,输入"ls"并按下回车键,可以看到当前目录下的文件和文件夹列表。 3. 切换目录:使用"cd"命令切换到其他目录。例如,输入"cd /home"并按下回车键,会切换到/home目录。 4. 创建目录:使用"mkdir"命令创建新的目录。例如,输入"mkdir test"并按下回车键,会在当前目录下创建一个名为"test"的目录。 5. 删除目录:使用"rmdir"命令删除空的目录。例如,输入"rmdir test"并按下回车键,会删除之前创建的"test"目录。 6. 复制文件:使用"cp"命令复制文件。例如,输入"cp file.txt new_file.txt"并按下回车键,会将名为"file.txt"的文件复制为"new_file.txt"。 7. 移动文件:使用"mv"命令移动文件或更改文件名。例如,输入"mv file.txt /home"并按下回车键,会将文件移动到/home目录。 8. 删除文件:使用"rm"命令删除文件。例如,输入"rm file.txt"并按下回车键,会删除名为"file.txt"的文件。 9. 显示文件内容:使用"cat"命令显示文件的内容。例如,输入"cat file.txt"并按下回车键,会将"file.txt"中的内容显示在终端上。 10. 查找文件:使用"find"命令查找指定名称的文件。例如,输入"find /home -name file.txt"并按下回车键,会在/home目录及其子目录下查找名为"file.txt"的文件。 这些练习可帮助您熟悉常用的Linux基础指令,加深对Linux系统的理解和使用能力。随着练习的进行,您将逐渐掌握更多的命令和技巧,提高您在Linux环境下的工作效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

KrisZhang10

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值