Rimozione degli ultimi 10 caratteri del nome di un file preservando l'estensione

0

Ho file che assomigliano a questo

[RF] Happy Hour 1 [jdhf2345].mp4
[RF] Happy Hour 1 [jdhf2345].mp4
[RF] Happy Hour 1 [jdhf2345].mp4
[RF] Happy Hour 1 [jdhf2345].mp4

Voglio rendere i file come

Happy Hour 1.mp4

Voglio rimuovere l'ID dopo il 1 (potrebbe non essere sempre un 1 ma avrà sempre un ID tra parentesi quadre.

    
posta software is fun 08.06.2018 - 14:47
fonte

2 risposte

1

Stai facendo due domande diverse qui. Uno è "Come rimuovo gli ultimi 10 caratteri di un nome di file" mentre l'altro sta passando da [RF] Happy Hour 1 [jdhf2345].mp4Happy Hour 1.mp4 .

Non sono sicuro di quale rispondere qui, quindi suppongo che risponderò al primo ??

"Come rimuovere gli ultimi 10 caratteri di un nome file"

set myFiles to choose file with multiple selections allowed
repeat with myFile in myFiles
    tell application "System Events"
        set myName to the characters 1 thru ((offset of "." in (name of myFile as text)) - 1) of (name of myFile as text)
        tell application "Finder"
            set myExtention to name extension of (myFile as alias)
            set myNewName to characters 1 thru (((length of myName) - 10) as number) of (myName as text)
            set name of file (myFile as text) to (myNewName & "." & myExtention as text)
        end tell
    end tell
end repeat
    
risposta data 12.06.2018 - 06:39
fonte
0

Come snippet di shell puoi usare

for i in *.mp4; do
    mv "$i" "$(echo $i | sed 's_ \[.*\]__')"
done

Lo snippet può anche essere incluso in un'azione script della shell in Automator, se necessario.

    
risposta data 11.06.2018 - 19:46
fonte

Leggi altre domande sui tag