Der Test kann keine Dateien mit dem verarbeiteten Pfad finden.

Der Test kann keine Dateien mit dem verarbeiteten Pfad finden.

Ich habe ein Backup /home/kuba/mp3auf einer externen USB-Festplatte /media/kuba/JCUBIC/mp3und verschiebe einige Dateien in verschiedene Verzeichnisse auf dem USB-Laufwerk. Jetzt möchte ich die Dateien vom USB mit meinem Home-Verzeichnis synchronisieren. Wenn ich dasselbe mit meinem anderen externen USB-Laufwerk mache, verwende ich dieses Bash-Skript:

find JCUBIC2/mp3/ | while read file; do
    test -e "${file/JCUBIC2/JCUBIC}" || (test -e "$file" && rm -r "$file" && echo $file);
done

Ich habe versucht, dasselbe /home/kuba/mp3mit sedanstelle der Bash-Ersetzung zu tun:

find ~/mp3/ -print0 | while read -d '' -r file; do
    src=$(echo $file | sed -e 's%^/home/kuba%/media/kuba/JCUBIC%');
    test -e "$src" || (test -e "$file" && echo $src && echo $file);
done

(Ich ersetze es rmdurch echo, weil ich getestet habe, ob ich den richtigen Pfad erhalte)

aber ich habe einen Echopfad wie diesen:

/media/kuba/JCUBIC/mp3/[Hip Hop]/Fenomen - Efekt/Fenomen - 16.Problemy (g. Rubato).mp3
/home/kuba/mp3/[Hip Hop]/Fenomen - Efekt/Fenomen - 16.Problemy (g. Rubato).mp3
/media/kuba/JCUBIC/mp3/[Hip Hop]/Fenomen - Efekt/Fenomen - 07.Teksty.mp3
/home/kuba/mp3/[Hip Hop]/Fenomen - Efekt/Fenomen - 07.Teksty.mp3
/media/kuba/JCUBIC/mp3/[Hip Hop]/Fenomen - Efekt/Fenomen - 08.Marzenia (g. Grammatik).mp3
/home/kuba/mp3/[Hip Hop]/Fenomen - Efekt/Fenomen - 08.Marzenia (g. Grammatik).mp3

und [Hip Hop]/Fenomen - Efektist in beiden Verzeichnissen und das Verzeichnis hat die gleiche Größe. Ich habe keinen Unterschied in den Dateinamen bemerkt (wenn Sie STRG+F drücken und Fenomen - Efekt/Fenomen - 07.Teksty.mp3beide Dateien einfügen, werden sie vom Browser hervorgehoben). Warum werden einige Dateien aus diesem Verzeichnis wiedergegeben? Was ist mit meinem Skript nicht in Ordnung?

verwandte Informationen