Linux中的进阶指令

        之前我们介绍了Linux中的基础指令以及环境变量的意义和vi,vim编辑器的三个模式的切换,今天我们来学点更进阶一点的指令.

管道符"|" :将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin) 。管道符"|" :将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin) 。

语法:# 前一个命令 | 后一个命令

实例

# ls / | grep peppa.log
解析:
| :管道符号,作用=>把ls /的正确的执行结果作为参数传递给grep命令
ls / :管道左边的命令
grep peppa.log] :管道右边的命令

2. find:文件查找
 语法: find path options [operations]
  options:
   -name  按照文件名进行查找
   -iname 按照文件名进行查找,不区分大小写
   -size 按照文件大小进行查找(1M表示大小为1M的文件,+1M表示查找大于1MB的文件,-1M表示查找小于1MB的文件)
      -type 按照文件类型进行查找
- 表示文件,在find指令中用f表示普通文件
d 表示目录(文件夹)
l 表示链接文件
   -mtime 按照修改日期进行查找(-10表示10天以内的文件,+10表示10天以前的文件)
   -ctime 按照创建日期进行查找(-10表示10天以内的文件,+10表示10天以前的文件)
   -atime 按照访问日期进行查找(-10表示10天以内的文件,+10表示10天以前的文件)
   operations:
   -exec 直接执行该参数后的shell指令
shell指令以空格 \;结束
用{}表示查找到的文件
      -ok 以交互方式执行该参数后的shell指令
      -delete 删除找到的文件
      -ls 罗列出找到的文件,显示文件的详细信息
      -print 打印出查找到的文件(默认)

实例:

按文件名字查找sun.log文件

[root@localhost ~]# find -name sun.log
./sun.log
Linux中的压缩工具

(了解)

zip  unix/windows兼容,可以压缩多个文件/文件夹 unzip(解压)
gzip 压缩单个文件,压缩比率较低,cpu开销低 gunzip
bzip 压缩单个文件,压缩比率相对较高,cpu开销较高 bunzip
xz   压缩单个文件,压缩比率高,cpu开销高 unxz

tar :将多个文件打包成一个文件(打包后可压缩)
   tar [options] 打包后的文件   需要打包的文件
-c, --create               创建一个新归档
-t, --list                 列出归档内容
-v, --verbose              详细地列出处理的文件
-r, --append               追加文件至归档结尾
-j, --bzip2                通过 bzip2进行压缩/解压缩
-J, --xz                   通过 xz 过滤归档
-f    归档文件
-x    解压缩
-C    指定解压路径

-z:在创建或提取存档文件时使用 gzip 压缩算法来进行压缩或解压缩(gzip)。

实例:

将文件1.c,2.c,3.c,4.c打包到number.c文件下

[root@localhost tmp]# tar -zcvf number.c 1.c 2.c 3.c 4.c
1.c
2.c
3.c
4.c
[root@localhost tmp]# ls
1.c
2.c
321
3.c
4.c
abc
ks-script-Yj889I
number.c
 hostname指令:操作(读取/设置)服务主机名

语法:hostname [options] [resource]

options 

 -f FQDN
 -I ip地址

实例:

[root@localhost tmp]# hostname -f
localhost //读取服务器主机名
[root@localhost tmp]# hostname -I
192.168.65.168 //读取服务器主机IP地址
[root@localhost tmp]# hostname peppa
//将主机名改为peppa(临时)
[root@localhost tmp]# hostname -f   
peppa //这里可以看到主机名已经被更改

whoami:获取当前登录的用户名(一般用在shell脚本或者记录日志时使用)

实例:

[root@localhost tmp]# whoami
root //读取到我们现在在root用户下登录

id:查看用户基本信息(uid,gid,用户组)

语法:id [user]

 id 查看当前登录用户的基本信息
实例:

[root@localhost tmp]# id
uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

ps 查看服务器进程信息(*)
     -e -A 全部进程信息
     -f  全部的列

[root@localhost tmp]# ps -e
   PID TTY          TIME CMD
     1 ?        00:00:01 systemd
     2 ?        00:00:00 kthreadd
     3 ?        00:00:00 ksoftirqd/0
     5 ?        00:00:00 kworker/0:0H
     6 ?        00:00:00 kworker/u256:0
     7 ?        00:00:00 migration/0
     8 ?        00:00:00 rcu_bh
     9 ?        00:00:00 rcu_sched
    10 ?        00:00:00 lru-add-drain
    11 ?        00:00:00 watchdog/0
    12 ?        00:00:00 watchdog/1
    13 ?        00:00:00 migration/1
    14 ?        00:00:00 ksoftirqd/1
    16 ?        00:00:00 kworker/1:0H
    17 ?        00:00:00 watchdog/2
//UID 用户id
   PID 进程id
   PPID 父级id,如果一个进程的PPID找不到,那么这个进程即为僵尸进程
   C cpu占用率
   STIME 启动时间
   TTY 终端设备,?表示不是由终端发起的
   TIME 执行时间
   CMD 名称或者对应的path 

top 查看服务器进程所占资源(动态显示)
实例:

[root@localhost tmp]# top
top - 23:04:52 up  3:16,  2 users,  load average: 0.00, 0.01, 0.05
Tasks: 122 total,   1 running, 121 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  2028112 total,  1699996 free,   153332 used,   174784 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.  1686272 avail Mem 
 
   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                             
     1 root      20   0  193548   6656   4144 S   0.0  0.3   0:01.47 systemd                    

     快捷键:   

     M -> 将结果按照内存占用率从高到底进行排序
     P -> 将结果按照CPU占用率从高到底进行排序
     l  -> 每颗cpu使用情况
     q ->  退出
     PID 进程id 
     USER 用户名       
     PR 优先级
     NI 用户进程改变后的优先级
     VIRT 虚拟内存
     RES 常驻内存
     SHR 共享内存
     S 进程状态(R:running;S:sleeping)
     %CPU cpu占用率
     %MEM 内存占用率
     TIME+ 执行时间
     COMMAND 命令

du :查看目录的真实大小

语法:du [options] [directory]
       -s 汇总
       -h 可读性良好的方式显示

实例:
 查看number.c的真实大小,并以友好的方式进行汇总

[root@localhost tmp]# du -sh number.c
4.0K    number.c

kill 结束进程 

语法:kill pid
      -9 强制结束 

killall 根据进程名称结束进程
 

实例:

[root@localhost tmp]# kill 3
//结束掉pid为3的进程
[root@localhost tmp]# killall sshd
//按照sshd的进程名称结束进程

 service :开启进程
  语法: service 服务名 start

options /restart/try-restart/reload/force-reload/status

实例:

开启网卡服务

services network start //开启网卡服务

        好嘞,进阶指令就介绍到这里啦,下期再见哦!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值