Bootstrap

Liunx 笔记

目录

命令行中的ctrl组合键

一、用户和分组

 1、组

增加新的用户组

删除已有用户组

修改用户组的属性

切换用户组

2、用户

添加新的用户账号

删除用户 

修改用户信息

修改密码

3、关系和权限

更改文件所属组

更改文件所有者(组)

4、其他

组信息文件

用户信息

切换用户(su)

以root身份执行指令(sudo)

二、文件和目录管理

1、常见处理目录命令

mkdir (创建新目录)

2、文件基本属性

权限的变更

3、vi/vim 的使用

命令模式

输入模式

底线命令模式

4、检索

文本搜索:grep

查找文件:find

5、文件归档(压缩,解压)

tar文件归档

创建新的归档文件

从归档文件中提取文件

列出归档文件中的内容

其他常用选项

文件压缩解压:gzip

三、系统命令

1、查看网络状态:netstat

参数说明:

 常用

2、查看进程信息:ps

选项

常见用法:

3、动态显示进程:top

4、终止进程:kill


命令行中的ctrl组合键


Ctrl+c 结束正在运行的程序

Ctrl+d 结束输入或退出shell

Ctrl+s 暂停屏幕输出【锁住终端】

Ctrl+q 恢复屏幕输出【解锁终端】

Ctrl+l 清屏,【是字母L的小写】等同于Clear

当前光标到行首:ctrl+a

当前光标到行尾:ctrl+e

删除当前光标到行首:ctrl+u

删除当前光标到行尾:ctrl+k

Ctrl+y 在光标处粘贴剪切的内容

Ctrl+r 查找历史命令【输入关键字,就能调出以前执行过的命令】

Ctrl+t 调换光标所在处与其之前字符位置,并把光标移到下个字符

Ctrl+x+u 撤销操作

Ctrl+z 转入后台运行

一、用户和分组

 1、组

增加新的用户组
groupadd 选项 用户组
  • -g GID 指定新用户组的组标识号(GID)。
  • -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

删除已有用户组
groupdel 用户组

修改用户组的属性
groupmod 选项 用户组
  • -g GID 为用户组指定新的组标识号。
  • -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
  • -n新用户组 将用户组的名字改为新名字

切换用户组
newgrp 用户组

2、用户

添加新的用户账号
useradd 选项 用户名
  • -c comment 指定一段注释性描述。
  • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
  • -g 用户组 指定用户所属的用户组。
  • -G 用户组,指定用户所属的附加组。
  • -s Shell文件 指定用户的登录Shell。
  • -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

删除用户 
userdel 选项 用户名

常用的选项是 -r,它的作用是把用户的主目录一起删除

修改用户信息
usermod 选项 用户名

选项同添加

修改密码
passwd 选项 用户名
  • -l 锁定,即禁用账号。
  • -u 解锁。
  • -d 使账号无密码。
  • -f 强迫用户下次登录时修改密码。

3、关系和权限

更改文件所属组
chgrp [-R] 属组名 文件名
  • -R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上 -R 的参数,那么该目录下的所有文件的属组都会更改。
更改文件所有者(组)
chown [–R] 所有者 文件名
chown [-R] 所有者:属组名 文件名

4、其他

组信息文件

用户组的所有信息都存放在/etc/group文件中

输出信息格式

组名:密码:组标识号:组内用户列表

用户信息

/etc/passwd文件是用户管理工作涉及的最重要的一个文件

输出信息格式

用户名:密码:用户标识号:组标识号:注释性描述:主目录:登录Shell

/etc/shadow中的记录行与/etc/passwd中的一一对应,它由pwconv命令根据/etc/passwd中的数据自动产生

登录名:加密密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

切换用户(su)


su后面可以加“-”会将当前的工作目录自动转换到切换后的用户主目录.

su            //切换到root用户
su root       //切换到root用户
su -          //切换到root用户,同时切换目录到/root
su - root     //切换到root用户,同时切换目录到/root
su 普通用户    //切换到普通用户
su - 普通用户  //切换到普通用户,同时切换普通用户所在的目录

以root身份执行指令(sudo)

sudo命令可以临时获取root权限

二、文件和目录管理

1、常见处理目录命令

  • ls(英文全拼:list files): 列出目录及文件名
  • cd(英文全拼:change directory):切换目录
  • pwd(英文全拼:print work directory):显示目前的目录
  • mkdir(英文全拼:make directory):创建一个新的目录
  • rmdir(英文全拼:remove directory):删除一个空的目录
  • cp(英文全拼:copy file): 复制文件或目录
  • rm(英文全拼:remove): 删除文件或目录
  • mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称

mkdir (创建新目录)
mkdir [-mp] 目录名称
  • -m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
  • -p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!

2、文件基本属性

每个文件的属性由左边第一部分的 10 个字符来确定(如下图)。

文件的权限字符为: -rwxrwxrwx , 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限

  • r:4
  • w:2
  • x:1

每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx--- 分数则是:

  • owner = rwx = 4+2+1 = 7
  • group = rwx = 4+2+1 = 7
  • others= --- = 0+0+0 = 0

权限的变更

所以等一下我们设定权限的变更时,该文件的权限数字就是 770。变更权限的指令 chmod 的语法是这样的:

 chmod [-R] xyz 文件或目录
  • xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。
  • -R : 进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更

3、vi/vim 的使用

基本上 vi/vim 共分为三种模式,命令模式(Command Mode)、输入模式(Insert Mode)和命令行模式(Command-Line Mode)

命令模式

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被 Vim 识别为命令,而非输入字符,比如我们此时按下 i,并不会输入一个字符,i 被当作了一个命令。

以下是普通模式常用的几个命令:

  • i -- 切换到输入模式,在光标当前位置开始输入文本。
  • x -- 删除当前光标所在处的字符。
  • : -- 切换到底线命令模式,以在最底一行输入命令。
  • a -- 进入插入模式,在光标下一个位置开始输入文本。
  • o:在当前行的下方插入一个新行,并进入插入模式。
  • O -- 在当前行的上方插入一个新行,并进入插入模式。
  • dd -- 剪切当前行。
  • yy -- 复制当前行。
  • p(小写) -- 粘贴剪贴板内容到光标下方。
  • P(大写)-- 粘贴剪贴板内容到光标上方。
  • u -- 撤销上一次操作。
  • Ctrl + r -- 重做上一次撤销的操作。
  • :w -- 保存文件。
  • :q -- 退出 Vim 编辑器。
  • :q! -- 强制退出Vim 编辑器,不保存修改。

若想要编辑文本,只需要启动 Vim,进入了命令模式,按下 i 切换到输入模式即可。

命令模式只有一些最基本的命令,因此仍要依靠底线命令行模式输入更多命令。

输入模式

在命令模式下按下 i 就进入了输入模式,使用 Esc 键可以返回到普通模式。

在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式
底线命令模式

在命令模式下按下 :(英文冒号)就进入了底线命令模式。

底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号):

  • :w:保存文件。
  • :q:退出 Vim 编辑器。
  • :wq:保存文件并退出 Vim 编辑器。
  • :q!:强制退出Vim编辑器,不保存修改。

按 ESC 键可随时退出底线命令模式。

4、检索

文本搜索:grep

Linux系统中grep命令是一种强大的文本搜索工具,grep允许对文本文件进行模式查找。如果找到匹配模式, grep打印包含模式的所有行。

grep [-选项] '搜索内容串' 文件名

查找文件:find
find ./ -name test.sh	    查找当前目录下所有名为test.sh的文件
find ./ -name ‘*.sh’	    查找当前目录下所有后缀为.sh的文件
find ./ -name “[A-Z]*”	    查找当前目录下所有以大写字母开头的文件
find /tmp -size 2M	        查找在/tmp 目录下等于2M的文件
find /tmp -size +2M	        查找在/tmp 目录下大于2M的文件
find /tmp -size -2M	        查找在/tmp 目录下小于2M的文件
find ./ -size +4k -size -5M	查找当前目录下大于4k,小于5M的文件
find ./ -perm 0777	        查找当前目录下权限为 777 的文件或目录

常用参数说明 :

-perm xxxx:权限为 xxxx的文件或目录
-user: 按照文件属主来查找文件。
-size n : n单位,b:512位元组的区块,c:字元数,k:kilo bytes,w:二个位元组
-mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-amin n : 在过去 n 分钟内被读取过
-anewer file : 比文件 file 更晚被读取过的文件
-atime n : 在过去n天内被读取过的文件
-cmin n : 在过去 n 分钟内被修改过
-cnewer file :比文件 file 更新的文件
-ctime n : 在过去n天内被修改过的文件
-empty : 空的文件
-gid n or -group name : gid 是 n 或是 group 名称是 name
-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
-type 查找某一类型的文件:
b - 块设备文件
d - 目录
c - 字符设备文件
p - 管道文件
l - 符号链接文件
f - 普通文件
-exec 命令名{} \ (注意:“}”和“\”之间有空格)

5、文件归档(压缩,解压)

tar文件归档
tar [选项] [归档文件] [文件或目录...]
  1. 创建新的归档文件
    • -c--create:创建一个新的归档文件。
    • -v--verbose:详细显示处理的文件信息。
    • -f--file=ARCHIVE:指定归档文件的名称。
    • -z--gzip:使用gzip压缩归档文件。
    • -j--bzip2:使用bzip2压缩归档文件。
    • -J--xz:使用xz压缩归档文件。
    • -p--preserve-permissions:保留文件的权限。
    • --exclude=PATTERN:排除符合PATTERN的文件或目录。

    示例:

    • 创建一个未压缩的归档文件:tar -cvf archive.tar file1 file2
    • 创建一个使用gzip压缩的归档文件:tar -czvf archive.tar.gz file1 file2
    • 创建一个使用bzip2压缩的归档文件:tar -cjvf archive.tar.bz2 file1 file2
    • 创建一个使用xz压缩的归档文件:tar -cJvf archive.tar.xz file1 file2
  2. 从归档文件中提取文件
    • -x--extract:从归档文件中提取文件。
    • -v:详细显示处理的文件信息。
    • -f:指定要提取的归档文件的名称。
    • -z:使用gzip解压缩归档文件。
    • -j:使用bzip2解压缩归档文件。
    • -J:使用xz解压缩归档文件。
    • -C--directory=DIR:指定解压到的目标目录。
    • -k:解压时跳过已存在的文件。

    示例:

    • 从归档文件中提取文件:tar -xvf archive.tar
    • 从压缩的归档文件中提取文件:tar -xzvf archive.tar.gz
    • 解压到指定目录:tar -xvf archive.tar -C /path/to/destination
    • 解压时跳过已存在的文件:tar -xvkf archive.tar
  3. 列出归档文件中的内容
    • -t--list:列出归档文件中的内容。
    • -v:详细显示归档文件中的内容信息。
    • -f:指定要列出的归档文件的名称。

    示例:

    • 列出归档文件中的内容:tar -tvf archive.tar
  4. 其他常用选项
    • -r--append:将文件追加到归档文件中(注意:不能在压缩的归档文件中追加文件)。
    • -u--update:更新归档文件中的文件,只添加或更新比归档文件中版本新的文件。
    • --delete:从归档文件中删除文件。
    • -P--absolute-names:保留绝对路径名。
    • --wildcards:使用通配符匹配文件。
文件压缩解压:gzip

tar与gzip命令结合使用实现文件打包、压缩。 tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。

gzip  [选项]  被压缩文件
-d解压文件
-r压缩文件

三、系统命令

1、查看网络状态:netstat

利用netstat指令可让你得知整个Linux系统的网络情况。

netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]
参数说明:

-a或–all 显示所有连线中的Socket。
-A<网络类型>或–<网络类型> 列出该网络类型连线中的相关地址。
-c或–continuous 持续列出网络状态。
-C或–cache 显示路由器配置的快取信息。
-e或–extend 显示网络其他相关信息。
-F或–fib 显示FIB。
-g或–groups 显示多重广播功能群组组员名单。
-h或–help 在线帮助。
-i或–interfaces 显示网络界面信息表单。
-l或–listening 显示监控中的服务器的Socket。
-M或–masquerade 显示伪装的网络连线。
-n或–numeric 直接使用IP地址,而不通过域名服务器。
-N或–netlink或–symbolic 显示网络硬件外围设备的符号连接名称。
-o或–timers 显示计时器。
-p或–programs 显示正在使用Socket的程序识别码和程序名称。
-r或–route 显示Routing Table。
-s或–statistice 显示网络工作信息统计表。
-t或–tcp 显示TCP传输协议的连线状况。
-u或–udp 显示UDP传输协议的连线状况。
-v或–verbose 显示指令执行过程。
-V或–version 显示版本信息。
-w或–raw 显示RAW传输协议的连线状况。
-x或–unix 此参数的效果和指定"-A unix"参数相同。
–ip或–inet 此参数的效果和指定"-A inet"参数相同。

 常用
[root@VM_0_9_centos ~]# netstat -nltp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address  Foreign Address  State   PID/Program name
tcp        0      0    0.0.0.0:22    0.0.0.0:*      LISTEN   3308/sshd
tcp6       0      0         :::80         :::*      LISTEN   4624/httpd

2、查看进程信息:ps

选项
选项含义
-a显示终端上的所有进程,包括其他用户的进程
-u显示进程的详细状态
-x显示没有控制终端的进程
-w显示加宽,以便显示更多的信息
-r只显示正在运行的进程

常见用法:
ps -e 查          //看所有进程信息(瞬时的)
ps -u root -N     //查看所有不是root运行的进程
ps ax             //显示所有进程状态状态
ps -ef |grep xxx  //显示含有xxx的进程

 

3、动态显示进程:top

top命令用来动态显示运行中的进程。top命令能够在运行后,在指定的时间间隔更新显示信息。-d参数可以指定显示信息更新的时间间隔。

在top命令执行后,可以按下按键得到对显示的结果进行排序:

按键含义
M根据内存使用量来排序
P根据CPU占有率来排序
T根据进程运行时间的长短来排序
U可以根据后面输入的用户名来筛选进程
K可以根据后面输入的PID来杀死进程。
q退出
h获得帮助

4、终止进程:kill

kill命令指定进程号的进程,需要配合 ps 使用。

使用格式:

kill [-signal] pid

 

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;