shell
shell命令通过操作系统os,再与内核进行交互,shell就是围绕在Linux内核之外的一个”壳”程序,用户在操作系统上完成的所有任务都是通过shell与Linux系统内核的交互来实现的。
系统管理与维护类命令
1. cd命令 进入目录
改变当前工作目录,其用法与Windows下的cd类似。
切换到有目录名指定的目录下,注意Linux下文件和目录是区分大小写的cd[目录]cd或者
cd ~: 返回当前用户的默认工作目录,注意cd与“~”之间有一个空格cd~[用户名]返回指定用户的工作目录下,注意这里”~”和用户名之间没有空格
cd ..或者cd ../ : 返回到上级工作目录下
cd /: 返回到根目录下
pwd:当前的路径
2. ls命令 查看文件和目录
显示当前文件的内容,显示内的文件夹及其子目录
Is-al:#显示指定目录下的所有文件以及子目录,包含隐藏文件.
列出来的有颜色的就是目类,前面有点的就是隐藏。没有颜色的就是文件
II(ls -l):#除文件名称外,同时将文件或者子目录的权限、使用者和大小等信息详细列出

ls -R [名字] 列举当前的目录,有的则显示出子目录
Linux的命令是区分大小写的
3. pwd命令 当前的路径
显示当前的工作目录,绝对路径。绝对路径是/开头的
4. ps命令 进程管理
显示系统进程在瞬间时刻的运行状态
-ef #显示所有用户、系统的进程,包含每个程序的完整路径

-aux#显示更详细的进程信息

5. df命令 磁盘管理命令
显示系统磁盘空间的占用情况:

df -h:#人性化查看磁盘空间情况

df -Th:#查看磁盘空间并展示文件系统类型

df -hi:#查看磁盘分区Inode占用情况(inode 索引号占用)相当于书本的索引,索引满了即使还有空间但是插入不进入。

df -iTh:显示所有
6. top命令 实时显示系统情况
top命令提供了实时的对系统处理器状态的监控,它能够实时显示系统中各个进程的资源占用状况。该命令可以按照对CPU的使用、内存使用和执行时间对系统任务进程进行排序显示,同时top命令还可以通过交互式命令进行设定显示。类似于windows的资源管理器。

7. find查找命令
find,查找etc下的所有文件,按照名字 -name 并且打印出来 -print 。按照类型 -type 。按照大小 -size 。-exec 按照什么命令。

-exec 写完后 {} \;表示执行完成

也可进行模糊匹配:

8. echo命令
cat先输出name1的数据,然后再输出前文的输入信息。

但是大部分命令不行,比如kill和rm

但是需求是前面的输出当作后面的输入:
这个时候就需要命令xargs
9. xargs命令
一次性杀掉多个进程的方式:
首先筛选出需要杀死的进程,然后去掉grep 查找进程,然后查找第二列 awk方法,然后使用xargs的方式杀死进程即可。如下图所示

10. kill命令
日常关闭:kill -15 PID(优雅,MySQL 首选)
卡死急救:kill -9 PID(暴力,慎用)一般用户Java的应用程序。因为jvm运行太久消耗大,需要释放内存时间很久所以直接进行关闭。
重载配置:kill -1 PID(改配置不重启)
一键杀进程:killall -15 mysqld
检测进程是否存活 + 权限检查:kill -0 PID
kill all 跟的是进程的名称。关闭所有与这个名字相同的进程。
11. cp命令 拷贝文件目录
用来将给出的文件或者目录拷贝到另一个文件或者目录中.
cp递归拷贝目录时,使用“-r”选项。
cp复制时,要保存文件属性不变,使用“-a”选项。
cp -ar 目录 /另外目录 :#在拷贝文件或目录时,保留文件或目录所有属性:
实现文件的备份方式

拷贝多个文件到目录的方式

拷贝所有的文件和目录的方式:

当存在多个文件相同的时候,需要进行覆盖,这个时候很多选择y.避免所以命令前面加一个\ 忽略 -i这个默认的参数

12. mkdir命令 创建文件
创建目录
-p 嵌套创建子目录的方式。
mv命令用来将文件或目录改名或将文件由一个目录移入另一个目录中。
如果源类型和目标类型都是文件或者目录时,mv将进行目录重命名。
如果源类型为文件,而目标类型为目录时,mv将进行文件的移动。
如果源类型为目录,则目标类型只能是目录,不能是文件,此时完成目录重命名
13. mv命令 移动文件/目录
mv 源文件或目录 目标文件或目录

14. rm命令

rm命令用来删除某个目录及其下的所有文件及子目录。对于链接文件,只是断开了链接,原文件保持不变
rm -rf 文件或目录 #不提示直接删除文件或目录
删除数据前,一定要备份数据,以免误删除。
15. ln命令
ln命令用来在文件或目录之间创建链接。Linux下的链接有两种,一种是硬链接(HardLink),一种是符号链接(Symbolic Link)也叫软连接,默认情况下In命令产生的是硬链接。
-s 就表示创建的是符号链接,删除后不会删除源文件。
区别:硬连接是真实存在的文件,符号链接相当于快捷方式。

创建硬连接后显示的是白色,区分是否是硬连接的方式则是,看node的节点数字是否是一样的即可。
ls -il

16. lsattr
lasttr 查看是否加锁。文件就不能增加和修改。只能查看
进行加锁:chattr +i
进行解锁:chattr -i;

一般的etc 下的passwd shadow group hosts network 文件需要进行加锁。
业务中,删除不了文件就需要查看一下是不是需要加锁。
17. kill命令

killall 后面跟的是进程的名字而不是进程的PID,

18. chown 命令 改变文件/目录所有者
Linux下执行文件授权的命令有chown和chmod。
chown (change owner):授权所属用户与组。
chmod (change mode):修改用户的权限。

第一列:普通文件(-表示) 目录(d表示) 字符设备文件(C) 块设备文件(b) 套接字文件(s) 管道(p) 符号链接文件(I)
改变文件或者目录的所有者.
chown 用户名 文件/目录 改变文件/目录拥有者的权限
chown 用户名:组名 文件/目录 改变文件/目录拥有者和所属组的权限
chown -R 用户名:组名 文件/目录 递归改变文件/目录拥有者和所属组的权限
19. chmod 改变文件/目录权限

who :a:所有。u:用户。g:用户组。o:其他用户。
+:加某个权限。-:取消某个权限。=:赋予某个权限
mode:表示可以执行的权限:可以是“r”(只读)、“w”(可写)和“x”(可执行),以及它们的组合

数字表示法
0表示没有任何权限
1表示有可执行权限,与上面字符表示法中的“x”有相同的含义。
2表示有可写权限,与“w”对应
4表示有可读权限,对应与“r“
可以通过4(可读)+2(可写)=6(可读可写)的方式来实现,那么用数字6就表示拥有读写权限。

文件默认权限 644 rw r r
目录的默认权限 755 rwx rx rx

20. su命令


修改普通用户的密码:

21. 使用useradd、userdel添加、删除用户

创建毛毛2用户,并且添加到组里面。id maomao2 查看信息

修改用户的信息:再/etc/default/useradd里面

修改用户的密码是:passwd 用户名。密码信息在/etc/shadow文件里面。方式用户修改密码 -u:解锁。 -l:加锁。

吧普通用户改为管理用户的简单方法;vipw命令。然后修改uid为0即可。

whoami:查看当前所属的用户。
userdel:删除用户。 -r 删除家目录。
22. tar命令 进行打包和解包
tar是Linux下经常使用的归档.工具是对文件或者目录进行打包归档,归成一个文件,但是并不进行压缩。



打包后的文件不指定目录,则解包到当前目录,-C则可以指定目录

打包后的文件不指定目录,压缩到当前目录,-C则可以指定目录

还有存在后缀是 .bz2 :-j .xz:-J 则命令也不相同如下所示:

对于 .xz的解压方式是:

23. 使用gzip/gunzip进行压缩与解压缩
对文件进行压缩和解压。注意:gzip只能对文件进行压缩,不能压缩目录,即使指定压缩的目录,也只能压缩目录内的所有文件。压缩后源文件会被删除。
gzip 文件 对文件进行压缩
gzip -k 文件 对文件进行压缩,同时保留源文件
gzip -d 文件 对文件进行解压缩
gunzip 文件 对文件进行解压缩
24. 使用ip/ifconfig查看Linux网络信息

25. 使用nmcli命令配置Linux网络
Nmcli有两种使用方式:交互模式。纯命令模式。
交互模式:
nmcli connection edit ens3
配置文件在:cd /etc/NetworkManager/system-connections/
配置文件修改后需要保存并且激活,方式如下显示:

命令模式:

26. 使用scp在Linux系统之间拷贝文件
功能:scp就是secure copy,用于将文件或者目录从一个Linux系统拷贝到另一个Linux系统下。Scp传输数据用的是SSH协议,保证了数据传输的安全。scp的默认端口是TCP端口22,这也是SSH的默认端口。


传输文件:本地-》远程。传到远端文件夹

远程–》本地:

传递目录并且保留属性:

27. 文本编辑器vi-vim的使用
vi 没有颜色显示,vim有颜色显示







