一些平时用到的技术小知识(持续更新)

转载 2016年01月21日 20:34:05

这个帖子将会记录一些平时可能用到的技术小知识,因为每个只是小小的一个知识点,不需要展开来写,所以就全部整合在一起,方便忘了的时候看。

【Linux】

1. linux后台运行和关闭、查看后台任务(出处

fg、bg、jobs、&、nohup、ctrl+z、ctrl+c 命令

(1)&

加在一个命令的最后,可以把这个命令放到后台执行,如
watch  -n 10 sh  test.sh  &   #每10s在后台执行一次test.sh脚本

(2)Ctrl+z

可以将一个正在前台执行的命令放到后台,并且处于暂停状态。

(3)jobs

查看当前有多少在后台运行的命令
jobs -l  选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated。但是如果任务被终止了(kill),shell 从当前的shell环境已知的列表中删除任务的进程标识。

(4)fg

将后台中的命令调至前台继续运行。如果后台中有多个命令,可以用fg %jobnumber(是命令编号,不是进程号)将选中的命令调出。

(5)bg

将一个在后台暂停的命令,变成在后台继续执行。如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出。

(6)kill

法子1:通过jobs命令查看job号(假设为num),然后执行kill %num ;
法子2:通过ps命令查看job的进程号(PID,假设为pid),然后执行kill pid 。

(7)Ctrl+c

前台进程的终止。

(8)nohup

如果让程序始终在后台执行,即使关闭当前的终端也执行(之前的&做不到),这时候需要nohup。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。关闭终端后,在另一个终端jobs已经无法看到后台跑得程序了,此时利用ps(进程查看命令)
ps -aux | grep "test.sh"  #a:显示所有程序 u:以用户为主的格式来显示 x:显示所有程序,不以终端机来区分。

2. 系统任务相关命令 -- chkconfig(出处

chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。

参数用法:
--add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
--del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
--level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
      等级0表示:表示关机
      等级1表示:单用户模式
      等级2表示:无网络连接的多用户命令行模式
      等级3表示:有网络连接的多用户命令行模式
      等级4表示:不可用
      等级5表示:带图形界面的多用户模式
      等级6表示:重新启动
      需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。

chkconfig --list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
chkconfig [--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。

运行级文件:
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

使用范例:
chkconfig --list        #列出所有的系统服务
chkconfig --add httpd        #增加httpd服务
chkconfig --del httpd        #删除httpd服务
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list        #列出系统所有的服务启动情况
chkconfig --list mysqld        #列出mysqld服务设置情况
chkconfig --level 35 mysqld on        #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on        #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

如何增加一个服务:
(1)服务脚本必须存放在/etc/init.d/目录下;
(2)chkconfig --add servicename
在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
(3)chkconfig --level 35 mysqld on
修改服务的默认启动等级。

3. 查看Linux内核版本

(1)[root@Jerry ~]# cat /proc/version
Linux version 2.6.32-431.23.3.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Thu Jul 31 17:20:51 UTC 2014

(2)[root@Jerry ~]# uname -a
Linux Jerry 2.6.32-431.23.3.el6.x86_64 #1 SMP Thu Jul 31 17:20:51 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

4. 查看Linux系统版本(出处

(1)[root@Jerry ~]# lsb_release -a
LSB Version:     :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch
Distributor ID:  CentOS
Description:      CentOS release 6.5 (Final)
Release:            6.5
Codename:       Final

(注:这个命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版)

(2)[root@Jerry ~]#cat /etc/issue
CentOS release 6.5 (Final)
Kernel \r on an \m

(3)[root@Jerry ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)


相关文章推荐

平时收藏的URL(持续更新)

平时在学习过程中,收集的一些有用的网址,在此备忘。旁人可以忽略或飘过。。。...

平时工作中的疑问收集(持续更新)

1、int.class 、Integer.TYPE、Integer.class的区别 一般的“**.class”返回**类的class对象,表示该类的类型; Integer.TYPE表示为:代表此...

平时问题汇总(持续更新)

1. 判断边界一定要注意,是  i>=0&&i=0&&j=1&&i=1&&j

一些平时用的iOS 10的小知识点

修改UITextField的光标颜色textField.tintColor = [UIColor whiteColor]; UITextField占位文字相关的设置// 设置占位文字内容 @prope...

平时积累小知识

Google JQ库文件连接 http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js http://ajax.googleapis....

平时看到C/C++ 结构体问题的一些知识,比较有用,分享出来

程序如下: #include #include #include #include #define MAX_VERTEX_NUM 20 #define INFINITY INT_MAX using...

你平时读的专业书籍或访问的技术网站有哪些?

转载自新书《程序员面试笔试宝典》官网 “好马配好鞍,好鞍配好马”。一般认为,程序员的个人能力与其阅读的书籍数量、书籍质量存在着巨大的关联关系,所以面试官有时会把求职者阅读的专业书籍作为评价求职者...

平时看的优质技术博客与网站

经常看的一些优质的技术网站,博客,论坛
  • xxx_zhi
  • xxx_zhi
  • 2016年04月25日 20:58
  • 509

C/C++文档注释神器——Doxygen常用知识整理(持续更新)

C/C++文档注释神器——Doxygen常用知识整理(持续更新) 分类: C++2010-04-14 20:48 772人阅读 评论(0) 收藏 举报 Doxygen是什么 Do...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一些平时用到的技术小知识(持续更新)
举报原因:
原因补充:

(最多只允许输入30个字)