Я создал скрипт, и он перемещает файлы с разными расширениями в указанные каталоги.Если этот каталог отсутствует, он создает другой каталог (куда будут отправляться файлы) и создает другой каталог, в который будут добавляться остальные файлы с различными расширениями.
Моя первая проблема заключается в том, что я хочу, чтобы при установке-d
и полный путь на терминале, он должен перемещать только медиа-файлы, -l
и полный путь для перемещения всех текстовых файлов, затем -x
, чтобы изменить расширение в верхний регистр, затем -u
в нижний регистр.
Может ли кто-нибудь изменить это для меня и показать, как преодолеть эту проблему?
#!/bin/bash
From="/home/elg19/lone/doc"
To="/home/elg19/mu"
WA="/home/elg19/du"
MA="/home/elg19/dq"
WQ="/home/elg19/d2"
# this function checks if the directory exits and creates one if it does not then moves all doc files
function mama(){
if [[ ! -d "$WA" ]]; then
mkdir -p "$WA"
fi
cd "$From"
for i in pdf txt doc; do
find . -type f -name "*.${i}" -exec mv "{}" "$WA" \;
done
}
# this function checks if the directory exits and creates one if it does not then moves all media files
function so(){
if [[ ! -d "$To" ]]; then
mkdir -p "$To"
fi
cd "$From"
for i in mp3 mp4 swf; do
find . -type f -name "*.${i}" -exec mv "{}" "$To" \;
done
}
# this function checks if the directory exits and creates one if it does not then moves all image files
function soa(){
if [[ ! -d "$MA" ]]; then
mkdir -p "$MA"
fi
cd "$From"
for i in jpg gif png; do
find . -type f -name "*.${i}" -exec mv "{}" "$MA" \;
done
}
# this function checks if the directory exits and creates one if it does not then moves all the remaining files
function soaq(){
if [[ ! -d "$WQ" ]]; then
mkdir -p "$WQ"
fi
cd "$From"
for i in *; do
find . -type f -name "*.${i}" -exec mv "{}" "$WQ" \;
done
}
mama
so
soa
soaq