Linux学习笔记

目录

1. Linux目录结构

2. Linux命令

2.1 Linux命令基础

2.2 Linux命令入门

2.3 Linux命令的参数与选项

3. 目录切换相关命令

3.1 cd切换工作目录

3.2 pwd展示当前工作目录

4. 相对路径、绝对路径和特殊路径符

5. mkdir命令

6. 文件操作命令

6.1 touch创建文件

6.2 cat、more查看文件内容

7. -cp-mv-rm命令

7.1 cp复制文件、文件夹

7.2 mv移动文件、文件夹

7.3 rm删除文件、文件夹

8. -which-find命令

9. -grep-wc-管道符

9.1 grep命令过滤文件内容

9.2 wc命令统计内容数量

9.3 |管道符概念与应用

10. -echo-tail-重定向符

10.1 -echo命令输出内容

10.2 反引号`的使用

10.3 tail命令跟踪文件更改

10.4 重定向符号的使用

11. root用户

11.1 定义

11.2 用户切换命令

11.3 sudo命令

12. 用户和用户组

12.1 定义

12.2 相关命令

用户组管理

用户管理

12. 权限控制信息

12.1 Linux文件的权限管控信息

12.2 读、写、执行三种权限的含义

13. -chmod命令

13.1 chmod修改权限信息

13.2 使用数字序号标记权限

14. -chown命令

15. 快捷键

15.1 强制停止

15.2 退出或登出

15.3 历史命令搜索

15.4 光标移动快捷键

15.5 清屏


1. Linux目录结构

Linux的目录结构是树形结构

Linux没有盘符,只有根目录/,所有文件都在/下

例如:

Linux:/user/local/hello.txt

Win:D:\user\local\hello.txt

2. Linux命令

2.1 Linux命令基础

Linux命令通用格式:

command [-options][parameter]
  • command:命令本身

  • -options:可选项,控制命令的行为细节

  • parameter:可选项,命令的参数

例如:

ls -l /user/data

ls是命令,-l是选项,/user/data是参数

cp -r test1 test2

cp是命令本身,-r是选项,test1test2是参数

2.2 Linux命令入门

ls命令语法细节:

ls [-a -l -h][path]

当不使用选项和参数,以平铺形式列出当前工作目录下的内容

默认设置在home目录

2.3 Linux命令的参数与选项

ls命令语法细节:

ls [-a -l -h][path]
  • -a:all,列出全部文件(包括隐藏文件)

  • -l:以列表(竖向排列)的形式展示内容,并展示更多信息

  • -h:以易于阅读的形式列出文件的大小,必须与-l组合使用

ls命令选项的组合使用

ls -l -a
ls -la
ls -al

3. 目录切换相关命令

3.1 cd切换工作目录

cd命令语法细节:

cd [path]
  • cd无需选项,只有参数

  • cd没有参数时回到home目录

3.2 pwd展示当前工作目录

pwd命令语法细节:

pwd
  • 无选项、无参数

4. 相对路径、绝对路径和特殊路径符

绝对路径:以根目录为起点,以/开头

相对路径:以当前目录为起点

特殊路径符

. :表示当前目录,例如下面效果一致

cd ./Desktop
cd Desktop

.. :表示上一级目录,例如

cd .. 

表示切换到上一级目录;

cd ../..

表示切换到上两级目录

~ :表示home目录,例如

cd ~

切换到home目录;

cd ~/Desktop

切换到home内的Desktop目录

5. mkdir命令

mkdir命令语法细节:

mkdir [-p][path]
  • 参数必填,即要创建的文件夹的路径,相对路径和绝对路径均可

  • 选项可选,表示自动创建不存在的父目录,用于创建多层目录

6. 文件操作命令

6.1 touch创建文件

touch命令语法细节:

touch [path]
  • 参数必填,相对路径和绝对路径均可

  • 无选项

6.2 cat、more查看文件内容

cat命令语法细节:

cat [path]
  • 参数必填,相对路径和绝对路径均可

  • 无选项

more命令语法细节:

more [path]
  • 参数必填,相对路径和绝对路径均可

  • 无选项

  • 空格翻页

  • q退出查看

区别

  • cat直接将内容全部显示

  • more支持翻页,如果内容过多可一页页展示

7. -cp-mv-rm命令

7.1 cp复制文件、文件夹

cp命令语法细节:

cp [-r][path1][path2]
  • -r选项,可选,用于复制文件夹使用,表示递归

  • path1,被复制的地址

  • path2,要复制到的地址

7.2 mv移动文件、文件夹

mv命令语法细节:

mv [path1][path2]
  • path1,被移动的地址

  • path2,要移动到的地址

7.3 rm删除文件、文件夹

rm命令语法细节:

rm [-r -f][path1...N]
  • -r用于删除文件夹

  • -f表示强制删除

  • path1...N表示要删除的文件或文件夹的路径,以空格隔开

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

  • *表示通配符,即匹配任意内容(包含空)

  • test*表示任意以test开头的内容

  • *test表示任意以test结尾的内容

8. -which-find命令

which命令语法细节:

which [cmd_name]

用于查找命令的程序文件放在那里

find命令语法细节:

  1. 按文件名查找

find [ori_path][-name "file_name"]

用于查找指定文件,例如:

find / -name "test"

表示从根目录开始搜素名为test的文件

find命令支持通配符*,用于模糊匹配

  • *表示通配符,即匹配任意内容(包含空)

  • test*表示任意以test开头的内容

  • *test表示任意以test结尾的内容

  1. 按文件大小查找

find [ori_path][-size + |-n[KMG]]
  • +、-表示大于、小于

  • n表示大小数字

  • KMG表示大小单位

例如:

find / -size -10k
find / -size +100M

9. -grep-wc-管道符

9.1 grep命令过滤文件内容

grep命令语法细节:

grep [-n][key][path]
  • -n可选,表示结构中显示匹配的行的行号

  • key,必填,表示过滤的关键字

  • path,必填,表示要过滤的内容的文件路径,可作为内容输入端口

9.2 wc命令统计内容数量

wc命令语法细节:

wc [-c -m -l -w][path]
  • -c,统计bytes数量

  • -m,统计字符数量

  • -l,统计行数

  • -w,统计单词数量

  • path,被统计的文件的路径,可作为内容输入端口

9.3 |管道符概念与应用

含义:

将管道符左边命令的结果,作为右边命令的输入

例如:

cat test.txt | grep key_words

10. -echo-tail-重定向符

10.1 -echo命令输出内容

echo命令语法细节:

echo [output]

用于在命令行打印指定内容,例如:

echo "Hello World"

10.2 反引号`的使用

被``包围的内容会作为命令执行,例如:

echo `pwd` 

将打印pwd的返回结果

10.3 tail命令跟踪文件更改

tail命令语法细节:

tail [-f -num][path]
  • -f,表示持续跟踪

  • -num,表示查看尾部多少行,默认10行

  • path表示被跟踪的文件路径

10.4 重定向符号的使用

">",将左侧命令的结果,覆盖写入右侧指定文件中

">>",将左侧命令的结果,追加写入右侧指定文件中

例如:

echo "hello" > test.txt
ls > test.txt
echo "hello" >> test.txt

11. root用户

11.1 定义

Linux系统中,拥有最大权限的账户是root(超级管理员)

root用户拥有最大的系统操作权限,而普通用户在许多操作受限

普通用户的权限一般在home目录内不受限,home目录外普通用户一般仅有只读执行权限,无修改权限

例如:root可以在根目录下创建文件夹,而普通用户不行

11.2 用户切换命令

su命令语法细节:

su [-][user_name]
  • -符号可选,表示是否切换用户后加载环境变量,建议选上

  • 用户名表示要切换的用户,省略后默认切换到root

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

11.3 sudo命令

sudo命令语法细节:

sudo [other_cmd]
  • sudo为普通的命令授权,临时以root身份执行

  • 在其他命令前+sudo,即可为命令临时赋予root权限

  • 不是所有用户都有权使用sodo,需要为普通用户配置sudo认证

为普通用户配置sudo认证:

  • 切换到root用户,执行visudo命令

  • 先按G,跳转到最后一行,再按o,在文件最后添加

  • username ALL=(ALL) NOPASSWD:ALL

  • 最后通过wq保存退出

12. 用户和用户组

12.1 定义

Linux系统可以:

  • 配置多个用户

  • 配置多个用户组

  • 用户可以加入多个用户组中

Linux关于权限的管控级别有2个,分别是:

  • 针对用户的权限控制

  • 针对用户组的权限控制

12.2 相关命令

用户组管理

以下命令需要root用户执行

  1. 创建用户组

    groupadd [name]
  2. 删除除用户组

    ​​​​​​​groupdel [name]

用户管理

以下命令需要root用户执行

1. 创建用户

useradd [-g -d][name]
  • -g指定用户的组,不指定会创建同名组并自动加入,指定-g需组已存在,如已存在同名组,必须使用-g

  • -d指定用户home路径,不制动,home目录默认在/home/username

2. 删除用户

userdl [-r][name]
  • -r用于删除用户的home目录,不使用-r删除用户时,home目录保留

3. 查看用户所属组

id [name]
  • 用户名,被查看的用户

4. 修改用户所属组

usermod -aG
  • aG表示用户组,用户名

  • 将指定用户加入指定用户组

5. 查看当前系统有哪些用户

gatent passwd
  • 共返回7份信息,分别是:

  • 用户名:密码:用户ID:组ID:描述信息:home目录:执行终端

6. 查看当前系统有哪些用户组

getent group
  • 共返回3份信息,分别是:

  • 组名:组认证:组ID

12. 权限控制信息

12.1 Linux文件的权限管控信息

权限细节共分为10个槽位

例如:drwxr-xr-x,表示:

  • 这是一个文件夹

  • 用户的权限是rwx

  • 用户组权限是r-x

  • 其他用户权限是r-x

12.2 读、写、执行三种权限的含义

  • r表示读权限

  • w表示写权限

  • x表示执行权限

针对文件、文件夹的不同,rwx的含义有细微差别

  • r针对文件可以查看文件内容;针对文件夹可以查看文件夹内容如ls命令

  • w针对文件表示可以修改此文件;针对文件夹可以在文件夹内创建、删除、改名等操作

  • x针对文件表示可以将文件作为程序执行;针对文件夹可以表示更改工作目录到此文件夹,即cd进入

13. -chmod命令

13.1 chmod修改权限信息

chmod命令语法细节:

只有文件、文件夹的所属用户或root用户可以修改

chmod [-R]
  • -R表示对文件夹内的全部内容应用同样的操作

例如:

chmod u=rwx,g=rx,o=x hello.txt
chmod -R u=rwx,g=rx,o=x test

u表示用户权限,g表示组权限,o表示其他用户权限

13.2 使用数字序号标记权限

权限可以用3位数字表示,第一位是用户权限、第二位是用户组权限、第三位是其他用户权限

  • 0:无任何权限

  • 1:仅有x权限,即--x

  • 2:仅有w权限,即-w-

  • 3:有w和x权限,即-wx

  • 4:仅有r权限,即r--

  • 5:有r和x权限,即r-x

  • 6:有r和w权限,即rw-

  • 7:有全部权限,即rwx

可以看作2进制

14. -chown命令

chown可以修改文件、文件夹的所属用户和用户组

普通用户无法修改所属为其他用户或组,此命令仅适用于root用户执行

chown [-R][user]:[grou][name]
  • -R表示对文件夹内全部内容应用相同规则

  • -user修改所属用户

  • -group修改所属用户组

例如:

chown root hello.text

将hello.txt所属用户修改为root

chown :root hello.txt

将hello.txt所属用户组修改为root

ctrl+c

将hello.txt所属用户修改为root,用户组修改为group_name

chown -R root test

将文件夹test的所属用户修改为root并对文件夹内全部内容应用同样规则

15. 快捷键

15.1 强制停止

ctrl+c
  • 强制停止程序

  • 退出当前错误的命令输入

15.2 退出或登出

ctrl+d
  • 退出账户的登录

  • 退出特定程序的专属页面

  • 不能用于退出vim

15.3 历史命令搜索

history
  • 查看历史输入过的命令

!命令前缀
  • 通过!命令前缀,自动执行上一次匹配前缀的命令

ctrl+r
  • 输入内容去匹配历史命令

如果搜索到的内容是需要的,那么:

  • 回车直接执行

  • 键盘左右键,可以得到此命令

15.4 光标移动快捷键

ctrl+a

跳到命令楷体

ctrl+e

跳到命令结尾

ctrl+键盘左键/右键

向左/右跳一个单词

15.5 清屏

ctrl+l

清空终端内容

clear

命令clear可以得到同样的效果

  • 21
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux学习笔记是关于学习Linux操作系统的记录和总结。在学习Linux时,你可能会遇到以下几个方面的内容。 首先,Linux是一个面向网络服务的操作系统,因此你可以随意更换桌面系统。Linux有多种不同的桌面系统供你选择。这意味着你可以根据自己的喜好和需求,选择适合自己的桌面环境。 其次,在Ubuntu中,root用户默认是被锁定的,因此你无法直接使用root权限进行操作。但是,你可以使用sudo命令来提升权限,以执行需要root权限的操作。通过sudo命令,普通用户可以在需要时暂时获得root权限,以便进行需要的操作。 此外,如果你需要修改内核为bash,可以使用vim编辑器打开/etc/passwd文件进行修改。在Linux系统中,vim是一种常用的文本编辑器,类似于Windows的记事本。通过编辑/etc/passwd文件,你可以修改用户的登录shell为bash。 总结起来,Linux学习笔记记录了学习Linux操作系统的过程和经验,包括选择适合自己的桌面环境、使用sudo提升权限以及通过vim编辑器修改/etc/passwd文件等。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Linux学习笔记](https://blog.csdn.net/m0_65379736/article/details/125700177)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值