Linux学习-更新

发布时间 2023-04-26 10:24:20作者: chenyuanhang

Linux学习

1.下载与安装

2.基础命令

2.0 特殊符号

  • 通配符 * 搭配查询命令使用
  • 管道符 | 管道符左边命令的结果可以作为右边命令的输入
  • 重定向符 >和>> ,> 将左侧命令的结果,覆盖写入符号右侧指定的文件中,>> 将左侧命令结果,追加写入到符号右侧指定文件中

2.1 Linux命令基础格式

语法:command [-option] [parameter]

2.2 pwd 查看当前目录

2.3 cd:切换目录

cd # 回到当前用户的家目录

cd.. #回到上一级目录

cd ~ # 可用于表示用户家目录

cd /etc # 切换到/etc目录

cd - # 切换到跳转之前的上一次的目录

2.4 touch:创建文件

touch file1 # 创造文件

2.5 rm:删除文件

rm命令可用于删除文件、文件夹

语法:rm[-r -f] 参数1 参数2. 。。。参数N

  • -r 选项用于删除文件夹

  • -f 选项用于强制删除文件

rm命令支持通配符*,用来做模糊匹配

  • 符号*表示通配符,及匹配任意内容
  • *test 表示删除所有以test结尾的文件

2.6 ls:列出目标目录

ls:列出目标目录中的所有子目录和文件

格式:ls [选项] [目录名]
-a 用于显示所有文件和子目录(保罗点文件),展示出隐藏的内容
-l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来。
-r 将目录的内容清单以英文字母顺序的逆序显示。
-t 按文件修改时间进行排序,而不是按文件名进行排序。
-A 同-a,但不列出“.”(表示当前目录)和“..”(表示当前目录的父目录)。
-F 在列出的文件名和目录名后添加标志。例如,在可执行文件后添加“*”,在目录名后添加“/”以区分不同的类型。
-R 如果目标目录及其子目录中有文件,就列出所有的文件。
. 和..
. 表示当前目录
.. 表示父目录
文件类型
ls # 列出当前目录下的文件和目录
ls . # 列出当前目录下的文件和目录
ls .. # 列出当前目录的父目录下的文件和目录
ls /etc # 列出/etc目录下的文件和目录
ls -l # 以长格式显示文件信息

2.7 文件权限

rwxrwxr-- : 三组rwx 分别表示 所有者、所有组、其他人 的权限。
r : 表示可读, 可以用数字 4 来表示
w : 标识可写 ,可以用数字 2 来表示
x : 表示可执行 , 可以用数字 1 来表示

  • :表示没有相应权限 可以用数字 0 来表示

2.8 mkdir 创建目录

语法:mkdir [-p] Linux路径

-p 选项的作用

​ 可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

2.9 cat 查看文件内容

语法: cat Linux路径

2.10 more 查看文件内容

more 支持翻页,通常用于查看文件内容过多的文件

2.11 cp 复制文件文件夹

语法: cp [-r] 参数1 参数2

  • -r 选项,可选,用于复制文件夹使用,表示递归

  • 参数1,Linux路径,表示被复制的文件或文件夹

  • 参数2,Linux路径,表示要复制去的地方,复制过来的文件名等于参数2的名字

    image-20230425170334377

2.12 mv 移动文件或文件夹

语法 :mv 参数1 参数2

如果文件不存在,将会创造文件

2.13 su - root 切换到root用户

输入命令: su - root 并输入root密码,进入root账号登入

输入exit命令,返回普通用户

2.14 which 查找命令的所在的位置

例如:which cd

image-20230425221532692

2.15 find 按文件名查找文件

按文件名查找

​ 语法:find 起始路径 -name "被查找的文件名"

按文件大小查找

​ 语法:find 起始路径 -size +|- n[kMG]

  • +、-表示大于和小于
  • n表示大小数字
  • kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB
  • 例如:查找小于10KB的文件 find / -size -10k

支持使用通配符(*)

2.16 grep 从文件中通过关键字过滤文件行

语法:grep [-n] 关键字 文件路径

只显示包含关键字的所在行

  • 选项-n ,可选,表示在结果中显示匹配的行的行号
  • 参数,关键字,必填,表示过滤的关键字,带有空格或其他特殊符号,使用""把关键字包起来
  • 参数,文件路径,可以作为管道符的输入

2.17 wc命令做数量统计

可以通过wc命令统计文件的行数、单词数量

语法:wc[-c -m -l -w] 文件路径

  • -c,统计bytes数量

  • -m,统计字符数量

  • -l,统计行数

  • -w,统计单词数量

  • 参数,文件路径,被统计的文件,可以作为管道符的输入

2.18 echo 在命令行内输出指定内容

  • 无需选项,只有一个参数,表示要输出的内容
  • 例如:echo "hello world" 用双引号把字符串包起来
  • echo pwd 被反引号包围的内容将会被作为命令执行

2.19 tail 查看文件尾部内容,并可持续跟踪

  • 查看文件尾部内容,并可持续跟踪
  • 语法: tail [-f -num] Linux路径
  • -f 设置查看尾部多少行,默认10行,可持续跟踪
  • linux路径表示被查看的文件

其他命令

  • Ctrl + c 强制停止命令行输出

3.用户权限

3.0 Linux系统的超级管理员(root用户)

如何切换用户?如何设置root用户?

3.1 su和exit命令

su命令就是用于账户切换的系统命令(Switch User)

语法: su [-] [用户名]

  • -符号是可选的,表示是否在切换用户后加载环境变量

  • 参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到root

  • 切换用户后,可以通过exit命令退回上一个用户,也可使用快捷键ctrl + d

  • 使用普通用户,切换到其他用户需要输入密码

  • 使用root用户,切换其他用户无需输入密码

3.2 sudo命令

使用sudo命令,为普通的命令授权,临时赋予root授权

语法 : sudo 其他命令

  • 在其他命令之前,带上sudo,即可为这一条命令临时赋予root权限
  • 需要为普通用户配置sudo认知,才能使用sudo

为普通用户配置sudo认证

  1. 切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers

  2. 在文件的最后添加: itchen ALL=(ALL) NOPASSWD: ALL

    • 其中最后的NOPASSWD:ALL表示sudo命令,无需输入密码
  3. 最后通过wq保存

  4. 切换会普通用户

  5. 执行的命令,均以root运行

3.3 创建root用户的密码

3.3.1 背景

在安装Ubuntu系统时并没有设置root的密码,登录的时候也没有使用root账户。
当我们输入su命令,切换到root用户时候,会提示认证失败!

3.3.2 创建root用户的密码

给root创建一个密码,输入:sudo passwd root
看准提示进行输入,root的密码最好和其他用户的密码不同,以增加其安全性!

4.Linux文件

Linux系统中一切皆文件

image-20230424173044857

Linux文件是正斜杠(/)路径,这才是正确的路径,而计算机使用反斜杠(\),这其实是不对的

因为(\)有表示转义字符的意思

在用windows时我们在进行一些配置时,有时候会用(\\)或者(/)来写路径,而不是直接用(\)

5.文件目录

bin目录放一些二进制命令

6.FinalShell连接Linux

6.1在Linux终端中输入ifconfig获取IP地址

image-20230425104210004

inet 192.168.40.130 这一行的数字就是ip地址

6.2打开FinalShell新建连接,把主机名(IP),用户名,密码输入连接就行了

image-20230425104307937

7. vi\vim编辑器

7.1 什么是vi、vim编辑器?

  • vi\vim编辑器就命令行下的文本编辑器,用来编辑文件
  • vim是vi的升级版,一般用vim就行,包含vi所有内容

7.2 基础命令

  • vim 文件路径
  • vi 文件路径

7.3 三种工作模式

image-20230426083042459

  • 命令模式: 默认进入命令模式,通过键盘快捷键控制文件内容

  • 输入模式:在命令模式中按 i 进入输入模式,对文件内容进行编辑,按 esc 退回命令模式

  • 底线命令模式:在命令模式中按冒号(:)进入,可以对文件进行保存、关闭等操作,输入wq进行保存并退出