Urobil som dve potrubia; to, x="$(ls -1p | grep "/$" | tr -d "/")"
získajte všetky podadresáre z pracovného adresára, a to, y="$(ls -1p | grep "/$"| grep \ | tr -d "/")"
dostane podadresáre, ktoré obsahujú medzery v pracovnom adresári.
Takže teraz, čo som sa snažia robiť je nahradiť polohu adresár, ktorý obsahuje medzery a stavia na samom vrchole, tj., povedať nižšie sú moje sub dirs:
Dir1
Dir2
Dir 3
Teraz Dir 3
ide na vrchol:
Dir 3
Dir1
Dir1
for I in $x; do
for X in $y; do
if [[ $I == $X ]];then
sed "/"$X"/d" "$I"
fi
done
echo "$I"
done
Vyššie uvedené je moje slučky robiť túto úlohu. Vytlačí všetky sub dirs, že neobsahuje žiadne priestory, ale vytlačí ako:
Dir1
Dir2
sed: Dir: No such file or directory
Dir
sed: 3: No such file or directory
3
Ak niekto môže pomôcť, že bude veľmi ocenil.