Das Elend am Ende: Leerschlag am Ende von Ordner-/Dateinmanem

NocTec

Moderator
Teammitglied
Lösungspartner
Mitglied seit
21. Jan 2007
Beiträge
184
Punkte für Reaktionen
188
Punkte
93
Der Thread ist völlig Off-Topic gelaufen, bitte zurück zum Thema. Ich würde mich sehr freuen, wenn wir erfahren würden, wie dieses Problem gelöst wurde.

Auch wenn ich beide Positionen verstehen kann bitte ich zu berücksichtigen, dass niemand die genauen Hintergründe kennt, wie es zu dieser Situation gekommen ist. Der Ratschlag mit der professionelle Hilfe ist häufig gar nicht so einfach umzusetzen. Man muss das Systemhaus mit der nötigen Kompetenz erst mal finden und dann da auch noch einen zeitnahen Termin bekommen. Ich kenne Systemhäuser, da bekommt man selbst als großer Kunde keinen zeitnahen Techniker Termin wenn man für das betreffende Problem kein SLA hat. Weiterhin erfordert das hier beschriebene Problem tiefgreifendes KnowHow auf der Linux Console, schlimmer noch, auf der Syno Console. Wir lösen solche Probleme selbst. Wenn wir dafür externe Hilfe benötigen würden könnte ich auf Anhieb niemanden nennen, der das kurzfristig einfach übernehmen könnte. (Außer nas-central.de natürlich, aber das kennt ja nicht jeder). Es liegt nicht immer am Geld. Es gibt genug andere Gründe warum jemand im Unternehmen mit was beauftragt wird was nicht gerade seine Kernkompetenz ist. Auch wenn das befremdlich ist, ohne die Situation zu kennen kann man das nicht wirklich beurteilen.

Wer betriebliche IT Probleme hat, bei denen er nicht weiter kommt kann sich gerne an nas-central.de wenden.
 

Hagen2000

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
123
Punkte für Reaktionen
30
Punkte
28
Vielen Dank für die besänftigenden Worte!

Ich hatte mich relativ früh an diesem Thema beteiligt, weil ich erst vor Kurzem ein ähnliches Problem lösen musste und daher selbst interessiert an einer alternativen Lösung war. Wie man an dem Output der KI erkennt, ist das Problem komplizierter zu lösen als es zu beschreiben ist.
Dabei wurde in #4 schon eine Lösung verlinkt. Das verlinkte "rename"-Utility ist jedoch nicht Standard (für Linux im Allgemeinen) und für DSM gar nicht direkt verfügbar.

Es gibt jedoch eine in Perl geschriebene Implementation, die auf GitHub frei zum Download zur Verfügung steht.
Folgende Schritte führen zur Lösung:
  • Perl über das Paket-Zentrum installieren.
  • Hier das Perl-Skript prename.pl herunterladen (Download ZIP).
  • Das Zip-File auspacken und auf dem NAS an einem geeigneten Ort abspeichern, Execute-Attribut setzen.
Bei mir liegt das Skript in einem Test-Ordner und von dort rufe ich es lokal auf, daher wird es mit ./prename.pl aufgerufen.
In den folgenden Beispielen sind die Optionen -n (just-print) und -v (verbose) gesetzt, es wird dadurch nur ausführlich angezeigt, was der "rename"-Befehl ausführen würde. Zum Scharfschalten muss die Option -n natürlich entfernt werden.

Ordner mit anhängendem Leerzeichen erzeugen:
Bash:
mkdir "ABC "
mkdir 'def '
mkdir TEST
mkdir 'TEST/xyz '

Beispiele:
Bash:
find . -depth -type d -name '* ' -exec ./prename.pl -n -v 's/ $//' {} \;
Etwas schneller (weil nicht jedesmal der Perl-Interpreter neu gestartet werden muss) ist folgende Variante, bei der alle gefundenen Argumente auf einmal an das Perl-Skript übergeben werden. Eventuell kann aber die Shell nicht mit einer großen Anzahl von Argumenten umgehen und bekommt dann Speicherprobleme.
Code:
find . -depth -type d -name '* ' -exec ./prename.pl -n -v 's/ $//' {} +
Zu beachten ist auch, dass nur genau ein anhängendes Leerzeichen entfernt wird, gibt es mehrere anhängende Leerzeichen in Folge, muss der Befehl also mehrmals ausgeführt werden.

Hinweis: Dass bei der Ausführung mit der nötigen Vorsicht vorgegangen werden muss, versteht sich hoffentlich von selbst! Und einige funktionierende Beispiele sind natürlich kein Beweis, dass der Algorithmus fehlerfrei ist.
 
  • Like
Reaktionen: peterhoffmann und DIY


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat 

 
 
  AdBlocker gefunden!

Du bist nicht hier, um Support für Adblocker zu erhalten. Dein Adblocker funktioniert bereits ;-)

Klar machen Adblocker einen guten Job, aber sie blockieren auch nützliche Funktionen.

Das Forum wird mit hohem technischen, zeitlichen und finanziellen Aufwand kostenfrei zur Verfügung gestellt. Wir zeigen keine offensive Werbung und bemühen uns um eine dezente Integration.

Bitte unterstütze dieses Forum, in dem du deinen Adblocker für diese Seite deaktivierst.

Du kannst uns auch über unseren Kaffeautomat einen Kaffe ausgeben oder ein PUR Abo abschließen und das Forum so werbefrei nutzen.

Vielen Dank für Deine Unterstützung!