Dala imibhalo yakho usebenzisa i-bash

Ukufunda iLinux

Akunandaba nokusatshalaliswa kwe-Linux esikusebenzisayo, ― akungabazeki ukuthi intandokazi yami Ubuntu― ngokushesha nje lapho sisebenzisa lolu hlelo, imishini ezishintshayo. Lokho kungukuthi: dala eyethu imiyalo yakho abenza imiyalo ethile ngendlela yomuntu uqobo. Lesi sidingo singaba ngenxa yezimbangela ezithile:

  • Yenza lula i-syntax yemiyalo esivame ukuyenza.
  • Thatha izinyathelo ezihlanganisa noma yikuphi need okungabonwa kusengaphambili ohlelweni ukusebenza.
  • Ukulandelana kwama-oda ukuthi siphinda ngokuzimisela.

Yize iskripthi se-bash singaqhutshwa ngaphakathi / kusuka kunoma yisiphi isiqondisi, imvamisa dala umkhombandlela wokusingatha le mibhalo. Endabeni yami:

$ mkdir /home/pedro/.bin

Ngiyakukholwa lokhu umkhombandlela (ofihlwe ngokuhola isikhathi ngaphambi kwegama) ukubamba yonke imibhalo engiyisebenzisa lapho. Ukuthi igama lomkhombandlela lifihliwe alinayo enye incazelo ngaphandle kokuthi - ngaphandle kokuthi kuchazwe ngokunye - ngeke ivele lapho kubukwa / ikhaya / i-pedro kusuka kusibukeli sefayela ngemodi yokuqhafaza.

Manje kufanele yazisa iLinux ukuthi kufanele futhi ibheke lapho (/home/pedro/.bin) ama-oda enziwa kusukela ku-terminal.

$ PATH=$PATH;/home/pedro/.bin

Ngale ndlela uhlelo luzobheka ama-oda ethu lapho size sivale iseshini. Ukwenza le nhlangano ibe unomphela:

$ sudo nano /etc/environment

futhi siyengeza

:/home/pedro/.bin

ekugcineni komugqa we-PATH, kubaluleke kakhulu ukuthi ungakhohlwa ikholoni ngaphambi kwekheli lesikhombi esilifaka, ngoba le yindlela yokwengeza.

Isikripthi sethu sokuqala ngesinyathelo ngesinyathelo

Sakha ifayili lethu, kanjena kimi:

$ touch ~/.bin/donde

Futhi ukuyihlela, ungasebenzisa umhleli wakho owuthandayo noma ulandele le nkomba:

$ gedit ~/.bin/donde &

Futhi sengeza okuqukethwe okulandelayo:

#!/usr/bin/env bash

if [ $# -lt 1 ];
then
    echo "Necesitas pasar un parámetro"
else
    whereis $1
fi

Ukuhlaziywa kweskripthi

Ulayini wethu wokuqala wocingo «sheba»(#! / Usr / bin / env bash) cela uLinux ukuthi abike likuphi igobolondo le-bash nokuthi okulandelayo kwenziwa ngokuya ngezidingo zika-bash. Lokhu kuqapha kulula ukuqinisekisa ukuthi imibhalo yethu isebenza kunoma yikuphi ukufakwa. Okunye okungenzeka sheba wahleka:

#!/bin/bash

Umehluko phakathi kwabo ungabaxaka kakhulu, futhi ngizochaza. Kulesi sikhathi sokugcina Ngicabanga ukuthi ohlelweni lwethu igobolondo le-bash lisekhelini le- / bin / bash. Kodwa-ke, lapho ngiphakamisa khona kuskripthi Ngicabanga ukuthi angazi ukuthi ikuphi utolika we-bash. Ngicela uhlelo ukuthi anikeze lelo kheli.

Umugqa wesithathu: Njengoba ukwazi ukubona, umugqa wesibili uyi- if. Okwe-bash izinhlamvu «$#« iqukethe inani lamapharamitha esidlulisa kuwo kusuka kulayini womyalo. Ngakho-ke, »uma [$ # -lt 1];» ngokwezwi nezwi lisho ukuthi "uma inani lamapharamitha lingaphansi kuka-1".

Umugqa wesine: Bese (ngokwezwi nezwi ukuhumusha kusuka esiNgisini: bese), lapha kukhonjiswa ukuthi okulandelayo izokwenziwa lapho ukuhlolwa kwesimo if yiba neqiniso: ngamanye amagama, inani lamapharamitha lingaphansi kuka-1, okungukuthi, zero.

Ulayini wesihlanu: Uma sisebenzisa iskripthi sethu ngaphandle kwemingcele, sizokhombisa ku-terminal «Udinga ukudlulisa ipharamitha».

Umugqa wesithupha: Kubonisa ukuthi okulandelayo kuzokwenziwa lapho isimo esisimemezele singelona iqiniso.

Umugqa wesikhombisa: Se sebenzisa umyalo «kuphi« kuhambisana nokuqukethwe esikudlulise njengo ipharamitha yokuqala.

Umugqa wesishiyagalombili: nge «fi»Kubonisa ukuthi ibhulokhi iyaphela if.

Ukuhlola iskripthi sethu

Kubalulekile engeza izimvume zokubhala embhalweni:

$ chmod -x ~/.bin/donde

Ngaphandle kwalokhu, kuzovela iphutha elithi "imvume enqatshiwe".. Ngemuva kwalokho, singaqalisa iskripthi sethu.

$ donde php

Kufanele isibonise indawo yama-php binaries, amafayela wawo womthombo, namakhasi womuntu. Okuthile okunje:

php: /usr/bin/php7.0 /usr/bin/php /usr/lib/php /etc/php 
/usr/share/php7.0-readline /usr/share/php7.0-json /usr/share/php7.0-opcache 
/usr/share/php7.0-common /usr/share/php /usr/share/man/man1/php.1.gz

Ukubuyekeza

  • Sinika amandla i- ".bin" isiqondisi ukufaka imibhalo yethu.
  • Sinikeza imininingwane eya eLinux ukufaka lesi siqondisi ekusesheni kwayo komyalo.
  • Sakha iskripthi sethu.
  • Umehluko phakathi kwe- kwehlukile sheba.
  • Ukusetshenziswa kwe inani lamapharamitha adlulwe nge $ #.
  • Ukusetshenziswa kwe ipharamitha yokuqala con $1.

Ngiyethemba futhi ngifisa sengathi lo mbhalo uwusizo kuwe.


Shiya umbono wakho

Ikheli lakho le ngeke ishicilelwe. Ezidingekayo ibhalwe nge *

*

*

  1. Ubhekele imininingwane: Miguel Ángel Gatón
  2. Inhloso yedatha: Lawula Ugaxekile, ukuphathwa kwamazwana.
  3. Ukusemthethweni: Imvume yakho
  4. Ukuxhumana kwemininingwane: Imininingwane ngeke idluliselwe kubantu besithathu ngaphandle kwesibopho esisemthethweni.
  5. Isitoreji sedatha: Idatabase ebanjwe yi-Occentus Networks (EU)
  6. Amalungelo: Nganoma yisiphi isikhathi ungakhawulela, uthole futhi ususe imininingwane yakho.

  1.   Miguel kusho

    Kuhle kakhulu futhi kuchazwe kahle, kepha ngabe ipharamitha ibhekisa kuphi?

    1.    UPedro Ruiz Hidalgo placeholder image kusho

      Ngiyabonga Miguel!

      Ngiyaqonda ngepharamitha lonke ulwazi oluhambisanayo olunikezwa uhlelo, umsebenzi noma uhlelo. Njengoba lokhu kungaba nzima, ake ngikuphendule ngezibonelo ezimbalwa.

      Kumyalo we-linux wokukopisha ifayela a.txt kufayela b.txt, singabhala okulandelayo:

      $cp a.txt b.txt

      Uhlelo lwe-cp lapha luthola imingcele emibili okungamagama wamafayela amabili, eyokuqala (kufanele ibe khona) a.txt neyesibili b.txt.

      Esinye isibonelo: Uma uthumela ukuphrinta kusuka kukhonsoli ngomyalo

      $ lp ifayela.pdf

      Kulokhu "file.pdf" iyipharamitha yohlelo lwe-lp.

      Ngiyethemba ngikwenelisile ukungabaza kwakho.

      Phendula ngokucaphuna

  2.   Miguel kusho

    Ukuphawula kwami ​​akuphumi, wukungahloniphi, angibuyeli kule nkundla futhi.

    1.    UPedro Ruiz Hidalgo placeholder image kusho

      Angazi ukuthi kwenzekeni, noma ngabe yikuphi kushicilelwe.

      Ukubingelela