shell从目录下指定的文件类型里匹配关键字

简介:

#!/bin/sh

##################################
# cp source file to new dir 
#
##################################

ROOT_DIR='/home1/www/webpub'
REPLACE_ROOT_DIR='\/home1\/www\/webpub'
FIND_EXT_NAME='*.inc'
FIND_EXT_NAME2='*.INC'
FIND_TEMP_FILE='/tmp/t_inc'
KEY_WORD='market.52pk.com'

#find $ROOT_DIR -name "$FIND_EXT_NAME" -exec grep "$KEY_WORD" {} \;> $FIND_TEMP_FILE
#find $ROOT_DIR -name "$FIND_EXT_NAME2" -exec grep "$KEY_WORD" {} \; >> $FIND_TEMP_FILE
grep -Frl --include="$FIND_EXT_NAME" --include="$FIND_EXT_NAME2" 'market.52pk.com' $ROOT_DIR > $FIND_TEMP_FILE


while read line
do
DIR_NAME=$(dirname $line)
echo $DIR_NAME
NEW_DIR_NAME=$(echo $DIR_NAME | sed -e "s#$REPLACE_ROOT_DIR##g")
echo $NEW_DIR_NAME
if [ ! -d $NEW_DIR_NAME ]
then
mkdir -p $NEW_DIR_NAME
fi

cp -a $line $NEW_DIR_NAME

done < $FIND_TEMP_FILE


rm -rf $FIND_TEMP_FILE


本文转自 liang3391 51CTO博客,原文链接:http://blog.51cto.com/liang3391/456619


相关文章
|
1月前
|
Shell Linux C语言
【Shell 命令集合 磁盘管理 】Linux 只删除空目录 mrd命令使用教程
【Shell 命令集合 磁盘管理 】Linux 只删除空目录 mrd命令使用教程
31 0
|
1月前
|
Shell Linux API
【Shell 命令集合 磁盘维护 】Linux 查找指定目录下的所有符号链接文件 symlinks 命令使用教程
【Shell 命令集合 磁盘维护 】Linux 查找指定目录下的所有符号链接文件 symlinks 命令使用教程
33 1
|
1月前
|
存储 Shell Linux
【Shell 命令集合 磁盘管理 】⭐⭐ Linux 显示当前shell会话中的目录栈 dirs命令使用教程
【Shell 命令集合 磁盘管理 】⭐⭐ Linux 显示当前shell会话中的目录栈 dirs命令使用教程
27 0
|
1月前
|
存储 Shell Linux
【Shell 命令集合 磁盘管理 】Linux 从远程磁带设备中删除文件或目录rmt命令使用教程
【Shell 命令集合 磁盘管理 】Linux 从远程磁带设备中删除文件或目录rmt命令使用教程
27 0
|
1月前
|
存储 安全 Shell
⭐⭐⭐【Shell 命令集合 磁盘管理 】Linux 显示当前工作目录的路径 pwd命令使用教程
⭐⭐⭐【Shell 命令集合 磁盘管理 】Linux 显示当前工作目录的路径 pwd命令使用教程
38 0
|
1月前
|
Shell Linux C语言
【Shell 命令集合 磁盘管理 】Linux 删除指定目录下的文件和子目录 mmd命令使用指南
【Shell 命令集合 磁盘管理 】Linux 删除指定目录下的文件和子目录 mmd命令使用指南
36 0
|
1月前
|
Shell Linux Serverless
【Shell 命令集合 磁盘管理 】Linux 显示目录中每个子目录的磁盘使用情况 mdu命令使用教程
【Shell 命令集合 磁盘管理 】Linux 显示目录中每个子目录的磁盘使用情况 mdu命令使用教程
27 0
|
1月前
|
Shell Linux C语言
【Shell 命令集合 磁盘管理 】Linux 以树状图列出目录的内容 tree命令使用指南
【Shell 命令集合 磁盘管理 】Linux 以树状图列出目录的内容 tree命令使用指南
39 0
|
1月前
|
Shell Linux C语言
【Shell 命令集合 磁盘管理 】Linux 删除空目录 rmdir命令使用教程
【Shell 命令集合 磁盘管理 】Linux 删除空目录 rmdir命令使用教程
26 0
|
1月前
|
存储 Shell Linux
【Shell 命令集合 磁盘管理 】Linux 创建目录 mkdir 命令使用指南
【Shell 命令集合 磁盘管理 】Linux 创建目录 mkdir 命令使用指南
30 0