系列·Linux精选命令行(第2期)

社区广播:运维派(Yunweipai.com)是国内最早成立的IT运维社区,欢迎大家投稿,让运维人不再孤寂的成长!

一直尝试一个命令直到成功
until [[ $? -eq 0 ]]; do YOURCOMMAND; done

按类型统计文件数量
ls | tr [:upper:] [:lower:] | grep -oP ‘\.[^\.]+$’ | sort | uniq -c | sort

查看两个目录下文件的区别,快速复制和粘贴打印出的东西,用vimdiff进行更详细的比较
diff -q dir1/ dir2/ | grep differ | awk ‘{ print “vimdiff ” $2 ” ” $4 }’

对当前目录下的所有文件进行替换
find . -type f -exec sed -i ‘s/gw10./gw17./g’ {} \;

找一个可以用的端口
port=32768; while netstat -atn | grep -q :$port; do port=$(expr $port + 1); done; echo $port

查看监听的端口
netstat -ltun

假装比较忙方法
export GREP_COLOR=’1;32′; cat /dev/urandom | hexdump -C | grep –color=auto “ca fe”

列出已经定义的bash函数
compgen -A function

查找超过指定大小的文件
find directory -size +nnn

监视文件的方法
watch -d ‘ls -l’

创建目录并且进入刚创建的目录
mkdir /home/foo/doc/bar && cd $_

basename命令的替代用法
echo ${file##*/}

显示所有有活动进程的用户
ps -eo user | sort -u

排序最多使用的命令
history | awk ‘{print $2,$3}’ | sed s/sudo// | awk ‘{print $1}’ | awk ‘BEGIN {FS=”|”}{print $1}’ | sort | uniq -c | sort -n | tail | sort -nr

倒计时
MIN=10;for ((i=MIN*60;i>=0;i–));do echo -ne “\r$(date -d”0+$i sec” +%H:%M:%S)”;sleep 1;done

显示BIOS信息
dmidecode -t bios

远程压缩后写到本地
ssh user@remote “tar cfp – /path/to/log/* | gzip” > local.tar.gz

带进度条的复制命令
copy(){ cp -v “$1” “$2″&watch -n 1 ‘du -h “$1” “$2”;printf “%s%%\n” $(echo `du -h “$2″|cut -dG -f1`/0.`du -h “$1″|cut -dG -f1`|bc)’;}

获得小于500的随机数
RANGE=500;number=$RANDOM let “number %= $RANGE”; echo “Random number less than $RANGE — $number”

网友评论comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注

  1. 1980jz说道:

    第一次来这,围观下博主文章

  2. 超級efly说道:

    前來支持一下~感謝分享~學習啦!

  3. 广州除甲醛说道:

    感谢分享。。。

  4. 站长论坛说道:

    远程压缩后写到本地

Copyright © 2012-2017 YUNWEIPAI.COM - 运维派 - 粤ICP备14090526号-3
扫二维码
扫二维码
返回顶部