Git (GitHub) ed il file zip rinominato alla fine con -master, come rimuovere -master dallo zip

Web

Oggi vediamo come posso sfruttare in ambiente Mac il nostro amico Automator e creare una comando Bash che vada a prendere il file appena scaricato da GitHub, per esempio “mia-repo-master.zip” e rimuova-master” dal file zip.

Il processo

  • Prendi il file zip “mia-repo-master.zip”
  • Apri il file
  • Rimuovi dalla cartella estratta il “-master” alla fine
  • Prendi questa nuova cartella e crea il file zip

Per fare questo appunto procediamo come segue.

Apri Automator e scegli azione rapida

Vai al menu di sinistra e seleziona da Utility -> Esegui script shell e trascina sulla destra

Ora setta /bin/bash dal menu di sinistra

Ora nel menu a tendina di destra setta Passa a input: “come argomenti”

Ora inserisci questo script nel campo sottostante

#!/bin/bash

# Verifica se il file ZIP è stato fornito come argomento
if [ -z "$1" ]; then
    echo "Devi fornire un file ZIP come argomento."
    exit 1
fi

# Percorso completo del file ZIP
zip_file="$1"

# Estrai il nome del file senza estensione
file_name=$(basename -s .zip "$zip_file")

# Estrai la directory in cui si trova il file ZIP
zip_dir=$(dirname "$zip_file")

# Crea una cartella temporanea
temp_folder="$(mktemp -d)"

# Estrarre il file ZIP nella cartella temporanea
unzip "$zip_file" -d "$temp_folder"

# Rimuovere il suffisso "-master" dalla cartella estratta
extracted_folder="$temp_folder/$file_name"
new_folder="${extracted_folder%-master}"

# Rinomina la cartella
mv "$extracted_folder" "$new_folder"

# Spostarsi all'interno della cartella rinominata
cd "$new_folder"

# Crea un nuovo file ZIP dalla cartella rinominata
zip -r "$zip_dir/${new_folder##*/}.zip" .

# Tornare alla directory originale
cd "$zip_dir"

# Rimuovere il file ZIP originale
rm "$zip_file"

# Rimuovere la cartella temporanea
rm -r "$temp_folder"

echo "Operazione completata."

exit 0

Ora salva con il nome della tua azione, lo troverai successivamente facendo tasto destro sul file zip, per esempio “ZIP rimuovi master”

Fatto questo il risultato finale sarà il seguente:

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *