博客pgrep,pidof工具的使用

最灵活:ps 选项 | 其它命令
按预定义的模式:pgrep
pgrep [options] pattern
-u uid: effective user,生效者
-U uid: real user,真正发起运行命令者
-t terminal: 与指定终端相关的进程
-l: 显示进程名
-a: 显示完整格式的进程名
-P pid: 显示指定进程的子进程
按确切的程序名称:/sbin/pidof

一-t terminal: 显示与指定终端相关的进程

[root@centos72 ~]# pgrep   -t  pts/1
[root@centos72 ~]# pgrep -t pts/3
[root@centos72 ~]# tty
/dev/pts/2
[root@centos72 ~]# pgrep -t pts/2
[root@centos72 ~]# pstree -p
systemd(1)─┬─NetworkManager(544)─┬─{NetworkManager}(591)
│ └─{NetworkManager}(593)
├─VGAuthService(545)
├─agetty(558)
├─auditd(515)───{auditd}(516)
├─crond(555)
├─dbus-daemon(540)───{dbus-daemon}(542)
├─httpd(2295)─┬─httpd(2296)
│ ├─httpd(2297)
│ ├─httpd(2298)
│ ├─httpd(2299)
│ └─httpd(2300)
├─irqbalance(538)
├─master(869)─┬─pickup(2590)
│ └─qmgr(871)
├─polkitd(539)─┬─{polkitd}(541)
│ ├─{polkitd}(543)
│ ├─{polkitd}(569)
│ ├─{polkitd}(570)
│ └─{polkitd}(573)
├─rsyslogd(787)─┬─{rsyslogd}(790)
│ └─{rsyslogd}(791)
├─sshd(785)─┬─sshd(2053)───bash(2057)─┬─head(2987)
│ │ └─watch(2986)
│ └─sshd(2110)───bash(2114)───pstree(3658)
├─systemd-journal(357)
├─systemd-logind(548)
├─systemd-udevd(388)
├─tuned(784)─┬─{tuned}(1026)
│ ├─{tuned}(1027)
│ ├─{tuned}(1028)
│ └─{tuned}(1041)
└─vmtoolsd(546)───{vmtoolsd}(580)

二-l: 显示进程名

[root@centos72 ~]# pgrep   -t  pts/2  -l
2057 bash
[root@centos72 ~]# pgrep -lt pts/2
2057 bash

注意必须和t组合起来

[root@centos72 ~]# pgrep   -lt  pts/1
1259 bash
[root@centos72 ~]# pgrep -l pts/1

三-a: 显示完整格式的进程名

注意t选项是不可少的

[root@centos72 ~]# pgrep   -at  pts/1
1259 -bash
[root@centos72 ~]# pgrep -a pts/1
[root@centos72 ~]# pgrep -a pts/

在一个终端上查看另外一个终端的进程

[root@centos72 ~]# pgrep   -at  pts/3
2114 -bash
3840 su - wang
3841 -bash
3864 passwd
[root@centos72 ~]# tty
/dev/pts/

另外一个终端

[root@centos72 ~]# tty
/dev/pts/3
[root@centos72 ~]# su - wang
Last login: Sat May 18 16:20:19 CST 2019 on pts/3
[wang@centos72 ~]$ passwd
Changing password for user wang.
Changing password for wang.
(current) UNIX password:

注意a选项不能在t后面,否则不会显示。因为t后面必须是终端,a相当于小三

[root@centos72 ~]# pgrep   -ta  pts/3
[root@centos72 ~]# pgrep -ta pts/2
[root@centos72 ~]# pgrep -ta pts/

四-P pid: 显示指定进程的子进程

[root@centos72 ~]# pgrep   -at  pts/3
2114 -bash
3840 su - wang
3841 -bash
3864 passwd
[root@centos72 ~]# pgrep -P 3840
[root@centos72 ~]# pstree -p
systemd(1)─┬─NetworkManager(544)─┬─{NetworkManager}(591)
│ └─{NetworkManager}(593)
├─VGAuthService(545)
├─agetty(558)
├─auditd(515)───{auditd}(516)
├─crond(555)
├─dbus-daemon(540)───{dbus-daemon}(542)
├─httpd(2295)─┬─httpd(2296)
│ ├─httpd(2297)
│ ├─httpd(2298)
│ ├─httpd(2299)
│ └─httpd(2300)
├─irqbalance(538)
├─master(869)─┬─pickup(2590)
│ └─qmgr(871)
├─polkitd(539)─┬─{polkitd}(541)
│ ├─{polkitd}(543)
│ ├─{polkitd}(569)
│ ├─{polkitd}(570)
│ └─{polkitd}(573)
├─rsyslogd(787)─┬─{rsyslogd}(790)
│ └─{rsyslogd}(791)
├─sshd(785)─┬─sshd(2053)───bash(2057)───pstree(3875)
│ └─sshd(2110)───bash(2114)───su(3840)───bash(3841)───passwd(3864)
├─systemd-journal(357)
├─systemd-logind(548)
├─systemd-udevd(388)
├─tuned(784)─┬─{tuned}(1026)
│ ├─{tuned}(1027)
│ ├─{tuned}(1028)
│ └─{tuned}(1041)
└─vmtoolsd(546)───{vmtoolsd}(580)

五-u uid: effective user,生效者

[root@centos72 ~]# su  - wang
Last login: Sat May 18 16:20:19 CST 2019 on pts/3
[wang@centos72 ~]$ passwd
Changing password for user wang.
Changing password for wang.
(current) UNIX password:
[root@centos72 ~]# pgrep  -lu  wang
3841 bash

注意pgrep, pkill两个命令的帮助文档是一样的

PGREP(1)                                    User Commands                                    PGREP(1)

NAME
pgrep, pkill - look up or signal processes based on name and other attributes

还支持扩展的正则表达式

因为pgrep是ps和grep的结合

OPERANDS
pattern
Specifies an Extended Regular Expression for matching against the process names or com‐
mand lines.

六结合正则表达式

注意可以使用ps结合grep也可以搜索出来的

[root@centos72 ~]# su  - wang
Last login: Sat May 18 16:21:27 CST 2019 on pts/3
[wang@centos72 ~]$ passwd
Changing password for user wang.
Changing password for wang.
(current) UNIX password:
[root@centos72 ~]# pgrep   -l  "pass.*"
3928 passwd
[root@centos72 ~]# pgrep   -l  "ba.*"
21 writeback
538 irqbalance
2057 bash
2114 bash
3904 bash
[root@centos72 ~]# pgrep -l "bas.*"
2057 bash
2114 bash
3904 bash

七按确切的程序名称:pidof   bash

[root@centos72 ~]# pgrep   -l  "bas.*"
2057 bash
2114 bash
3904 bash
[root@centos72 ~]# pidof bash
3904 2114
[root@centos72 ~]# pstree -p
systemd(1)─┬─NetworkManager(544)─┬─{NetworkManager}(591)
│ └─{NetworkManager}(593)
├─VGAuthService(545)
├─agetty(558)
├─auditd(515)───{auditd}(516)
├─crond(555)
├─dbus-daemon(540)───{dbus-daemon}(542)
├─httpd(2295)─┬─httpd(2296)
│ ├─httpd(2297)
│ ├─httpd(2298)
│ ├─httpd(2299)
│ └─httpd(2300)
├─irqbalance(538)
├─master(869)─┬─pickup(2590)
│ └─qmgr(871)
├─polkitd(539)─┬─{polkitd}(541)
│ ├─{polkitd}(543)
│ ├─{polkitd}(569)
│ ├─{polkitd}(570)
│ └─{polkitd}(573)
├─rsyslogd(787)─┬─{rsyslogd}(790)
│ └─{rsyslogd}(791)
├─sshd(785)─┬─sshd(2053)───bash(2057)───pstree(3936)
│ └─sshd(2110)───bash(2114)───su(3903)───bash(3904)───passwd(3928)
├─systemd-journal(357)
├─systemd-logind(548)
├─systemd-udevd(388)
├─tuned(784)─┬─{tuned}(1026)
│ ├─{tuned}(1027)
│ ├─{tuned}(1028)
│ └─{tuned}(1041)
└─vmtoolsd(546)───{vmtoolsd}(580)

在6上设置httpd为没有线程的进程

[root@centos65 ~]# diff   /etc/sysconfig/httpd{,.bak}
[root@centos65 ~]# cat /etc/sysconfig/httpd
# Configuration file for the httpd service. #
# The default processing model (MPM) is the process-based
# 'prefork' model. A thread-based model, 'worker', is also
# available, but does not work with some modules (such as PHP).
# The service must be stopped before changing this variable.
#
#HTTPD=/usr/sbin/httpd.worker #
# To pass additional options (for instance, -D definitions) to the
# httpd binary at startup, set OPTIONS here.
#
#OPTIONS= #
# By default, the httpd process is started in the C locale; to
# change the locale in which the server runs, the HTTPD_LANG
# variable can be set.
#
#HTTPD_LANG=C #
# By default, the httpd process will create the file
# /var/run/httpd/httpd.pid in which it records its process
# identification number when it starts. If an alternate location is
# specified in httpd.conf (via the PidFile directive), the new
# location needs to be reported in the PIDFILE.
#
#PIDFILE=/var/run/httpd/httpd.pid
[root@centos65 ~]# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using centos65.jd.com for ServerName
[ OK ]
[root@centos65 ~]#
[root@centos65 ~]# pstree -p
init(1)─┬─abrt-dump-oops(1811)
├─abrtd(1801)
├─acpid(1428)
├─atd(1858)
├─auditd(1251)───{auditd}(1252)
├─automount(1511)─┬─{automount}(1512)
│ ├─{automount}(1513)
│ ├─{automount}(1528)
│ └─{automount}(1531)
├─crond(1843)
├─dbus-daemon(1389)───{dbus-daemon}(1391)
├─dnsmasq(2023)
├─hald(1440)─┬─hald-runner(1441)─┬─hald-addon-acpi(1495)
│ │ └─hald-addon-inpu(1473)
│ └─{hald}(1442)
├─httpd(12606)─┬─httpd(12608)
│ ├─httpd(12609)
│ ├─httpd(12610)
│ ├─httpd(12611)
│ ├─httpd(12612)
│ ├─httpd(12613)
│ ├─httpd(12614)
│ └─httpd(12615)
├─irqbalance(1307)
├─ksmtuned(1830)───sleep(12576)
├─libvirtd(1875)─┬─{libvirtd}(1876)
│ ├─{libvirtd}(1877)
│ ├─{libvirtd}(1878)
│ ├─{libvirtd}(1879)
│ ├─{libvirtd}(1880)
│ ├─{libvirtd}(1881)
│ ├─{libvirtd}(1882)
│ ├─{libvirtd}(1883)
│ ├─{libvirtd}(1884)
│ └─{libvirtd}(1885)
├─master(1772)─┬─pickup(11801)
│ └─qmgr(1779)
├─mingetty(1916)
├─mingetty(1918)
├─mingetty(1920)
├─mingetty(1922)
├─mingetty(1924)
├─mingetty(1926)
├─rpc.idmapd(1633)
├─rpc.mountd(1588)
├─rpc.rquotad(1583)
├─rpc.statd(1354)
├─rpcbind(1332)
├─rsyslogd(1273)─┬─{rsyslogd}(1274)
│ ├─{rsyslogd}(1276)
│ └─{rsyslogd}(1277)
├─sshd(1682)───sshd(2134)───bash(2138)───pstree(12619)
├─udevd(536)─┬─udevd(1933)
│ └─udevd(1934)
└─xinetd(1693)
[root@centos65 ~]# pidof  httpd
12615 12614 12613 12612 12611 12610 12609 12608

停止服务,返回值为1

[root@centos65 ~]# service httpd  stop
Stopping httpd: [ OK ]
[root@centos65 ~]# pidof httpd
[root@centos65 ~]# echo  $?

重启服务之后显示为0

pidof httpd的作用就是检查进程是否正常工作,如果进程死了那么就要激活

[root@centos65 ~]# service httpd  restart
Stopping httpd: [ OK ]
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using centos65.jd.com for ServerName
[ OK ]
[root@centos65 ~]# pidof httpd
12723
[root@centos65 ~]# echo $?

脚本之间是可以自己调用自己

如果服务运行那么就什么也不做,否则就重启服务

[root@centos65 ~]# pstree -p
init(1)─┬─abrt-dump-oops(1811)
├─abrtd(1801)
├─acpid(1428)
├─atd(1858)
├─auditd(1251)───{auditd}(1252)
├─automount(1511)─┬─{automount}(1512)
│ ├─{automount}(1513)
│ ├─{automount}(1528)
│ └─{automount}(1531)
├─crond(1843)
├─dbus-daemon(1389)───{dbus-daemon}(1391)
├─dnsmasq(2023)
├─hald(1440)─┬─hald-runner(1441)─┬─hald-addon-acpi(1495)
│ │ └─hald-addon-inpu(1473)
│ └─{hald}(1442)
├─httpd(12723)─┬─httpd(12726)
│ ├─httpd(12727)
│ ├─httpd(12728)
│ ├─httpd(12729)
│ ├─httpd(12730)
│ ├─httpd(12731)
│ ├─httpd(12732)
│ └─httpd(12733)
├─irqbalance(1307)
├─ksmtuned(1830)───sleep(13100)
├─libvirtd(1875)─┬─{libvirtd}(1876)
│ ├─{libvirtd}(1877)
│ ├─{libvirtd}(1878)
│ ├─{libvirtd}(1879)
│ ├─{libvirtd}(1880)
│ ├─{libvirtd}(1881)
│ ├─{libvirtd}(1882)
│ ├─{libvirtd}(1883)
│ ├─{libvirtd}(1884)
│ └─{libvirtd}(1885)
├─master(1772)─┬─pickup(11801)
│ └─qmgr(1779)
├─mingetty(1916)
├─mingetty(1918)
├─mingetty(1920)
├─mingetty(1922)
├─mingetty(1924)
├─mingetty(1926)
├─rpc.idmapd(1633)
├─rpc.mountd(1588)
├─rpc.rquotad(1583)
├─rpc.statd(1354)
├─rpcbind(1332)
├─rsyslogd(1273)─┬─{rsyslogd}(1274)
│ ├─{rsyslogd}(1276)
│ └─{rsyslogd}(1277)
├─sshd(1682)─┬─sshd(2134)───bash(2138)
│ └─sshd(12948)───bash(12961)───pstree(13101)
├─udevd(536)─┬─udevd(1933)
│ └─udevd(1934)
└─xinetd(1693)

创建脚本

[root@centos65 ~]# vim  /bin/f1.sh
[root@centos65 ~]# ll /bin/f1.sh
-rw-r--r--. 1 root root 101 May 18 17:12 /bin/f1.sh
[root@centos65 ~]# chmod a+x /bin/f1.sh
[root@centos65 ~]# ll /bin/f1.sh
-rwxr-xr-x. 1 root root 101 May 18 17:12 /bin/f1.sh
[root@centos65 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@centos65 ~]# bash /bin/f1.sh
^C
[root@centos65 ~]# cat /bin/f1.sh
#!/bin/bash
sleep 2
pidof httpd &> /dev/null || service httpd restart &> /dev/null
f1.sh

执行脚本

生成了很多的子进程,不能显示全部的,所以就显示+

sshd(1682)─┬─sshd(2134)───bash(2138)───bash(13112)───f1.sh(13116)───f1.sh(13121)───f1.sh(1312+

[root@centos65 ~]# pstree -p
init(1)─┬─abrt-dump-oops(1811)
├─abrtd(1801)
├─acpid(1428)
├─atd(1858)
├─auditd(1251)───{auditd}(1252)
├─automount(1511)─┬─{automount}(1512)
│ ├─{automount}(1513)
│ ├─{automount}(1528)
│ └─{automount}(1531)
├─crond(1843)
├─dbus-daemon(1389)───{dbus-daemon}(1391)
├─dnsmasq(2023)
├─hald(1440)─┬─hald-runner(1441)─┬─hald-addon-acpi(1495)
│ │ └─hald-addon-inpu(1473)
│ └─{hald}(1442)
├─httpd(12723)─┬─httpd(12726)
│ ├─httpd(12727)
│ ├─httpd(12728)
│ ├─httpd(12729)
│ ├─httpd(12730)
│ ├─httpd(12731)
│ ├─httpd(12732)
│ └─httpd(12733)
├─irqbalance(1307)
├─ksmtuned(1830)───sleep(13111)
├─libvirtd(1875)─┬─{libvirtd}(1876)
│ ├─{libvirtd}(1877)
│ ├─{libvirtd}(1878)
│ ├─{libvirtd}(1879)
│ ├─{libvirtd}(1880)
│ ├─{libvirtd}(1881)
│ ├─{libvirtd}(1882)
│ ├─{libvirtd}(1883)
│ ├─{libvirtd}(1884)
│ └─{libvirtd}(1885)
├─master(1772)─┬─pickup(11801)
│ └─qmgr(1779)
├─mingetty(1916)
├─mingetty(1918)
├─mingetty(1920)
├─mingetty(1922)
├─mingetty(1924)
├─mingetty(1926)
├─rpc.idmapd(1633)
├─rpc.mountd(1588)
├─rpc.rquotad(1583)
├─rpc.statd(1354)
├─rpcbind(1332)
├─rsyslogd(1273)─┬─{rsyslogd}(1274)
│ ├─{rsyslogd}(1276)
│ └─{rsyslogd}(1277)
├─sshd(1682)─┬─sshd(2134)───bash(2138)───bash(13112)───f1.sh(13116)───f1.sh(13121)───f1.sh(1312+
│ └─sshd(12948)───bash(12961)───pstree(13149)
├─udevd(536)─┬─udevd(1933)
│ └─udevd(1934)
└─xinetd(1693)

一直执行脚本,并且停止httpd服务

[root@centos65 ~]# bash  /bin/f1.sh 

进程一会儿就会自动激活了

[root@centos65 ~]# service httpd  stop
Stopping httpd: [ OK ]
[root@centos65 ~]# pidof httpd
13424
[root@centos65 ~]# pidof httpd
13424
[root@centos65 ~]# pidof httpd
13424
[root@centos65 ~]# pidof httpd
13429
[root@centos65 ~]# pidof httpd
13429
[root@centos65 ~]# pidof httpd
13429
[root@centos65 ~]# pidof httpd
13449 13448 13447 13446 13445 13444 13443 13442 13429
[root@centos65 ~]# pidof httpd
13449 13448 13447 13446 13445 13444 13443 13442

在有些情况下一个脚本调用另外一个脚本

修改脚本

此脚本实际上是一种循环的变种

[root@centos65 ~]# vim  /bin/f1.sh
[root@centos65 ~]# cat /bin/f1.sh
#!/bin/bash
sleep 2
pidof httpd &> /dev/null || service httpd restart &> /dev/null
source f1.sh [root@centos65 ~]# bash /bin/f1.sh

不会生成子进程了,因为source是自己调用自己

[root@centos65 ~]# pstree -p
init(1)─┬─abrt-dump-oops(1811)
├─abrtd(1801)
├─acpid(1428)
├─atd(1858)
├─auditd(1251)───{auditd}(1252)
├─automount(1511)─┬─{automount}(1512)
│ ├─{automount}(1513)
│ ├─{automount}(1528)
│ └─{automount}(1531)
├─crond(1843)
├─dbus-daemon(1389)───{dbus-daemon}(1391)
├─dnsmasq(2023)
├─hald(1440)─┬─hald-runner(1441)─┬─hald-addon-acpi(1495)
│ │ └─hald-addon-inpu(1473)
│ └─{hald}(1442)
├─httpd(13429)─┬─httpd(13442)
│ ├─httpd(13443)
│ ├─httpd(13444)
│ ├─httpd(13445)
│ ├─httpd(13446)
│ ├─httpd(13447)
│ ├─httpd(13448)
│ └─httpd(13449)
├─irqbalance(1307)
├─ksmtuned(1830)───sleep(15221)
├─libvirtd(1875)─┬─{libvirtd}(1876)
│ ├─{libvirtd}(1877)
│ ├─{libvirtd}(1878)
│ ├─{libvirtd}(1879)
│ ├─{libvirtd}(1880)
│ ├─{libvirtd}(1881)
│ ├─{libvirtd}(1882)
│ ├─{libvirtd}(1883)
│ ├─{libvirtd}(1884)
│ └─{libvirtd}(1885)
├─master(1772)─┬─pickup(13426)
│ └─qmgr(1779)
├─mingetty(1916)
├─mingetty(1918)
├─mingetty(1920)
├─mingetty(1922)
├─mingetty(1924)
├─mingetty(1926)
├─rpc.idmapd(1633)
├─rpc.mountd(1588)
├─rpc.rquotad(1583)
├─rpc.statd(1354)
├─rpcbind(1332)
├─rsyslogd(1273)─┬─{rsyslogd}(1274)
│ ├─{rsyslogd}(1276)
│ └─{rsyslogd}(1277)
├─sshd(1682)─┬─sshd(2134)───bash(2138)───bash(15223)───sleep(15244)
│ └─sshd(12948)───bash(12961)───pstree(15246)
├─udevd(536)─┬─udevd(1933)
│ └─udevd(1934)
└─xinetd(1693)

服务停止之后还会生成进程

[root@centos65 ~]# pidof  httpd
13449 13448 13447 13446 13445 13444 13443 13442 13429
[root@centos65 ~]# service httpd stop
Stopping httpd: [ OK ]
[root@centos65 ~]# pidof httpd
15380 15379 15378 15377 15376 15375 15374 15373

监控进程的时候可以写一个类似的脚本对重要的进程进行监控,比如阿帕奇、nginx、tomcat等等,特别是在小型环境里面使用不到像zabbix这么复杂的软件。

pgrep,pidof工具的使用的更多相关文章

  1. 给Android系统安装busybox

    转自:http://blog.csdn.net/lxgwm2008/article/details/38925051 busybox号称Linux平台的瑞士军刀,它集成了100多个最常用的Linux命 ...

  2. ID

    id 编辑 身份标识号.账号.唯一编码.专属号码.工业设计.国家简称.法律词汇.通用账户.译码器.软件公司等,各类专有词汇缩写. 身份证,身份识别,是一种身份证明. 中文名 身份证,帐号,工业设计,通 ...

  3. Linux下的进程管理

    在操作系统系统中,进程是一个非常重要的概念. 一.Linux中进程的相关知识 1.什么是进程呢? 通俗的来说进程是运行起来的程序.唯一标示进程的是进程描述符(PID),在linux内核中是通过task ...

  4. 成为linux的合格公民

     前言:  该片文章献给申请linux国籍的所有瘾君子们:  还记得17年的勒索病毒感染了无数的window操作系统. 在windows上待久的公民会渴望有无另一个世界,简单的图形化操作使得一切都变的 ...

  5. Linux学习笔记03

    一.Linux常见命令 file:查看文件类型(windows用扩展名识别文件类型) 语法:file [options] [args] -b:显示结果时,不显示文件名 -c:显示执行file命令的执行 ...

  6. 马哥Linux SysAdmin学习笔记(二)

    Linux网络属性管理: 局域网:以太网,令牌环网 Ethernet:CSMA/CD 冲突域 广播域 MAC:media access control地址 48bit: 24bits 24bits  ...

  7. Linux命令行程序和内建指令

    摘录百度分类 文件系统 cat cd chmod chown chgrp cksum cmp cp du df fsck fuser ln ls lsattr lsof mkdir mount mv ...

  8. Unix分类学习

    调试 shell # bash -x script.sh 设置终端背景色 setterm -background black 一.网络 1.网卡状态 mii-tool -v ethtool eth0 ...

  9. C语言一些基础知识

    #include<bits/stdc++.h> #include<bits/stdc++.h>包含C++的所有头文件,看见别人用这个函数,然后就能直接用vector,set,s ...

随机推荐

  1. 【数据库】一篇文章搞掂:Oracle数据库

    PL/SQL的使用 1.安装使用 1.1.安装暂略 1.2.使用 添加环境变量 打开PL/SQL,不要登录,进入界面后,打开设置Preference 设置主目录和OCI库

  2. C#-概念-基础类库:基础类库

    ylbtech-C#-概念-基础类库:基础类库 基础类库 (BCL) 是微软所提出的一组标准库可提供.NET Framework所有语言使用. 随着 Windows 以及 .NET Framework ...

  3. jmeter之ServerAgent监控资源

    对linux服务器的服务进行压测时,服务器的运行情况可以通过添加插件来观察,而不用使用top命令实时的去看 1.资源准备 2.环境准备 3.资源监控 1.资源准备 可通过该网址下载jmeter所有插件 ...

  4. centos 7 环境准备工作

    删除自带jdk: rpm -e --nodeps `rpm -qa | grep java` 打开 /etc/ 目录下的 profile 文件: vi /etc/profile 将如下代码追加到 pr ...

  5. elasticsearch 5.1 认证过期 (your license has expired)

    首先说一下License过期后的状况: if 设置了登录认证,license过期后将无法登录(无法填入用户名密码,下方给出报错,license过期): if 没有设置登录认证,打开kibaba界面中M ...

  6. Harbor - 私有企业级 Docker 镜像仓库

    GitHub 地址 容器镜像服务 Docker镜像的基本使用 Docker:企业级私有镜像仓库Harbor使用 Harbor 是基于 Docker Registry 的企业级镜像仓库,安装后的使用方法 ...

  7. 编程语言 - 大数据 - Hadoop

    Hive - 特例函数 rlike

  8. 永远让比较函数对相等的值返回false

    今天在刷OJ的时候,有一道题一直Runtime Error,查错出来是比较函数写挂掉了,但是不知道错误在哪,于是查阅资料:永远让比较函数对相等的值返回false 具体可点击此处查看分析:链接 另外,在 ...

  9. java实现mysql数据库从一张表插入数据到另一张表

    创建两张表: create table employee( id ), name ), email ), gender ) ); create table copyEmployee( id ), na ...

  10. luoguP2123 皇后游戏(贪心)

    luoguP2123 皇后游戏(贪心) 题目 洛谷题目chuanso 题解 有一篇好题解,我就懒得推式子了,毕竟打到电脑上还是很难的 牛逼题解传送门 code #include<iostream ...