-1
bashスクリプトを使用して独自のrmコマンドを作成しようとしていますが、新しいコマンド「remove」は1つまたは複数のパラメータ(ファイルとフォルダ)それがファイルを見つけたときディレクトリが空になったときにディレクトリとディレクトリ自体を削除する
:それはこのように行動しなければならない、それはそれを
を削除する前に許可の親をチェックする必要があり、それは空のディレクトリを見つけたとき、それはそれ
と最後を削除する必要がありますケースでは、空でないフォルダが見つかった場合は、もちろんその権限をチェックした後にそのコンテンツをすべて削除しなければならず、親ディレクトリが空になった場合はommandそれを削除する必要がありすぎ
私の問題は、第三の場合は、私のために動作しないということであるここ
は、私はそれがはるかになると思い空のディレクトリを見つけるために私のコード#!/bin/bash
if [ $# -lt 1 ]
then
echo "Executer la commande avec au moins un paramètre"
else
for i in $*
do
filename=`basename $i`
#echo "nom fichier : $filename"
path=`dirname $i`
#echo "chemin du fichier : $path"
#Vérification de l'existence du fichier/rep
if [ -e $path/$filename ]
then
# Si fichier
if [ -f $path/$filename ]
then
echo "fichier"
$HOME/droit_parent $path
valretourne=$?
if [ $valretourne -eq 20 ]
then
echo "Erreur : `dirname $path` n\'a pas le droitW"
else if [ $valretourne -eq 10 ]
then
rm -f $path/$filename
echo "$path/$filename a été bien supprimé"
fi
fi
fi
#Si rep
if [ -d $path/$filename ]
then
echo "repertoire"
if [ "$(ls -A $path/$filename)" ]
then
echo "non empty directory"
$HOME/remove $path/$filename/*
if [ ! "$(ls -A $path/$filename)" ]
then
rmdir $path/$filename
fi
else
echo "empty directory"
rmdir $path/$filename
fi
fi
else echo "ERREUR : $path/$filename n\'existe pas !"
fi
done
fi
あなたが働いていないと思うのコードのセクションを強調表示していただけますか? – codeforester