【Linux命令】Linux常用命令


Linux常用命令


1、查找当前目录下所有以.tar结尾的文件然后移动到指定目录:

find . -name *.log | xargs -I '{}' mv {} ./log
find /usr/ -name "*.log" -exec mv {} ./log/ \;#注意:以 \; 结尾,否则报错

注解:find –name 主要用于查找某个文件名字,-exec 、xargs可以用来承接前面的结果,然后将要执行的动作,一般跟find在一起用的很多,find使用我们可以延伸-mtime查找修改时间、-type是指定对象类型(常见包括f代表文件、d代表目录),-size 指定大小,例如经常用到的:查找当前目录30天以前大于100M的LOG文件并删除。

#查找名字中带有log,并且修改时间为3天前的文件
find / -name  "log" -mtime +3 -type f
#3天内
find / -name  "*.log" -mtime -3 -type f
#查找名字带有log的目录
find / -name  "log" -type d 
# -size 
find / -name  "*.log" -mtime +3 -type f -size +1k

find . -name "*.log" –mtime +30 –type f –size +100M |xargs rm –rf {};

2、批量解压当前目录下以.zip结尾的所有文件到指定目录:

for i  in  `find . –name "*.zip" –type f`
do
unzip –d $i /data/www/img/
done

注解:forI in (command);do … done为for循环的一个常用格式,其中I为变量,可以自己指定。

3、如何判断某个目录是否存在,不存在则新建,存在则打印信息

#!/bin/bash
DIR="/data/backup"
#if [ ! –d $DIR ]
#then
if [ ! -d "$DIR" ]; then
  mkdir "$DIR"
else
  echo  "The Directory alreadyexists,please exit"
fi

分享18个 实用 Linux 运维命令及知识