5 δηλώσεις IF για χρήση για πιο έξυπνα σενάρια δέσμης Windows

5 δηλώσεις IF για χρήση για πιο έξυπνα σενάρια δέσμης Windows

Εάν κάνετε πολλή δουλειά σε αρχεία δέσμης των Windows, το IF δήλωση προσφέρει έναν πολύ ισχυρό τρόπο για να προσθέσετε ευελιξία στα σενάρια σας.





Σε αυτό το άρθρο θα μάθετε για τους πέντε κύριους τύπους δηλώσεων IF που μπορείτε να χρησιμοποιήσετε σε ένα αρχείο δέσμης των Windows, πώς φαίνεται η σωστή σύνταξη και ένα ρεαλιστικό παράδειγμα για καθένα.





Εάν είστε έτοιμοι να ξεκινήσετε το σενάριο, ας ξεκινήσουμε!





1. Συγκρίνετε Τιμές

Ένα από τα βασικά πράγματα που συνήθως πρέπει να κάνετε σε ένα σενάριο δέσμης είναι συγκρίνετε δύο τιμές και ακολουθήστε διαφορετική πορεία δράσης ανάλογα με τη σύγκριση.

Για παράδειγμα, ας υποθέσουμε ότι θέλετε να γράψετε ένα σενάριο δέσμης που ελέγχει το μέγεθος του σκληρού δίσκου του υπολογιστή σας καθημερινά. Εάν είναι κάτω από 3 GB, θέλετε να λάβετε μια αναφορά ηλεκτρονικού ταχυδρομείου που λέει 'Χώρος στο σκληρό δίσκο πολύ χαμηλός'.



Για να δημιουργήσετε ένα σενάριο που συγκρίνει τον τρέχοντα ελεύθερο χώρο στο σκληρό δίσκο με το όριο σας, θα δημιουργήσετε το ακόλουθο σενάριο δέσμης και θα το αποθηκεύσετε ως αρχείο .bat.

@echo off
set DriveLimit=300000000
for /f 'usebackq delims== tokens=2' %%x in (`wmic logicaldisk where 'DeviceID='C:'' get FreeSpace /format:value`) do set FreeSpace=%%x
Echo FreeSpace='%FreeSpace%'
Echo Limit='%DriveLimit%'
If %FreeSpace% GTR %DriveLimit% (
Echo There is enough free space.
) else (
Echo Not enough free space.
)

Το WMIC είναι το στοιχείο Όργανα διαχείρισης των Windows των Windows που συνοδεύεται από μια ποικιλία εντολών που μπορείτε να χρησιμοποιήσετε για να τραβήξετε πληροφορίες υπολογιστή. Αυτός είναι ο τρόπος με τον οποίο η εντολή 'wmic' σε αυτό το σενάριο καλεί το χώρο 'logicdisk' και τον τοποθετεί στη μεταβλητή FreeSpace. Τώρα μπορείτε απλά να αντικαταστήσετε τη γραμμή 'Echo Not բավարար ελεύθερος χώρος' με μια εντολή e -mail για να σας στείλει μια ειδοποίηση.





Τέλος, ορίστε αυτό το σενάριο ως προγραμματισμένη εργασία παρτίδας των Windows που εκτελείται καθημερινά.

Εάν δεν έχετε χρησιμοποιήσει ποτέ πριν το blat, έχουμε ένα άρθρο που σας δείχνει πώς να ρυθμίσετε το blat. Δεν είστε εξοικειωμένοι με τη ρύθμιση προγραμματισμένων εργασιών; Σας έχουμε καλύψει με ένα άρθρο σχετικά με τον τρόπο ρύθμισης προγραμματισμένων εργασιών των Windows.





2. Συγκρίσεις συμβολοσειρών

Μια άλλη πολύτιμη σύγκριση IF που μπορείτε να κάνετε σε μια παρτίδα εργασίας είναι σύγκριση συμβολοσειρών Το

Στο ακόλουθο παράδειγμα θα δείτε πώς μπορείτε να ελέγξετε την έκδοση των Windows χρησιμοποιώντας μια παρτίδα εργασίας. Στη συνέχεια, μπορείτε να το συγκρίνετε με την αναμενόμενη έκδοση των Windows.

Ορισμένες χρήσεις αυτού του σεναρίου θα ήταν για ελέγχους πληροφορικής όταν πρέπει να εκτελέσετε γρήγορα ένα σενάριο και να βεβαιωθείτε ότι το τρέχον λειτουργικό σύστημα είναι το πιο πρόσφατο ή εάν χρειάζεται αναβάθμιση.

Δείτε πώς φαίνεται αυτό το σενάριο.

@echo off
for /f 'tokens=4-5 delims=. ' %%i in ('ver') do set VERSION=%%i.%%j
if '%version%' == '6.0' echo Windows Vista.
if '%version%' == '6.1' echo Windows 7
if '%version%' == '6.2' echo Windows 8
if '%version%' == '6.3' echo Windows 8.1
if '%version%' == '10.0' echo Windows 10.

Δείτε πώς φαίνεται η έξοδος αυτού του σεναρίου.

Η δυνατότητα σύγκρισης συμβολοσειρών σε παρτίδα ανοίγει μια ολόκληρη λίστα δυνατοτήτων. Αν εξερευνήσετε όλα τα πληροφορίες που μπορείτε να λάβετε από μια εντολή WMIC θα δείτε πόσα στατιστικά στοιχεία σχετικά με τον υπολογιστή σας μπορείτε να παρακολουθήσετε. Μπορείτε να χρησιμοποιήσετε προγραμματισμένες εργασίες παρτίδας για ειδοποίηση σχετικά με αυτές.

3. Ελέγξτε εάν υπάρχει αρχείο

Μια άλλη χρήσιμη κατάσταση όπου μια δήλωση IF σε ένα αρχείο δέσμης είναι να ελέγξτε για την ύπαρξη αρχείου δεδομένων Το

Πολλές φορές η εργασία παρτίδας είναι απλώς ένα εργαλείο παρακολούθησης που μπορεί να προγραμματιστεί για έλεγχο για νέα εισερχόμενα αρχεία δεδομένων σε έναν συγκεκριμένο κατάλογο.

Στη συνέχεια, η εργασία παρτίδας μπορεί είτε να αντιγράψει αυτό το αρχείο σε άλλη τοποθεσία όπου μπορεί να υποβληθεί σε επεξεργασία, είτε να ξεκινήσει κάποιο σενάριο παραθύρων που επεξεργάζεται το αρχείο σε έξοδο Excel.

(Έχουμε γράψει στο παρελθόν για το πώς χρησιμοποιήστε σενάρια Windows για επεξεργασία δεδομένων σε αρχείο Excel ? καλή ανάγνωση στο παρασκήνιο.)

Η χρήση ενός αρχείου δέσμης για να ελέγξετε εάν υπάρχει αρχείο σε έναν κατάλογο είναι γρήγορη και εύκολη. Δείτε πώς φαίνεται αυτό το σενάριο.

@echo off
if exist c: empdatafile.txt (
%WINDIR%SysWOW64cmd.exe
cscript LoadToExcel.vbs
) else (
rem file doesn't exist
)

Η ΑΝ ΥΠΑΡΧΕΙ σύγκριση είναι χρήσιμη για πολλά πράγματα.

Για παράδειγμα, εάν εκτελείτε ένα σύστημα ή μια εφαρμογή που δημιουργεί νέα αρχεία καταγραφής σφαλμάτων σε έναν συγκεκριμένο φάκελο όταν υπάρχει πρόβλημα, μπορείτε να εκτελείτε μια παρτίδα εργασίας κάθε τόσο για να παρακολουθείτε αν δημιουργούνται νέα αρχεία καταγραφής σφαλμάτων, ώστε να μπορείτε να στείλετε μια ειδοποίηση.

4. Ελέγξτε εάν μια εντολή απέτυχε

Μια πτυχή της δέσμης ενεργειών δέσμης ενεργειών που χρησιμοποιούν πολύ λίγοι άνθρωποι IT ή προγραμματιστές έλεγχος για σφάλματα Το

Υπάρχουν πολλές παρτίδες δουλειές που εκτελούν εκεί έξω που εκτελούν κρίσιμες εργασίες πληροφορικής, όπως δημιουργία αντιγράφων ασφαλείας σημαντικών αρχείων ή εκτέλεση λειτουργιών αντιγραφής αρχείων. Όταν αυτές οι παρτίδες εργασίας αποτυγχάνουν, τα συστήματα αποτυγχάνουν και οι άνθρωποι το παρατηρούν.

Είναι πολύ πιο έξυπνο να λαμβάνετε μια ειδοποίηση όταν η παρτίδα εργασίας σας έχει αποτύχει σε μια εντολή πριν οι άνθρωποι αρχίζουν να παρατηρούν. Με αυτόν τον τρόπο μπορείτε να διορθώσετε το ζήτημα προληπτικά.

Μπορείτε να το κάνετε αυτό χρησιμοποιώντας τη μεταβλητή % errorlevel % που επιστρέφουν οι περισσότερες εφαρμογές και εντολές μετά την εκτέλεσή τους.

Το μόνο που έχετε να κάνετε είναι να ακολουθήσετε την εντολή σας με την εντολή IF % ERRORLEVEL %. Εάν η εφαρμογή ή η εντολή επέστρεψε ένα μηδέν, όλα είναι εντάξει. Εάν όχι, τότε πρέπει να στείλετε στον εαυτό σας ένα email.

@echo off
xcopy C:
omefolder E:ackupfolder
IF %ERRORLEVEL% NEQ 0

Δεν χρειάζεται να ακολουθήσετε τη διαδρομή του ηλεκτρονικού ταχυδρομείου. Μπορείτε πάντα να γράψετε ένα αρχείο καταγραφής σφαλμάτων που μπορείτε να ελέγχετε κάθε πρωί ή να εκκινήσετε μια δεύτερη εφαρμογή ή εντολή που προσπαθεί να κάνει την αντιγραφή χρησιμοποιώντας μια εναλλακτική εντολή. Όποια ενέργεια θέλετε να κάνετε, το IF % ERRORLEVEL % σας επιτρέπει να το κάνετε.

Εάν προτιμάτε να χρησιμοποιήσετε μια δήλωση IF για να ελέγξετε για συγκεκριμένους κωδικούς σφάλματος, τα Windows προσφέρουν μια όμορφη εκτενή λίστα κωδικών σφάλματος Το

5. Ελέγξτε για παραμέτρους που λείπουν

Η τελευταία χρήσιμη δήλωση IF δεν είναι μια συγκεκριμένη εντολή, αλλά αντίθετα για να ελέγξετε ότι το σενάριο έλαβε τις κατάλληλες παραμέτρους εισόδου Το

Για παράδειγμα, ας υποθέσουμε ότι έχετε γράψει ένα σενάριο που εκτελεί μια εντολή xcopy από έναν φάκελο εισόδου, σε έναν κοινό φάκελο δικτύου που χρησιμοποιείται από μια ομάδα. Ο χρήστης πρέπει απλώς να ακολουθήσει το όνομα του σεναρίου σας με τις παραμέτρους που καθορίζουν την προσωπική διαδρομή αρχείου.

Προφανώς, δεν μπορείτε να εκτελέσετε σωστά το σενάριό σας χωρίς την καθορισμένη διαδρομή, οπότε μπορείτε να βάλετε μια δήλωση IF στην αρχή του σεναρίου σας για να βεβαιωθείτε ότι έχουν εισαχθεί και οι δύο παράμετροι.

Δείτε πώς φαίνεται.

@echo off
IF [%1]==[] (
GOTO sub_message
) ELSE (
xcopy %1 E:ackupfolder
)
GOTO eof
:sub_message
echo You forgot to specify your path.
:eof

Εάν δεν έχετε χρησιμοποιήσει ποτέ παραμέτρους με δέσμες ενεργειών, το σύμβολο ποσοστού που ακολουθείται από έναν αριθμό αντιπροσωπεύει τη μεταβλητή παραμέτρου. Το %1 είναι η πρώτη παράμετρος, το %2 είναι η δεύτερη και ούτω καθεξής.

Οι εργασίες κατά παρτίδες μπορεί να είναι ισχυρές

Πολλοί άνθρωποι αρχίζουν να χρησιμοποιούν εργασίες παρτίδας για απλές εργασίες που πρέπει να εκτελούνται με τη σειρά. Με τις δηλώσεις IF είναι δυνατό να προσθέσετε πολύ περισσότερη ευφυΐα στα σενάρια σας.

Φυσικά, αν θέλετε πραγματικά να το ανεβάσετε, μπορείτε να ρίξετε μια ματιά στο VBA με τον οδηγό μας δημιουργώντας την πρώτη σας εφαρμογή VBA , ή ίσως ακόμη και να μάθουν προγραμματισμό Python.

Μπορείτε συχνά να χρησιμοποιήσετε πιο προηγμένες γλώσσες προγραμματισμού όπως αυτές ή να μάθετε να χρησιμοποιείτε το PowerShell, για να ολοκληρώσετε πολλές από τις ίδιες εργασίες για τις οποίες χρησιμοποιείτε αυτήν τη στιγμή παρτίδες εργασιών.

Μερίδιο Μερίδιο Τιτίβισμα ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ Διαγράψτε αυτά τα αρχεία και τους φακέλους των Windows για να ελευθερώσετε χώρο στο δίσκο

Χρειάζεστε εκκαθάριση χώρου στο δίσκο στον υπολογιστή σας Windows; Ακολουθούν τα αρχεία και οι φάκελοι των Windows που μπορούν να διαγραφούν με ασφάλεια για να ελευθερωθεί χώρος στο δίσκο.

Διαβάστε Επόμενο
Σχετικά θέματα
  • Windows
  • Προγραμματισμός
  • Windows
Σχετικά με τον Συγγραφέα Ράιαν Ντούμπε(942 δημοσιευμένα άρθρα)

Ο Ryan έχει πτυχίο Ηλεκτρολόγων Μηχανικών. Εργάστηκε 13 χρόνια στη μηχανική αυτοματισμού, 5 χρόνια στην πληροφορική και τώρα είναι Μηχανικός Εφαρμογών. Πρώην Διευθύνων Σύμβουλος του MakeUseOf, μίλησε σε εθνικά συνέδρια για την απεικόνιση δεδομένων και συμμετείχε στην εθνική τηλεόραση και ραδιόφωνο.

συνδέστε τον ελεγκτή xbox στον υπολογιστή bluetooth
Περισσότερα από τον Ryan Dube

Εγγραφείτε στο newsletter μας

Εγγραφείτε στο ενημερωτικό μας δελτίο για τεχνικές συμβουλές, κριτικές, δωρεάν ebooks και αποκλειστικές προσφορές!

Κάντε κλικ εδώ για εγγραφή