Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.
Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.
Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Hab da mal einiges probiert und verstehe nun in etwa wie das läuft.
Wenn ich mir dann aber zB. die Source von Truecrypt oder PS3Server ansehen, stehe ich wieder an.
Etliche Dateien in der Truecrypt Source, wo ich nicht weis ob und wie ich die verwenden soll... *.cpp, *.h usw.
Im PS3 Server Source gibts fast nur jar Files.
Ist wohl etwas komplizierter als ich mir das ursprünglich vorgestellt hatte...
ich hätte noch ein Thema für ein kleines Programmierprojekt: 'gefährliche' Dateinamen entdecken. Also man gibt ein Verzeichnis ein und ab da werden alle Dateinamen 'untersucht', ob kompische Sonderzeichen, Leerstellen usw. im Dateinamen enthalten sind, die vielleicht irgendwo Probleme schaffen könnten.
Eine Erweiterung des Programms wäre, diese Dateinamen dann durch eine trickreiche Umbenennung zu 'entschärfen' (ggf. die Lösung so basteln, dass auch der Weg einer Rückbennnung (automatisch) möglich wäre.
Mir ist schon klar, dass es für Teilaspekte bereits Tools gibt ... aber es wäre halt nice, wenn man etwas auf die DS-Gegebenheiten als Kommandozeilentool passendes hätte ...
ja sowas in der Art. Wobei ich in meinen PHP-Strecken, die mit Dateien zu tun haben, ISO8859-1 nach UTF und zurück drinne hab ... also nicht nur für deutsche Umlaute, sondern auch für franz. und skand. Zeichen. Da könnte man ja eine Conf.Datei laden, in der die gewünschten Substitutions-Tupel enthalten sind ... also total ausbaufähig und wenn es C oder C++ wäre, auch sauschnell ...
Das Teil hat Probleme mit Special Characters, leading/trailing whitespaces und quotet automatisch so dass "mv" nicht bei allen Dateinamen funktioniert. Ausserdem fummelt es an Directories rum, verwendet veraltete Parameter und noch paar andere Dinge. Also nicht so der Bringer. Eher ein Beispiel wie man es nicht machen sollte...
Hier auf die Schnelle - auch keine Schönheit - eine korrigierte und erweiterte Lösung mit Undo Log (tr nach Belieben anpassen)
Rich (BBCode):
#!/bin/sh
TIMESTAMP="$(date +%Y%m%d_%H%M%S)"
find ${*:-.} \( -type f -o -type l \) | \
while IFS= read -r FILENAME; do
NEWFILENAME="$(echo -n "$FILENAME" | iconv -f utf-8 -t us-ascii//TRANSLIT | tr "\!\"#$%&\\\'()*+,:;<>?@[]^\`{}|~[:space:][:cntrl:]" "_")"
if [ "$NEWFILENAME" != "$FILENAME" ]; then
if [ -e "$NEWFILENAME" ]; then
n=1
while [ -e "${NEWFILENAME}_${n}" ]; do
let n+=1
done
NEWFILENAME="${NEWFILENAME}_${n}"
fi
mv -v "$FILENAME" "$NEWFILENAME"
echo "mv -v \"$NEWFILENAME\" \"$FILENAME\"" >> $HOME/undo_${TIMESTAMP}.txt
fi
done
Das Teil hat Probleme mit Special Characters, leading/trailing whitespaces und quotet automatisch so dass "mv" nicht bei allen Dateinamen funktioniert. Ausserdem fummelt es an Directories rum, verwendet veraltete Parameter und noch paar andere Dinge. Also nicht so der Bringer. Eher ein Beispiel wie man es nicht machen sollte...