Script de linie de comandă

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 8 martie 2016; verificările necesită 9 modificări .

Script de linie de comandă sau script shell ( script shell în engleză  ) - un program executat de shell-ul de comandă al sistemului de operare. Termenul este cel mai frecvent aplicat scripturilor scrise pentru shell- ul Bourne , un  program shell pentru sisteme UNIX. [unu]

Pe Unix

Pe sistemele de operare asemănătoare Unix, nu există nicio cerință pentru o extensie de nume de fișier, dar extensia .sh este rezervată pentru scripturile shell. Cele mai simple operații efectuate de astfel de scripturi sunt textul și operațiunile de bază cu fișiere.

Pentru a rula scriptul, introduceți calea către fișierul script și argumentele în emulatorul terminalului cu shell-ul rulând (de exemplu, ./myscript.sh -switches—switch—file1 file2). Argumentele sunt scrise cu un spațiu. Printre dezvoltatorii de scripturi, există o convenție care să ofere utilizatorului posibilitatea de a schimba modul script-ului exclusiv prin argumente care încep cu o cratimă: o singură cratimă pentru argumente cu lungimea de un caracter (în acest caz, după cratima, pot fi specificate mai multe opțiuni la o dată, de exemplu -abcd este echivalent cu -a -b -c -d), sau o cratimă dublă pentru argumente lungi de două sau mai multe caractere (de exemplu --help, --switch-with-very-long-name). O cratima dublă înconjurată de spații indică faptul că următoarele simboluri nu sunt argumente. [2] Pentru a ușura respectarea acestor convenții, multe sisteme asemănătoare UNIX includ programul getopt pentru a simplifica analiza argumentelor. [3] De asemenea, este o practică obișnuită să tipăriți ajutorul atunci când treceți argumentul --help. O altă modalitate de a obține ajutor (pentru scripturile standard) este să utilizați utilitarul man .

Un exemplu de script care convertește imaginile .jpg în format .png:

#!/bin/bash pentru jpg ; # utilizați $jpg pentru fiecare nume de fișier la rândul său png = " ${ jpg %.jpg } .png" # obțineți versiunea PNG a numelui de fișier .jpg din .png echo conversia " $jpg " ... # mesaj către utilizator dacă converti " $jpg " jpg.to.png ; apoi # utilizați utilitarul de conversie pentru a crea un fișier PNG temporar mv jpg.to.png " $png " # dacă reușiți, redenumiți fișierul PNG temporar cu numele dorit altfel # ... altfel imprimați un mesaj de eroare echo 'jpg2png: error : rezultatul salvat în „jpg.to.png”.' > & 2 exit 1 fi # end „dacă” terminat # end „for” echo „Convertit cu succes” # mesaj de succes exit 0

Pe Windows

Pe Windows, scripturile de linie de comandă există ca fișiere batch și sunt scrise într-un fișier cu extensia .bat , .cmd sau .btm. Compilarea sau altă prelucrare specială a fișierului nu este necesară pentru a-l rula: este suficient să-i scrieți codul și să salvați fișierul text ca lot .

Link -uri

  1. Kernighan, Brian W. & Pike, Rob (1984), 3. Utilizarea Shell, The UNIX Programming Environment , Prentice Hall, Inc., p. 94, ISBN 0-13-937699-2 
  2. Convenții UNIX pentru argumentele liniei de comandă Arhivat 22 mai 2016 la Wayback Machine (Bourne Shell Grymoire al lui Bruce Barnett )
  3. Verificarea argumentelor opționale Arhivat 22 mai 2016 la Wayback Machine (Bourne Shell Grymoire a lui Bruce Barnett )