Προς το περιεχόμενο

Θέμα με batch script


Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

Καλησπέρα παιδιά!

Εδώ και πόση ώρα προσπαθώ να φτιάξω ένα batch script και δεν μπορώ να το καταφέρω με τίποτα. 

To script είναι το παρακάτω:

SETLOCAL
SET "path=ENA_PATH"
FOR /r %path% %%i IN (*.png) DO (
SET "filename=%%~ni"
SET "fileextension=%%~xi"
SET "newfileextension=.webp"
SET "oldfile=%path%%filename%%fileextension%"
SET "newfile=%path%%filename%%newfileextension%"
)
PAUSE

Αυτό που μου επιστρέφει είναι πλήρως σωστό μέχρι τη στιγμή του oldfile και του newfile που μου δείχνει μόνο το path και όχι το περιεχόμενο και των τριών μεταβλητών μαζί. 

Δοκίμασα επίσης τα παρακάτω:

SET "oldfile=!%path%%filename%%fileextension%!"
SET "newfile=!%path%%filename%%newfileextension%!"

SET "oldfile=%path%+%filename%+%fileextension%"
SET "newfile=%path%+%filename%+%newfileextension%"

Το μόνο που πήρα ήταν το path με θαυμαστικά ή με ++

Τελικά δεν SETαρα τόσες μεταβλητές... βασικά δεν σέταρα καμία
Το script το ήθελα για να καταφέρω να κάνω convert κάποια αρχεία png σε webp

Όποιος θέλει να κάνει το ίδιο σε windows ας κάνει το παρακάτω:

SETLOCAL
SET path=to_path_tou_fakelou_me_ta_png
FOR /r %path% %%i IN (*.png) DO (
cwebp %path%\%%~ni%%~xi -q 80 -alpha_q 100 -m 6 -o %path%\%%~ni.webp
)

φυσικά στο cwebp μπορεί να βάλει όποιες παραμέτρους θέλει με βάση τα όσα παρέχει η google.

Επεξ/σία από rafinos

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...