Ein Beispiellauf, um eine Datei mit dem Namen "geschützte Leerzeichen" zu erstellen und diese umzubenennen:
$ ls -1 # Each file on a separate row testfile $ touch # I'm actually writing the character u00a0 here $ ls -1 testfile $ ls -i # Print inodes 2031842 testfile 2023653 $ find . -maxdepth 1 -inum 2023653 -exec mv {} hithere \; $ ls -i1 2023653 hithere 2031842 testfile
Das exec
in seiner Form ist nur dann sinnvoll, wenn es nur eine einzige Übereinstimmung gibt. Die Inode-Nummer sollte jedoch auf dieser Partition eindeutig sein, es sei denn, es gibt feste Links zu derselben Datei. Sie können dies testen, indem Sie zuerst find ohne Argumente ausführen, um zu sehen, ob Sie mehrere Übereinstimmungen erhalten. Wenn dies der Fall ist, können Sie das find
Muster beispielsweise so verfeinern, dass es nur zu der gewünschten Datei passt.
Da die Umbenennung nicht von den genauen Zeichen des Dateinamens abhängt, sollte die Eingabe von merkwürdigen Codepunkten problemlos möglich sein.