Cum sa faci un fisier (de exemplu .sh script) executabil, astfel încât acesta poate fi rulat de pe un terminal

Am o script.sh fișier și tipul de acest fișier este folosit la salvarea fișierului. Vreau să fac acest fisier ca application/x-fișier executabil. Cum pot face asta?

Comentarii la întrebare (3)
Soluția

Puteți marca ca fișier executabil:

chmod +x filename.sh

Apoi, puteți executa astfel:

./filename.sh

Dacă doriți să utilizați o altă comandă pentru a începe, aveți posibilitatea să adăugați un alias:

gedit ~/.bashrc

Adăugați acest lucru la sfârșitul fișierului:

alias ='/home//filename.sh'

Deschide o nouă sesiune de terminal sau de tip source ~/.bashrc în terminalul să se aplice. Apoi pur și simplu utilizați nume nou pentru a porni scriptul.

Comentarii (5)

Există două moduri de a face un fișier executabil:

GUI Metodă:

Du-te la fila permisiuni, apoi bifați caseta `Executa: [ ] Permite executarea fișier ca program.

Borna / Comanda metodă:

Puteți folosi fie:

cd /a/mea/este necesar/director

Apoi executați

chmod +x fisier.extensia

Sau, pur și simplu:

chmod +x /path/to/ta/filename.extensia

chmod are, de asemenea, unele mai multe opțiuni avansate:

Spatiile sunt pentru a arăta că este despărțit: - rwx --- ---

Primul set de --- este ușor. Cel de-al doilea Grup este și ultima este Alta (pe altcineva)

r vine de Citit, w pentru a Scrie și x pentru a executa.

Deci, pentru a permite tuturor să-l citesc, dar singurul Grup să execute și Utilizatorului să citească și să scrie (dar pentru unii motiv, nu execute) va fi:

-rw - rx - r-- Dar acest lucru ar fi adăugat la comanda:

chmod +rw-rx-r-- /path/to/file.extensia

chmod, de asemenea, pot face acest lucru în numere. Ea se bazează pe sistemul binar (cred, ca este de 1,2 și 4)

Deci, există aceste numere:

Executa de către utilizator este "100". Executa de către grup este 010. Executa de către celălalt este 001

Scrie de utilizator este 200. Scrie de grup este 020. Scrie de alte e 002.

Citit de către utilizator este 400. Citit de grup este 040. Citit de alte e 004.

Apoi adăugați aceste împreună pentru a obține combinația dorită.

Deci, pentru a permite tuturor să-l citesc, dar singurul Grup să execute și Utilizatorului să scrie (dar pentru unii motiv, nu execute) va fi:

400 + 040 + 004 " și " 010 " și " 200

Care se adaugă până la 600 + 050 + 004 = 654.

Apoi, puteți rula comanda.

chmod +654 /path/to/file.extensia să-l setați.

Și pentru a seta toate permisiunile aveți posibilitatea să tastați:

chmod +rwxrwxrwx /path/to/file.extensia

Sau (asta e un pic mai ușor de a scrie, dar mai greu să-și amintească fiecare):

chmod 777 /path/to/file.extensia

În cele din urmă, puteți face:

chmod -777 /path/to/file.extensia

Să ia toate permisiunile departe de toată lumea.

Și:

chmod +300 /path/to/file.extensia

Pentru a adăuga citească și să scrie pentru utilizator, fără a afecta orice alte permisiuni (de exemplu, permisiuni de executare).

Acest site are o foarte util pic grid checkbox lucru, prin care puteți să bifați opțiunile pe care doriți și vă oferă comanda:

Cu toate acestea, nu toate combinațiile posibile sunt sensibile la utilizare; cele principale care sunt folosite sunt următoarele:

755 - "Proprietar" a toate, și "Grup" și "Altele" se poate citi și executa

700 - "Proprietar" are toate

644 - "Proprietar" poate citi și scrie, și "Grup" și "Altele" se poate citi

600 - "Proprietar" poate citi și scrie

Și, dacă te're folosind non-trivial grupuri de utilizatori:

775 - "Proprietar" poate citi și scrie, și "Grup" și "Altele" se poate citi

770 - "Proprietar" și "Grup" au de toate, și "Altele" se poate citi și executa

750 - "Proprietar" a toate, și "Grup" se poate citi și executa

664 - "Proprietar" și "Grup" poate citi și scrie, și "Altele" pot doar citi

660 - "Proprietar" și "Grup" poate citi și scrie

640 - "Proprietar" poate citi și scrie, și "Grup" se poate citi

777 și 666 sunt rar utilizate, cu excepția cazului în /tmp.

Multumesc Ilmari Karonen pentru arătând cei în comun de utilizare!

Mi pronume sunt de A / L

Comentarii (2)

Run:

chmod +x /path/to/file.sh

Pentru a face un executabil, run:

chmod -x /path/to/file.sh

De exemplu, am creat .sh fișier:

vi tester12.sh

După ce am scrie un cod pe vi editor, am'll ieșirea din vi editor:

:wq!
chmod +x tester12.sh
./tester12.sh
Comentarii (0)