Linux学习笔记

目录

  • 一.Linux简介
    • 1.Linux和Windows对比
      • (1)文件系统的差别
      • (2)用户管理差别
      • (3)运用方向不一样
    • 2.Linux的发行版本
    • 3.用户介绍
  • 二.基本常用命令
  • 三.基本文件操作
  • 四.Ubuntu软件管理
    • 1.软件介绍
    • 2.apt的使用
  • 五.用户与权限管理
    • 1.用户与用户组
      • (1)用户的操作
        • 创建用户:
        • 修改用户密码:
        • 删除用户:
      • (2)用户组操作
        • 创建用户组:
        • 修改用户组:
        • 删除用户组:
        • 切换不同用户组:
    • 2.文件权限
        • 更改文件或者文件夹的权限:
        • 改变用户组:
        • 改变属主:
  • 六.命令查找
    • 1.命令搜索
    • 2.find命令
    • 3.grep命令
  • 七.文本传输
    • 1.管道
    • 2.输入重定向:
    • 3.输出重定向:
    • 4.终端信息传输:
  • 八.文件传输
    • 1.文件别名-alias
      • 命令别名
      • 永久定义别名:
    • 2.文件压缩与解压缩
    • 3.文件链接
      • 硬链接
      • 软链接
  • 九.进程管理
    • 1.ps- 一次性进程监视
    • 2.top- 动态监控
    • 3.进程暂停和杀死
      • 暂停和启用
      • 杀死进程

一.Linux简介

1.Linux和Windows对比

(1)文件系统的差别

Linux学习笔记_第1张图片

Linux目录:

Linux学习笔记_第2张图片

(2)用户管理差别

Windows上用户概念很模糊,但是Linux上就会经常使用到

Linux通过用户权限来指定不同不的用户对文件的使用权限

Linux学习笔记_第3张图片

(3)运用方向不一样

Windows更多是代替纸质书写的办公,提升日常生活工作的交流效率

Linux一开始很大程度上就面对网络服务,所以Linux是可以随便换桌面的,Linux也有很多不同的桌面系统

Linux学习笔记_第4张图片

2.Linux的发行版本

Linux学习笔记_第5张图片

3.用户介绍

root 是Linux管理员,也称为超级用户

bd 是Linux普通用户,在Ubuntu中,root用户被锁定,当需要是使用的时候可以使用sudo来提权

请添加图片描述

这里的Clem是主机名,相当于Windows上的计算机名。

~ 是当前用户的家目录,家目录就相当于我们window系统盘中的用户目录

# 是超级用户的提示符,$是普通用户的提示符

二.基本常用命令

Linux学习笔记_第6张图片

Linux学习笔记_第7张图片

三.基本文件操作

创建文件 -

删除文件 rm sheng.txt

复制文件 cp /etc/passwd a.txt

移动文件 mv a.txt /tmp

创建文件夹 mkdir test

删除文件夹 rmdir test

删除文件夹 rm -rf test

查看文件cat sheng.txt

四.Ubuntu软件管理

1.软件介绍

Linux学习笔记_第8张图片

2.apt的使用

安装软件:sudo apt install -y lrzsz

删除软件:sudo apt remove -y lrzsz

五.用户与权限管理

1.用户与用户组

Linux学习笔记_第9张图片

(1)用户的操作

使用管理员账户或sodo提权

创建用户:

useradd -m 用户名

-m:					自动建立用户的登入目录
-u UID:				指定 UID,这个 UID 必须是大于等于500,并没有其他用户占用的 UID
-g GID/GROUPNAME:	指定默认组,可以是 GID 或者 GROUPNAME,同样也必须真实存在
-G GROUPS:			指定额外组
-c COMMENT:			指定用户的注释信息
-d PATH:			指定用户的家目录

vim/etc/passwd 文件 修改内核为bash (vim是编辑器,类似于Windows记事本)

groups 查看当前登录用户的组内成员

su 切换登录的用户

修改用户密码:

passwd 用户名

删除用户:

sudo userdel -r 用户名

(2)用户组操作

使用管理员账户或sodo提权

创建用户组:

groupadd python

修改用户组:

usermod -g 组

-c<备注>:			修改用户帐号的备注文字;
-d<登入目录>:	修改用户登入时的目录;
-g<群组>:			修改用户所属的群组;
-G<群组>:			修改用户所属的附加群组;
-l<帐号名称>:	修改用户帐号名称;
-L:			锁定用户密码,使密码无效;
-s:	修改用户登入后所使用的shell;
-u:	修改用户ID;
删除用户组:

groupde python

切换不同用户组:

newgrp moran

2.文件权限

Linux学习笔记_第10张图片

首字母表示文件类型,d是文件夹,-是文件

第1列表示文件权限

第2列为硬链接个数,文件夹表示引用计数,即…加上里面的目录个数

第3列表示文件所有者,就是文件属于那个用户

第4列表示文件所属的组

第5列表示文件大小,文件夹表示文件夹的大小,不是文件夹的总大小

第6、7、8列表示文件的修改时间

第9列表示文件名或目录名

请添加图片描述

权限,9个字符,每三个一组,第一组是所有者u,第二组是所有组g,第三组是其他人o

所有者:rwx

所有组:rwx

其他人:r-x

r读,w写,x执行

0	没有任何权限
1	执行
2	写
3	写执行
4	读
5	读执行
6	读写
7	可读可写可执行
更改文件或者文件夹的权限:

chmod 操作组操作符权限

chmod u+x py.txt  # 对应用户增减制定权限
chmod 0-r py.txt  # 对应用户增减制定权限
chmod 640 py.txt  # 直接用数字来指定权限
改变用户组:
chgrp root py.txt	# 将py.txt更改为root用户组
改变属主:
chown –R bd:bd test   # 将test文件夹更改成bd用户所属主和所属组

六.命令查找

1.命令搜索

Linux学习笔记_第11张图片

whereis 搜索命令的位置和帮助文档的位置

which 搜索位置和命令的别名

2.find命令

类似于Windows中的搜索文件

Linux学习笔记_第12张图片

find [-path] -options ‘文件’

path :	要查找的目录,默认是当前目录

option:
-name 	按文件名的某种规则的查找
-type 	按文件类型查找  f 普通文件   l 符号连接   d 目录
-size 	按文件大小查找
-exec<执行指令>:	假设find指令的回传值为True,就执行该指令; 
-print 	假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式为每列一个名称,每个名称前皆有“./”字符串

通配符:
*	匹配任意内容
?	匹配任意一个字符
[]	匹配任意一个中括号内的字符

3.grep命令

查找文件内容

grep –options file 文件

options:
-c 	计算符合范本样式的列数。
-E 	将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。
-i 	忽略字符大小写的差别。
-n 	在显示符合范本样式的那一列之前,标示出该列的编号。
-s 	不显示错误信息。
-v 	反转查找。
-w 	只显示全字符合的列。
-x 	只显示全列符合的列。
-o 	只输出文件中匹配到的部分。

七.文本传输

1.管道

将程序或命令的输出作为另一个程序或者命令的输入,就是用管道来进行完成

管道把一系列的命令链接起来

管道符:|

命令:xargs

Linux学习笔记_第13张图片

2.输入重定向:

在Linux系统中,所有的都是文件或文件夹,终端也是文件

输入重定向指的是把命令或者程序的标准输入重定向到指定的文件中,输入可以不是来自键盘,而是来自一个指定的文件。

改变执行对象,改变一个命令或程序的输入源

正常来说,输入来自于键盘

使用:命令 < 文件名

查看文件行数:wc-l

3.输出重定向:

输出重定向指的是把命令或者程序的标准输出重定向到指定的文件中,输出可以不是来自显示器,不是在屏幕中显示,而是输出到某个指定文件中

改变显示对象,改变一个命令或程序的写入源,把结果写入哪个位置

正常来说,输出来自于终端

输出命令:echo

输出重定向使用:命令 > 文件名

一个大于号会进行覆盖

如果想要追加内容使用两个大于号:>>

使用场景:快速的给某个文件插入一段文本,不需要vim进行编辑

4.终端信息传输:

tty终端的信息

who am登录的用户,终端的标记,登录的时间

w 登录的用户,终端的标记,星期几登录的,具体的登录时间,闲置时间,正在执行的程序,占用cpu的时间,系统的运行时间和平均负载

因为终端的本质也是文件,所以可以使用输出重定向在一个终端执行输出命令重定向到另一个终端进行显示

八.文件传输

1.文件别名-alias

命令别名

别名:小名,方便使用,自定义缩写

使用方法: alias 新的命令**=‘原命令-选项/参数’

设置指定的别名命令:alias

查看别名:alias或者type

取消定义的别名:unalias

前面所写的定义别名的方式都是临时的,只有在当前登录有效,下次登录就没有了

永久定义别名:

定义别名的行为是个人用户,永久定义别名是写入在配置文件中,给电脑系统进行持久化保存识别~/.bashrc

1.把命令写入在当前用户的家目录的.bashrc文件中alias ct = 'cd /home/bd/test’保存并退出

2.默认下次登录生效,想要立即生效:source ~/.bashrc

2.文件压缩与解压缩

命令:tar,用于将文件打包或解压

选项:

打包(cvf、vcf)仅仅是打包,不会压缩大小:

c:建立新的压缩包

f:命名,注意f必须是最后一个

v:输出信息,压缩了哪些文件

解包(xvf):

x:解压压缩包

f:命名,注意f必须是最后一个

v:输出信息,压缩了哪些文件

压缩:

z:gzip压缩 后缀名:.tar.gz

j:bzip2压缩 后缀名:.tar.bz2

c:建立新的压缩包

f:命名,注意f必须是最后一个

v:输出信息,压缩了哪些文件

解压:

带上对应压缩的选项+解压选项

-c:解压到指定的目录

3.文件链接

链接:连接、映射【——对应】

硬链接

创建一个文件与指定的文件进行关联,同步。备份操作

命令:ln

功能:可以进行备份,会与指定的文件进行关联,更新其中一个另一个也会进行更新,会创建一个真实存在的文件,内存

软链接

可以理解为快捷方式,生成一个链接文件,不会占用磁盘空间

使用:ln -s

功能:相当于windonws系统的快捷方式

九.进程管理

相当于windonws的任务管理器

Linux学习笔记_第14张图片

进程:正在运行的程序,但是现在科技发展在很多情况下程序为了更高的完成更多的事情,往往一个程序会开启多个进程

1.ps- 一次性进程监视

Linux学习笔记_第15张图片

命令:

ps -e

u 按用户和启动时间的顺序来显示进程
a 显示所有用户的所有进程
x 显示无终端控制的进程
f 列出进程全部相关信息,通常和其他选项联用
e 所有进程
l 采用详细的格式来显示程序状况

USER: 	启动进程的用户
PID: 	进程的ID号
%CPU: 	进程占用的CPU百分比
%MEM: 	进程占用的物理内存百分比
VSN: 	进程使用的虚拟内存总量,单位KB
RSS:	该进程占用实际物理内存的大小,单位KB
TTY: 	该进程在哪个终端中运行
STAT: 	进程状态
START: 	启动进程的时间
TIME: 	进程消耗CPU的时间
COMMAND: 	产生此进程的命令名
STAT常见状态:
	R 运行, S 睡眠,T 停止,s 包含子进程,+ 位于后台 Z僵尸进程 <优先级比较高的进程

2.top- 动态监控

Linux学习笔记_第16张图片

第1行分别是:系统时间、系统启动22小时18分、登录的用户有2个、 “load average” 代表:最近1分钟,5分钟,15分钟的系统负载值,如超过CPU个数的2倍说明高负载,需处理

第2行Tasks表示:有184个进程在内存中,1个正在运行,148个睡眠,0个停止,1个处于僵尸状态

第3行Cpu(s)表示:user上花费的时间,sys上花费的时间,nice优先级调整上花费的时间,idle:CPU空闲时间,iowait等待系统io时间,hi硬件中断时间,si软中断时间,steal被虚拟机偷掉的时间

第4行Mem表示:总内存、空闲的内存、已经使用的内存、用于缓存文件系统的内存、交换内存的总容量,这内存还可以用free命令来查看

第5行Swap表示:交换空间总大小、空闲的交换空间、使用的交换内存空间、用于缓存文件内容的交换空间

top 实时显示进程情况

-d 设置更新的时间间隔
-n 显示更新的次数,然后退出
-u 只显示指定用户的进程信息
-s 安全模式运行,禁用一些交互命令

也可以下载htop来查看

3.进程暂停和杀死

Linux 的 进程 分为前台进程和后台进程,前台进程占用终端窗口,而后台进程不占用终端窗口。
要启动一个前台进程,只需要在命令行输入启动进程的命令即可,要让一个程序在后台运行,
只需要在启动进程时,在命令后加上 & 符号即可

暂停和启用

Ctrl + z 	让正在前台执行的进程暂停
jobs 	获取当前的后台作业号
fg	将进程从后台调到前台执行
bg 	将进程放到后台执行

杀死进程

HUP  1  	终端断线 
INT  2  	中断(同 Ctrl + C)
QUIT 3  	退出(同 Ctrl + \) 
TERM 15 	终止
KILL 9  	强制终止 
CONT 18 	继续(与STOP相反, fg/bg命令) 
STOP 19 	暂停(同 Ctrl + Z)

示进程情况**

-d 设置更新的时间间隔
-n 显示更新的次数,然后退出
-u 只显示指定用户的进程信息
-s 安全模式运行,禁用一些交互命令

也可以下载htop来查看

Linux学习笔记_第17张图片
喜欢的,点个赞呗,学习好累,得多看看姑娘!!!哈哈哈

你可能感兴趣的:(Linux,linux,学习,服务器,ubuntu)