当前位置:   article > 正文

黑马程序员Linux学习笔记_黑马linux笔记

黑马linux笔记

1 Linux基础命令

1.1 Linux的目录结构

在这里插入图片描述

  • Linux只有一个顶级目录,称之为:根目录
  • Windows系统有多个顶级目录,即各个盘符
  • /在Linux系统中:出现在开头的/表示:根目录,出现在后面的/表示:层次关系

在这里插入图片描述

1.2 Linux命令入门

  • Linux命令基础格式:command [-options] [paremeter]
  • command: 命令本身
  • options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
  • parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等
ls [-a -l -h] [Linux路径]
  • 1
  • -a列出全部内容(包括隐藏文件)
  • -l以列表展示
  • -h大小显示(文件大小出现单位)
  • ls命令选项的组合使用
  • 当前工作目录和HOME目录

Linux终端(命令行)启动后默认价值HOME目录作为当前工作的目录
HOME目录指:用户在系统内的专属目录

  • 以.开头的,表示是Linux系统的隐藏文件/文件夹(只要以.开头,就能自动隐藏)

1.3 目录切换相关命令(cd/pwd)

  • cd命令来自英文:Change Directory
cd [Linux路径]
  • 1
  • cd命令无需选项,只有参数,表示要切换到哪个目录下
  • cd命令直接执行,不写参数,表示回到用户的HOME目录
  • pwd命令来自:Print Work Directory
  • 查看当前所在的工作目录
pwd
  • 1
  • pwd命令,无选项,无参数,直接输入pwd即可

1.4 相对路径、绝对路径和特殊路径符

  • 绝对路径:以根目录为起点路径描述以/开头
  • 相对路径:以当前目录为起点路径描述无需以/开头
  • 特殊路径符:
  • . / :表示当前目录
  • . ./ :表示上一级目录
  • ~ / :表示HOME目录

1.5 创建目录命令(mkdir)

  • mkdir来自英文:Make Directory
mkdir [] Linux路径
  • 1
  • 参数必填,表示要创建的目录的路径,相对、绝对、特殊路径符都可以使用
  • -p选项的作用:可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

1.6 文件操作命令part1(touch、cat、more)

  • touch:创建文件
touch [Linux路径]
  • 1
  • 参数必填,表示要创建的文件的路径,相对、绝对、特殊路径符都可以使用
  • cat:查看文件内容
cat [Linux路径]
  • 1
  • 参数必填,表示要查看的文件的路径,相对、绝对、特殊路径符都可以使用
  • more:查看文件内容,可翻页查看
more [Linux路径]
  • 1
  • 参数必填,表示要查看的文件的路径,相对、绝对、特殊路径符都可以使用

1.7 文件操作命令part2(cp、mv、rm)

  • cp :用于复制文件或文件夹
  • -r选项,可选,用于复制文件夹使用,表示递归
  • 参数1,Linux路径,表示被复制的文件或文件夹
  • 参数2,Linux路径,表示要复制去的地方(可以直接更改文件名字)
cp [-r] 参数1 参数2
  • 1
  • mv:用于移动文件或文件夹
  • 参数1,Linux路径,表示被移动的文件或文件夹
  • 参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在
mv 参数1 参数2
  • 1
  • rm:删除文件或文件夹
  • -r选项,可选,用于文件夹删除
  • -f选项,可选,用于强制删除(不提示,一般用于root用户)
  • 参数,表示被删除的文件或文件夹路径,支持多个,空格隔开
  • 参数也支持通配符 *,用以做模糊匹配
rm [-r -f] 参数1 参数2 ...... 参数N
  • 1

1.8 查找命令(which、find)

  • which:查看所使用的一系列命令的程序文件存放在哪里
  • 无需选项,只需要参数表示查找哪个命令
which 要查找的命令
  • 1
  • find:查找指定的文件
  • 支持通配符
find 起始路径 -name "被查找的文件名"
find 起始路径 -size +|-n[kMG]
  • 1
  • 2
  • +、- 表示大于和小于
  • n表示大小数字
  • kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB

1.9 grep、wc和管道符

  • grep:从文件中通过关键字过滤文件行
  • 选项-n,可选,表示在结果中显示匹配的行的行号
  • 参数,关键字,必填,表示过滤的关键字,建议使用 ” ” 将关键字包围起来
  • 参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口
grep [-n] 关键字 文件路径
  • 1
  • wc:做数量统计
  • 选项,-c,统计bytes数量(char)
  • 选项,-m,统计字符数量(symbol)
  • 选项,-l,统计行数(line)
  • 选项,-w,统计单词数量(word)
  • 参数,文件路径,被统计的文件,可作为内容输入端口
wc [-c -m -l -w] 文件路径
  • 1
  • 不带选项,统计文件
    在这里插入图片描述
  • 管道符:|
  • 将管道符左边命令的结果,作为右边命令的输入
  • 可以嵌套使用
    在这里插入图片描述

1.10 echo、tail和重定向符

  • echo:在命令行内输出指定内容
  • 无需选项,只有一个参数,表示要输出的内容,复杂内容可以用 ” ” 包围
echo 要输出的内容
  • 1
  • 反引号 ``
  • 被 `` 包围的内容,会被作为命令执行,而非普通字符
    在这里插入图片描述
  • 重定向符:>和>>

标志:> :将左侧命令的结果,覆盖写入到符号右侧指定的文件中
标志:>> :将左侧命令的结果,追加写入到符号右侧指定的文件中

  • tail:可以查看文件尾部内容,跟踪文件的最新更改
  • 参数,Linux路径,表示被跟踪的文件路径
  • 选项,-f,表示持续跟踪
  • 选项, -num,表示,查看尾部多少行,不填默认10行
tail [-f -num] Linux路径
  • 1

1.11 vim编辑器

在这里插入图片描述

  • 命令模式:所敲的按键编辑器理解为命令,以命令驱动执行不同的功能,不能进行文本编辑
  • 输入模式:编辑模式、插入模式。此模式下,可以对文件内容进行自由编辑
  • 底线命令模式以:开始,通常用于文件的保存、退出
vim 文件路径
  • 1
  • 如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
  • 如果文件路径表示的文件存在,那么此命令用于编辑已有文件
    在这里插入图片描述
  • 命令模式快捷键

pageup:向上翻页
pagedown:向下翻页
/:进入搜索模式
dd:删除光标所在行的内容
yy:复制当前行
gg:跳到文件首行
G:跳到文件末尾

补充:关于命令选项的说明

  • 查看命令帮助和手册
  • 任何命令都支持:- -help 选项, 可以通过这个选项,查看命令的帮助
  • 帮助文档会简单的对命令的使用方式进行说明
ls --help
cd --help
  • 1
  • 2
  • 查看命令的详细手册,可以通过man命令查看
man ls
man cd
  • 1
  • 2

2 Linux用户和权限

2.1 认知root用户

  • 在Linux系统中,拥有最大权限的账户名为:root(超级管理员)
  • 而在前期,一直使用的账户是普通的用户:itheima

普通用户的权限,一般在其HOME目录内是不受限的
一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限

2.2 su和exit命令

  • su:用于账户切换的系统命令,其来源英文单词:Switch User
  • -符号是可选的,表示是否在切换用户后加载环境变量,建议带上
  • 参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到root
  • 切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl + d
-- 中间用空格隔开
su [-] [用户名]
  • 1
  • 2

使用普通用户,切换到其它用户需要输入密码,如切换到root用户
使用root用户切换到其它用户,无需密码,可以直接切换

  • sudo:为普通的命令授权,临时以root身份执行
  • 并不是所有的用户,都有权利使用sudo,我们需要为普通用户配置sudo认证
  • 为普通用户配置sudo认证(root用户下)

1、切换到root用户
2、执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers
3、在文件的最后添加:itheima(用户名) ALL=(ALL) NOPASSWS:ALL
4、最后通过 wq 保存
5、切换回普通用户,执行的命令,均以root运行

2.3 用户、用户组管理

2.3.1 用户组

  • Linux系统中可以:配置多个用户、配置多个用户组、用户可以加入多个用户组中
  • Linux中关于权限的管控级别有2个级别,分别是:
  • 针对用户的权限控制
  • 针对用户组的权限控制
  • 以下命令需root用户执行
groupadd 用户组名
groupdel 用户组名
  • 1
  • 2

2.3.2 用户

  • 以下命令需root用户执行
  • 创建用户
  • 选项:-g指定用户的组,不指定-g,会创建同名组并自动加入
  • 选项:-d指定用户HOME路径,不指定,HOME目录默认在:/home/用户名
useradd [-g -d] 用户名
  • 1
  • 删除用户
  • 选项:-r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留
userdel [-r] 用户名
  • 1
  • 查看用户所属组
  • 参数:用户名,被查看的用户,如果不提供则查看自身
id [用户名]
  • 1
  • 修改用户所属组,将指定用户加入指定用户组
usermod -aG 用户组 用户名
  • 1
  • getent:可以查看当前系统中有哪些用户
  • 共有7份信息,用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)
getent passwd
  • 1

在这里插入图片描述

  • getent:查看当前系统中有哪些用户组
  • 包含3份信息,组名称:组认证(显示为x):组ID
getent group
  • 1

2.4查看权限控制

  • 认知权限信息
  • 序号1,表示文件、文件夹的权限控制信息
  • 序号2,表示文件、文件夹所属用户
  • 序号3,表示文件、文件夹所属用户组
    在这里插入图片描述
  • 权限细节总共分为10个槽位
    在这里插入图片描述
    在这里插入图片描述

2.5 修改权限控制 - chmod

  • chmod:修改文件、文件夹的权限信息
  • 注意,只有文件、文件夹的所属用户或root用户可以修改
  • 选项:-R,对文件夹内的全部内容应用同样的操作
chmod [-R] 权限 文件或文件夹路径
  • 1
  • 权限的数字序号
    在这里插入图片描述

2.6 修改权限控制 - chown

  • chown:修改文件、文件夹的所属用户和用户组
  • 普通用户无法修改所属为其它用户或组,所以此命令只适用于root用户执行
  • 选项,-R,同chmod,对文件夹内全部内容应用相同规则
  • 选项,用户,修改所属用户
  • 选项,用户组,修改所属用户组
  • : 用于分隔用户和用户组
chown [-R] [用户][:][用户组] 文件或文件夹
  • 1
  • 实例
    在这里插入图片描述
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/469467
推荐阅读
相关标签
  

闽ICP备14008679号