Linux命令常用整理(亲测有效)

1.防火墙设置相关

2.查询Linux使用的版本(32位还是64位)

3.用户权限相关

4.查询内存中所有的进程PS

5.查询处于监听状态的程序信息

6.软连接概念以及/bin/sh与/bin/bash

7./bin/sh或是/bin/bash

8.查询内存命令

9.复制命令

10.远程连接telnet 与发送请求数据指令(以window为例说明)

11.按照文件名进行查询内容

12.查询磁盘文件夹文件大小

13.删除docker中的镜像与容器,以删除docker安装的gitlab为例

14.统计指定端口的连接数

15.终端在线查询日志信息

16.Linux中nohup文件压缩传递到window进行解压处理方案

以下命令无特殊说明即为根目录

1.防火墙设置相关

  1.查看Linux使用哪个发行版本

hostnamectl

  Linux常见发行版:redhat centos
  2.查看Linux中centOS版本(使用最多的还是7版本,以下命令无特殊说明均是centos7):

cat /etc/redhat-release

  3.centos7查看防火墙状态:

systemctl status firewalld

  4.查看防火墙开放端口:

firewall-cmd --list-ports

  5.防火墙开放以及关闭指定端口:

firewall-cmd --permanent --zone=public --add-port=8091/tcp
firewall-cmd --permanent --zone=public --remove-port=8091/tcp 

  6.设置后重启防火墙:

firewall-cmd --reload

  7.查看防火墙指定端口是否开启:

firewall-cmd --zone=public --query-port=8091/tcp

  iptables与firewalld区别:
    firewall是centos7里面的新的防火墙命令,它底层还是使用 iptables 对内核命令动态通信包过滤的,简单理解就是firewall是centos7下管理iptables的新命令;建议iptables进行操作,有时设置firewall不如iptables管用.通过iptables设置防火墙方式自行百度;

2.查询Linux使用的版本(32位还是64位)

uname -a 
命令执行后内容:
Linux localhost.localdomain 2.6.18-92.1.6.el5xen #1 SMP Wed Jun 25 12:56:52 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux

X86示意为64位系统,i386等位32位系统

3.用户权限相关

同一服务器,不同的用户可以访问不同的目录;场景说明:用户A访问权限:/ftp/fanadmin/fan/aaa;用户B访问权限:/ftp/fanadmin/fan/bbb,A用户sftp登录成功之后根目录为/ftp/fanadmin/fan/aaa,图形化工具根目录直接显示该目录(/ftp/fanadmin/fan/aaa)下面的内容: 在这里插入图片描述
4.查询内存中所有的进程PS

ps命令:process status缩写
ps -ef 或是ps aux,两者区别可以理解成是显示的是所有进程是不同信息,官方一点的说法是两种不同的显示风格
查询某个服务的进程信息
ps -ef | grep redis
根据进程号查询进程信息

ps -q 12840(进程号)

按照进程名查询进程的具体信息

ps -ef | grep 'java -jar admin_manage_dev-0.0.1-SNAPSHOT.jar'

在这里插入图片描述
杀死进程:
kill -9 pid号

5.查询处于监听状态的程序信息

netstat -ntpl
netstat(network statistic)
-a可以理解成是查询所有
-n 可以理解成为直接显示ip不是显示域名
-t 可以理解成是tcp连接
-p 可以理解成是程序名称
-l 可以理解成是listening
根据端口查询进程:

netstat -anpl | grep 端口号

根据进程查询端口:

netstat -anpl | grep 进程号

在这里插入图片描述
说明:以上各字段含义分别表示:proto(连接方式)、local address(本地连接地址)、foreign address(和本地建立连接的地址)、state(当前端口状态);其中172.19.245.254表示服务器本身的内网ip地址,后面的表示的是建立连接的ip地址与端口(此ip为公网ip)

6.软连接概念以及/bin/sh与/bin/bash

可以理解成不同的目录需要引用同一个文件夹,为了保证不重复占用空间,就可以使用软连接;具体用法:

ln -s 源文件 目标文件

7./bin/sh或是/bin/bash

可以理解成是为一个符号连接;区别:/bin/sh相当于是/bin/bash的软连接.
进入到docker部署的容器内部(根目录下面执行):

docker exec -it 27af16ab9718 /bin/sh

注意使用/bin/sh,ll就不会识别,需要使用ls使用.

8.查询内存命令

free – 动态显示内存使用情况,退出使用q
在这里插入图片描述

参数说明:
第一列
Mem 内存的使用信息
Swap 交换空间的使用信息
第一行
total 系统总的可用物理内存大小(单位:kb)
used 已被使用的物理内存大小
free 还有多少物理内存可用
shared 被共享使用的物理内存大小
buff/cache 被 buffer 和 cache 使用的物理内存大小
available 还可以被 应用程序 使用的物理内存大小
两者可以理解为约等于:
free(可用物理内存)+buffer/cache(可以理解成硬盘缓存占用物理内存)=avaliable(应用程序可以使用的内存)
默认按照kb显示,可以按照单位进行指定:free -g 以G为单位进行展示;
在这里插入图片描述

top – 显示总共内存使用情况
指定10秒时间显示:

top -d 10

按照进程名称查询内存使用情况(默认按照5秒刷新显示):

top -c 

按照内存使用量从大到小进行排序:

输入top进入top页面,大写M即可进行排序
退出top页面,直接输入:q或是CTRL+c

按照cpu占用率从大到小进行排序:

输入top进入top页面,大写P即可进行排序

如果想按照进程名显示并按照内存使用大小进行排序:
top -c 进入top页面之后按M进行显示;

9.复制命令

将/program/two_admin_program_dev下面的nohup.out 复制到/program/two_admin_program_dev下面的log_record下并进行重命名为nohup202104161746-202104180936.out

/kawa_program/kawa_two_admin_program_dev/下执行
cp /program/two_admin_program_dev/nohup.out  /program/two_admin_program_dev/log_record/nohup202104161746-202104180936.out

10.远程连接telnet 与发送请求数据指令(以window为例说明)

本地创建一个serverSocket,并不断进行监听,示例代码:

public static void main(String[] args) throws IOException {
        /*1.创建线程池
        * 2.如果有多个客户端建立连接就创建一个线程与之通信*/
        ExecutorService executorService = Executors.newCachedThreadPool();
        // 创建服务端socket
        ServerSocket serverSocket = new ServerSocket(5263);

        while (true){
            // 获取连接服务端的客户端连接
            Socket clientSocket = serverSocket.accept();
            // 获取客户端连接发送的流信息
            InputStream inputStream = clientSocket.getInputStream();
            byte[] bytes = new byte[1024];
            while (inputStream.read(bytes) != -1){
                System.out.println("客户端连接获取的信息:"+new String(bytes));
            }
        }
    }
telnet ip 端口 -- 远程连接
Ctrl+]进入客户端输入模式;
send 信息内容 -- 发送信息

win10总cmd进入黑窗口:
telnet 127.0.0.1 5266 然后Ctrl+],send发送信息
在这里插入图片描述在这里插入图片描述

11.按照文件名进行查询内容

find / -name file名
find / -name 101020354773.html
12.磁盘使用

查询磁盘文件夹文件大小(根目录执行,df:diskFile)
df -lh

在这里插入图片描述

查询服务器每个文件夹占用空间大小(根目录下执行,du:disk usage)
du -sh * 

在这里插入图片描述

只查看大文件(根目录下执行)
du -sh * | grep G

在这里插入图片描述

按照文件目录查询,比如查usr目录下哪些文件占空间大(根目录下执行)
du -sh /usr/* | grep G

在这里插入图片描述

13.删除docker中的镜像与容器,以删除docker安装的gitlab为例

查询gitlab的容器id(根目录):

docker ps -a

在这里插入图片描述

关闭gitlab服务(如果服务正在运行,根目录):

docker kill 容器名或是容器id

删除gitlab容器(根目录):

docker rm 容器id

查询gitlab镜像(根目录):

docker images

在这里插入图片描述

删除gitlab镜像(根目录):

docker rmi 镜像id

在这里插入图片描述
以上只是删除docker中部署的gitlab信息,需要将gitlab中存储数据删除的话执行以下命令将和gitlab存储的数据内容进行删除(根目录执行).

find / -name gitlab | xargs rm -rf

14.统计指定端口的连接数

netstat -an | grep -i '8090' | wc -l

wc -l 表示统计行数
在这里插入图片描述
一个APP去连接服务端,多个请求会创建多个连接.上图中是测试环境下一个APP中创建的多个连接.

15.终端在线查询日志信息

  将指定时间日志信息以文件形式进行输出,然后使用less命令进行打开.
进入到项目目录,将2022-01-10 14:00-14:09的文件内容输出到项目所在目录文件夹下,文件名可以按照习惯自定义命名.

grep -A100 '2022-01-10 14:0[0-9]' nohup.out > /temproject/1400.txt

  执行使用less命令进行打开文件(项目所在目录下执行,-N表示将文件添加行号)

less -N 0815.txt

    翻页操作:
pageUp上一页;pageDown下一页;
    关键字查找(正向或反向查找):
终端输入:/字符串,整个文件会将搜索关键词进行高亮显示,可以通过上下页进行查找关键字.或是键盘上敲N表示按照关键字向上查找,n表示按照关键词向下查找.
    退出分页查询页面:
q用于退出less分页查找页面.
    为何不直接使用less命令将查询出的文件进行分页的原因是less分页仅支持在文件中生效.
    最新记录的查看也是将查询内容输出到文件中使用less命令即可.

 tail -800f nohup.out > /temproject/0830.txt

16.Linux中nohup文件压缩传递到window进行解压处理方案

    Linux服务器应用中的nohup文件过大,使用三方工具传递到本地需要很长时间.可以考虑将nohup文件进行压缩,然后从window中进行解压.下面讲一下具体过程:
Linux压缩文件:
在这里插入图片描述

-- 将nohup.out压缩成nohup.tar.gz
tar zcvf nohup.tar.gz nohup.out

三方文件上传工具传递到本地,window中解压文件:
    win10中win+r搜索powershell,进入到编辑区,进入到nohup.tar.gz所在目录,执行命令:

tar -zxvf  nohup.tar.gz

在这里插入图片描述
解压完成:在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卖柴火的小伙子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值