查询进程信息

  • ps -aux
  • ps -le
  • pstree 进程树
  • pstree -p 显示进程PID
  • pstree -u 显示进程所属用户

查看当前网络状态

  • netstat -ntlp | grep httpd 查询httpd的端口信息
  • netstat -atnp | grep httpd
  • netstat -atnp | grep 80 查看端口

远程连接工具

  • scp //安全拷贝
  • scp filename/dir1 user@远程服务器ip:dir2 (冒号和IP之间没有空格)
  • 如果需要拷贝目录的话可以加-r指令

SSH无密码登录和ssh常用命令

第一步:在本地机器上使用ssh-keygen产生公钥私钥对

  1. $ ssh-keygen

第二步:用ssh-copy-id将公钥复制到远程机器中

$  ssh-copy-id -i .ssh/id_rsa.pub  用户名字@192.168.x.xxx

注意: ssh-copy-id 将key写到远程机器的 ~/ .ssh/authorized_key.文件中

第三步: 登录到远程机器不用输入密码

  1. $  ssh 用户名字@192.168.x.xxx
  2. Last login: Sun Nov 16 17:22:33 2008 from 192.168.1.2

AWK 和 Sed

cut[选项]  文件名 

选项:

-f 列号 : 提取的列的号码

-d分隔符:

eg:cut -f 2 examplr.txt

eg: cut -d ":" -f 1,3 /etc/passwd

awk是一种比较强大的文本处理工具

awk '{print $1," \t" ,$2 , "\t",$5}'

awk 'BEGIN{FS=":"}{print $1," \t" ,$2 , "\t",$5}' #从头开始 FS是一个内置变量

awk内置变量

$n

当前记录的第n个字段,字段间由FS分隔

$0

完整的输入记录

ARGC

命令行参数的数目

ARGIND

命令行中当前文件的位置(从0开始算)

ARGV

包含命令行参数的数组

CONVFMT

数字转换格式(默认值为%.6g)ENVIRON环境变量关联数组

ERRNO

最后一个系统错误的描述

FIELDWIDTHS

字段宽度列表(用空格键分隔)

FILENAME

当前文件名

FNR

各文件分别计数的行号

FS

字段分隔符(默认是任何空格)

IGNORECASE

如果为真,则进行忽略大小写的匹配

NF

一条记录的字段的数目

NR

已经读出的记录数,就是行号,从1开始

OFMT

数字的输出格式(默认值是%.6g)

OFS

输出记录分隔符(输出换行符),输出时用指定的符号代替换行符

ORS

输出记录分隔符(默认值是一个换行符)

RLENGTH

由match函数所匹配的字符串的长度

RS

记录分隔符(默认是一个换行符)

RSTART

由match函数所匹配的字符串的第一个位置

SUBSEP

数组下标分隔符(默认值是/034)

sed的用法

语法:sed [选项]  [动作]

常用选项

-n 使用安静模式,显示经过sed特殊处理的数据

-e  允许多点编辑

-i  直接修改读档的内容,而不是由屏幕输出

命令

a\ 新增,a后面可以接字符串,在下一行出现

c\ 替换

d 删除

p 打印

s 查找替换 s/old/new/g(全局的意思)

eg:

sed  -n '2p' example.txt //显示第二行

sed -n '2i test ' example.txt //在第二行插入test字符串

sed -n '2a test' xx.txt //在第二行下面插入test

sed -n '2c cc 11' xx.txt //替换第二行为cc 11

正则匹配

^代表开始     $结尾