こんにちはみんな grep に問題があります。シェルスクリプトに別の検索コードがあるかどうかはわかりません。Flash Disk に保存されているフォルダー AhmetsFiles をバックアップしようとしていますが、同時にそれらを拡張子でグループ化し、[extensionName] フォルダーに保存する必要があります。
例: /media/FlashDisk/AhmetsFiles/lecture.pdf は /home/$(whoami)/Desktop/backups/pdf に保存する必要があります
問題は、名前にスペースが含まれているファイルをコピーできないことです。(講義 2.pptx) この紹介の後、ここに私のコードを示します。
filename="/media/FlashDisk/extensions"
count=0
exec 3<&0
exec 0< $filename
mkdir "/home/$(whoami)/Desktop/backups"
while read extension
do
cd "/home/$(whoami)/Desktop/backups"
rm -rf "$extension"
mkdir "$extension"
cd "/media/FlashDisk/AhmetsFiles"
files=( `ls | grep -i "$extension"` )
fCount=( `ls | grep -c -i "$extension"` )
for (( i=0 ; $i<$fCount ; i++ ))
do
cp -f "/media/FlashDisk/AhmetsFiles/${files[$i]}" "/home/$(whoami)/Desktop/backups/$extension"
done
let count++
done
exec 0<&3
exit 0