Ich habe einen Teil eines Bash-Skripts, das einen Dateinamen ohne Erweiterung bekommt, aber ich versuche zu verstehen, was hier wirklich passiert. Wofür sind die %%? Kann jemand näher erläutern, was hinter den Kulissen passiert? Wie kann diese Technik allgemein angewendet werden?Verwendet für diese bash Dateiname Extraktionstechnik?
#!/bin/bash
for src in *.tif
do
txt=${src%%.*}
tesseract ${src} ${txt}
done
Beachten Sie, dass %% alle '.' im Dateinamen, nicht nur die so genannte Erweiterung. Zum Beispiel hätten Sie, wenn Sie hello.world.tif und hello.death.tif hatten, beide an dasselbe Ziel gesendet, hallo. Wenn Sie nur eine Erweiterung entfernen möchten, verwenden Sie%. – johnny
Da bei mehreren "." S im Dateinamen gesucht werden soll und das "kürzeste passende Muster" von der rechten Seite des Strings entfernt werden soll. Für mich ergibt das Sinn. Im Fall meines obigen Skripts sollte ich es in "%" ändern. Dies soll Dateinamenerweiterungen entfernen. – jjclarkson