1.查找最近修改的文件
查找最近1-3天内修改的文件,最后加 |grep .php,查找最近3天修改的php文件
find ./ -mtime 0 -o -mtime 1 -o -mtime 2 -o -mtime 3
2.touch修改文件时间
touch -r 参照文件 要修改的文件 //把要修改的文件时间修改为参照文件 touch -t 0507150202 xxx //将xxx日期改为2005/07/15 2:02
3.tar排除打包
打包admin_new 排除下面的data目录
tar zcvf /var/tmp/test.tgz --exclude=admin_new/data admin_new/* // 要排除的文件夹 主目录
4.创建用户同时指定组
addgroup 组名 //创建组 adduser -g 组名 用户名 -s /bin/sh //创建用户指定到组,并且指定shell
5.搜索文件,并删除查找到的文件
find /home/hello/public_html/upload/ -name *.php | xargs rm -rf 或者 find ./ -name "*.url" -exec rm -rf {} \;
find 用xargs来处理带空格的文件名文件(结果里有空格导致xargs处理失败)
find ./ -name "*.jpg" -print0 | xargs -0 tar zcvf pp.tgz
6.nmap扫描内网活动主机
nmap -sP 192.168.10.1/24
7.VPN环境下报错
nmap -v -A -PN -sT localhost 192.168.1.1
8.查找目录下的所有文件中是否含有某个字符串
查找目录下的所有文件中是否含有某个字符串 find .|xargs grep -ri "IBM" 查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名 find .|xargs grep -ri "IBM" -l find ./ -name "*.php" |xargs grep -ri "eval" -l
9.unzip批量解压当前目录下的所有.zip文件,并放到以当前文件名命名的目录下面:
ls *.zip | awk -F'.zip' '{print "unzip \""$0"\" -d \""$1"\""}' | sh
10.vi批量替换字符串
a. 文件内全部替换: %s#abc#def#g(用def替换文件中所有的abc) 例如把一个文本文件里面的“linuxidc.com”全部替换成“linuxidc.net”: :%s#linuxidc.com#xwen.net#g (如文件内有#,可用/替换,比如:%s/linuxidc.com/xwen.net/g) b. 文件内局部替换: 把10行到50行内的“abc”全部替换成“def” :10,50s#abc#def#g(如文件内有#,可用/替换,:%s/abc/def/g) 以上命令如果在g后面再加上c,则会在替换之前显示提示符给用户确认(conform)是否需要替换。 比如 :%s#linuxidc.com#linuxidc.net#gc
11.rsync简单同步(将本地/etc/apache2同步到remoteIP的/etc下,ssh端口是65421)
rsync -avz /etc/apache2 --progress '-e ssh -p 65421' root@remoteIP:/etc/
11.1.带进度条的拷贝文件
rsync -av --progress /files/data.tgz /mnt/
12.tcpdump抓取icmp(监控谁在ping我)
tcpdump -i eth0 icmp
13.查看当前网络详细链接/流量
#debian/ubuntu apt-get install build-essential libncurses5-dev libpcap-dev #centos yum install gcc-c++ libpcap-devel.x86_64 libpcap.x86_64 ncurses* git clone https://github.com/raboof/nethogs cd nethogs/ make make install nethogs