巧用1

一句话修改或者给用户设置密码,并且防止历史命令记住设置的密码

  echo "qqxde:ioj123"|passwd --stdin Dicky && history -c

巧用2

如何查看并杀死僵尸进程?
在运行ansible的时候,可能由于机器太多,后者一些其他的未知原因,导致出现了僵尸进程,从而导致不能够让进程接着往下面来继续执行
为此我们需要杀死进程,然后继续让程序进行

用下面的命令找出僵死进程

ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]'

命令注解:
  -A 参数列出所有进程
  -o 自定义输出字段 我们设定显示字段为 stat(状态), ppid(进程父id), pid(进程id),cmd(命令)这四个参数

-C 用来指定所执行的命令名称,你这里也就是让ps仅仅显示php命令所产生的进程的信息

因为状态为 z或者Z 的进程为僵尸进程,所以我们使用grep抓取stat状态为zZ进程
然后杀死她;
kill -9  pid

最近又遇到了个问题,一台服务器上产生了100多少僵死进程,而且每一僵死进程的父进程都不一样,如果用上面的方法,一条一条的杀,那还不得累死我啊。
那么就应该想一条简单的命令,直接查找僵死进程,然后将父进程杀死~

ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]' | awk '{print $2}' | xargs kill -9

巧用三:

 时间与时间戳的转换
[root@iZ940ao463eZ ~]# date -d "2014-09-10" +%s [root@iZ940ao463eZ ~]# date -d @ '+%Y-%m-%d'
--
[root@iZ940ao463eZ ~]#

巧用四

在linux下使用python增加补全功能,脚本如下:

 #!/usr/bin/env python
# coding: UTF-
# python tab file import sys
import readline
import rlcompleter
import atexit
import os
#tab completion
readline.parse_and_bind('tab: complete')
#history file
histfile = os.path.join(os.environ['HOME'],'.pythonhistory')
try:
readline.read_history_file(histfile)
except IOError:
pass
atexit.register(readline.write_history_file,histfile) del os,histfile,readline,rlcompleter

将上面这段代码插入到python的环境变量,我的路径如下

 >>>
>>> sys.path
['', '/usr/lib64/python26.zip', '/usr/lib64/python2.6', '/usr/lib64/python2.6/plat-linux2', '/usr/lib64/python2.6/lib-tk', '/usr/lib64/python2.6/lib-old', '/usr/lib64/python2.6/lib-dynload', '/usr/lib64/python2.6/site-packages', '/usr/lib/python2.6/site-packages', '/usr/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg-info']
>>>

将脚本考到目录下

cp tab.py /usr/lib64/python2./site-packages/

测试:

 >>> import tab
>>> import json
>>> json.
json.JSONDecoder( json.__doc__ json.__new__( json.__sizeof__( json.dump(
json.JSONEncoder( json.__file__ json.__package__ json.__str__( json.dumps(
json.__all__ json.__format__( json.__path__ json.__subclasshook__( json.encoder
json.__author__ json.__getattribute__( json.__reduce__( json.__version__ json.load(
json.__class__( json.__hash__( json.__reduce_ex__( json._default_decoder json.loads(
json.__delattr__( json.__init__( json.__repr__( json._default_encoder json.scanner
json.__dict__ json.__name__ json.__setattr__( json.decoder
>>> json.

带宽:

网络服务商声称光纤的速度为“ 3M”,一般的情况下,“3M”实际上就是3000Kbit/s(按千进位计算)这就存在一个换算的问题。
Byte和bit是不同的。1Byte=8bit.而我们常说的下载速度都指的是Byte/s 因此电信所说的“3M”经过还换算后就成为了(3000/8)KByte/s=375KByte/s这样我们平时下载速度最高就是375KByte/s常常表示375KB/S.
3M是3Mbps的缩写,M表示10的6次方,3M全部含义是3000000bit/s = 3000K bit/s,364K/s 是364K Bit/s的缩写,1 Bit = 8bit,所以3Mbps=3000K/8 Bit/s=375K/s,

巧记五

cat -v install.sh|tr -d "^M" v   去除空格

巧用六根据inode删除文件

find ./ -inum 919306 -exec rm -i {} \;

巧用七

pip的安装

 cat  pip_an.sh
#!/bin/bash
wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
tar zxvf setuptools-.6c11.tar.gz
cd setuptools-.6c11
python setup.py build
python setup.py install
wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa33326"
tar -xzvf pip-1.5..tar.gz
cd pip-1.5.
python setup.py install

巧用八

Linux下文件的特殊权限

setcap

详情:

https://wiki.archlinux.org/index.php/Capabilities_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

http://kibazen.cn/2016/linux-file-specical-permission/

知识记录

linux版本,包版本
带i386、i486、i586、i686、x86等的一般是32位的,带x64、amd64、x86_64、x86-64等的一般是64位的

知识补充:

Linux的/etc/services文件简析

主要在tcpdump中,解析端口号用的到

cat  /etc/services|grep  xxx

/etc/services文件是记录网络服务名和它们对应使用的端口号及协议。文件中的每一行对应一种服务,它由4个字段组成,中间用TAB或空格分隔,分别表示“服务名称”、“使用端口”、“协议名称”以及“别名”。

如图所示:

总结:/etc/services文件包含了服务名和端口号之间的映射,很多的系统程序要使用这个文件。一般情况下,不要修改该文件的内容,因为这些设置都是Internet标准的设置。一旦修改,可能会造成系统冲突,使用户无法正常访问资源。Linux系统的端口号的范围为0–65535,不同范围有不同的意义。

  • 0 不使用
  • 1--1023 系统保留,只能由root用户使用
  • 1024---4999 由客户端程序自由分配
  • 5000---65535 由服务器端程序自由分配

linux命令巧用,随手记的更多相关文章

  1. Linux命令随手记

    随手记录常用的Linux命令. tar 解压.   tar   -xzvf tar 压缩:tar   -czvf   .tgz (z是压缩格式,x为解压,v为显示过程,f指定备份文件) tar -zc ...

  2. 5个相见恨晚的Linux命令

    阅读本文大概需要 2.4 分钟. 作者 | 李火清 转载自[CU技术社区] 编者按:说到Linux命令相信大家都不陌生,就连前端现在也要经常在 terminal 敲一些 node,gulp等命令,本文 ...

  3. [转帖]50个必知的Linux命令技巧,你都掌握了吗?

    50个必知的Linux命令技巧,你都掌握了吗? https://blog.51cto.com/lizhenliang/2131141 https://blog.51cto.com/lizhenlian ...

  4. Python实现Linux命令xxd -i功能

    目录 Python实现Linux命令xxd -i功能 声明 一. Linux xxd -i功能 二. xxd -i常见用途 三. 类xxd -i功能的Python实现 Python实现Linux命令x ...

  5. Linux实战教学笔记04:Linux命令基础

    第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...

  6. 像黑客一样使用 Linux 命令行

    前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...

  7. 11 个很少人知道但很有用的 Linux 命令

    Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有 ...

  8. Linux命令随笔

    Linux命令总结 man ==命令帮助; help ==命令的帮助(bash的内置命令); ls ==list,查看目录列表; -ld:查看目录权限; -l:(long)长格式显示属性; -F:给不 ...

  9. linux命令在线手册

    下面几个网址有一些 Linux命令的在线手册,而且还是中文的,还可以搜索.非常方便 Linux命令手册 Linux命令大全 Linux中文man在线手册 每日一linux命令

随机推荐

  1. 未找到数据,异常处理:exception when no_data_found then 异常处理语句;

    未找到数据. 在 select 字段 Into 变量 from 表 where 条件: 这种语句中很有可能会有select 不到数据的问题,导致报错"未找到数据" 要解决这种问题需 ...

  2. 夯实基础之php学习-2提高篇

    1,Jpgraph, 详见Php图形化jpgraph 2,文件系统 文件的操作步骤:打开文件->操作文件->关闭文件 打开文件fopen(filename,mode) 关闭文件fclose ...

  3. EEG: electrode positions & Broadmann atlas

    Source: http://www.brainm.com/software/pubs/dg/BA_10-20_ROI_Talairach/nearesteeg.htm   Area LEFT RIG ...

  4. poj3270

    Cow Sorting Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 6750   Accepted: 2633 Descr ...

  5. Java集合系列:-----------04fail-fast总结(通过ArrayList来说明fail-fast的原理以及解决办法)

    前面,我们已经学习了ArrayList.接下来,我们以ArrayList为例,对Iterator的fail-fast机制进行了解.内容包括::1 fail-fast简介2 fail-fast示例3 f ...

  6. 苹果iPhone如何区分港版、国行、水货

    要想分辨所购买的苹果产品[iPhone 4.iPod Touch.iPad 2.iMac.MacBook及iPhone 4S]是大陆行货.水货.港货还是其它,其实很简单.今天来教大家如何区分.大陆行货 ...

  7. C#计算文件的MD5值实例

    C#计算文件的MD5值实例 MD5 是 Message Digest Algorithm 5(信息摘要算法)的缩写,MD5 一种散列(Hash)技术,广泛用于加密.解密.数据签名和数据完整性校验等方面 ...

  8. [py]特殊函数+文件保护

    1函数的好处 2函数的全局变量和局部变量 3,包和文件夹的区别 4,__name__ __file__ __doc__ #判断是否为主程序 if __name__=='__main__': pass ...

  9. codevs2010 求后序遍历

    难度等级:白银 2010 求后序遍历 题目描述 Description 输入一棵二叉树的先序和中序遍历序列,输出其后序遍历序列. 输入描述 Input Description 共两行,第一行一个字符串 ...

  10. node基础01:简要介绍

    1.node vs php 优点 性能高(机制问题) 开发效率高(省了不少优化的事) 应用范围广(可以开发桌面系统,electron框架) 缺点 新,人少 中间件少 IDE不完善 2.node的劣势和 ...