パターンに一致するある場所から別の場所にディレクトリをコピーする方法。
たとえば、
source = /media/src/
destination = /media/dest/
- パターンは次のとおりです
/b/w{2}_/w{2}/b
。つまりaa_bb
、、、、、などfg_sd
のすべてのディレクトリです。re_ya
AA_BB
aa_Bx
Ba_BB
答え1
答え2
これがあなたが望むものであることを確認してください。 xx_yy/ab_cd/&&_$$(2char_2char) 形式のディレクトリを検索し、内容を新しいディレクトリにコピーします。
usage : ./script.sh
cat script.sh
#!/bin/bash
MYDIR="/media/src/"
NEWDIRPATH="/media/dest"
DIRS=`ls -l $MYDIR | grep "^d" | awk '{print $9}'`
for DIR in $DIRS
do
total_characters=`echo $DIR | wc -m`
if [ $total_characters -eq 6 ]; then
has_underscore=`echo "$DIR" | grep "_"`
if [ "$has_underscore" != "" ]; then
echo "${DIR}"
start_string_count=`echo $DIR | awk -F '_' '{print $1}' | wc -m`
end_string_count=`echo $DIR | awk -F '_' '{print $2}' | wc -m`
echo "start_string_count => $start_string_count ; end_string_count => $end_string_count"
if [ $start_string_count -eq 3 ] && [ $end_string_count -eq 3 ]; then
cp -r $DIR $NEWDIRPATH/
fi
fi
fi
done