正在加载...
分页: 1/7 第一页 1 2 3 4 5 6 7 下页 最后页 [ 显示模式: 摘要 | 列表 ]

shell grep 查找进程的小技巧

[ 2012/12/29 17:34 | by selboo ]
        大部分人在写Shell 过滤进程的时候  都会使用 grep  在 ps aux 的输出结果中查找指定的进程,但此时也会把 grep 进程也显示出来 比如查找 pptpd 进程,会匹配出来两条:

This is The Code
[root@selboo ~]# ps aux | grep pptp
root     20191  0.0  0.2   5108   704 pts/2    R+   16:58   0:00 grep pptp
root     22054  0.0  0.1   1952   608 ?        Ss   Oct22   0:00 /usr/sbin/pptpd
Parsed in 0.000 seconds at N/A

常见的防止grep进程出现的方法就是在对加一个管道 grep -v grep 进行过滤:

This is The Code
[root@selboo ~]# ps aux | grep pptp | grep -v grep
root     22054  0.0  0.1   1952   608 ?        Ss   Oct22   0:00 /usr/sbin/pptpd
Parsed in 0.000 seconds at N/A

还有一个更方便的方法是用 正则 grep [p]ptpd来搜索pptpd这个进程:

This is The Code
[root@selboo ~]# ps aux | grep [p]ptp  
root     22054  0.0  0.1   1952   608 ?        Ss   Oct22   0:00 /usr/sbin/pptpd
Parsed in 0.000 seconds at N/A

#!/bin/bash

SEND_THREAD_NUM=13
tmp_fifofile=”/tmp/$$.fifo” # 脚本运行的当前进程ID号作为文件名
mkfifo “$tmp_fifofile” # 新建一个随机fifo管道文件
exec 6<>”$tmp_fifofile” # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for ((i=0;i<$SEND_THREAD_NUM;i++));do
echo # for循环 往 fifo管道文件中写入13个空行
done >&6

for i in `seq 100`;do # 100 次 for 循环 开始
read -u6 # 从文件描述符6中读取行(实际指向fifo管道)

{
echo $i # 打印 i
sleep 3 # 暂停3秒
echo >&6 # 再次往fifo管道文件中写入一个空行。
} &

# {} 这部分语句被放
Tags: ,

深入浅出Shell编程: Shell 变量

[ 2010/08/31 10:43 | by selboo ]





































表示方法描述
$n$1 表示第一个参数,$2 表示第二个参数 …
$#命令行参数的个数
$0当前程序的名称
$?前一个命令或函数的返回码
$*以”参数1 参数2 … ” 形式保存所有参数
$@以”参数1″ “参数2″ … 形式保存所有参数
$$本程序的(进程ID号)PID
$!上一个命令的PID
Tags:

监控网络流量的脚本

[ 2010/07/29 11:26 | by selboo ]
From:http://www.alidba.net/index.php/archives/139

在我们的日常工作当中,监控网络要么使用iptarf,ifstat这些命令实现的,但是需要装额外的RPM包。特别是iptarf装起来麻烦。

我看了下,linux下的/proc/net/dev记录了每块网卡发送和接受的包和字节数。因此萌生想法,写了一个。运行效果:

[code][root@74-82-173-217 ~]# ./net.sh
Current Ip:   inet addr:74.82.173.217 Bcast:74.82.173.223 Mask:255.255.255.224
Summry info:  RX bytes:203692709 (194.2 MiB) TX bytes:93525930 (89.1 MiB)
eth0 Receive Bytes: 573  Packets: 3
eth0 Send
Tags: ,

linux下shell命令的常用快捷键

[ 2010/04/08 22:08 | by selboo ]
下面是一些shell的常用快捷键,快捷键玩熟悉了在一定程度上是可以提高工作效率滴…

Ctrl + a 切换到命令行开始
Ctrl + e 切换到命令行末尾
Ctrl + l 清除屏幕内容
Ctrl + u 清除剪切光标之前的内容
Ctrl + k 剪切清除光标之后的内容
Ctrl + y 复制剪切板里的内容
Ctrl + h 类似于退格键
Ctrl + r 在历史命令中查找 (这个非常好用,输入关键字就调出以前的命令了)
Ctrl + c 终止命令
Ctrl + d 退出shell
Ctrl + z 转入后台运行..
alt键比较少用,因为很多地方与远程登陆工具是有冲突的..
Alt + f 切换光标前的字母
Alt + b 切换光标后的字母
分页: 1/7 第一页 1 2 3 4 5 6 7 下页 最后页 [ 显示模式: 摘要 | 列表 ]