{"id":229591,"date":"2022-11-05T12:31:00","date_gmt":"2022-11-05T09:31:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=229591"},"modified":"2022-11-09T08:36:29","modified_gmt":"2022-11-09T05:36:29","slug":"bash-pohjainen-wordpress-kehittaejille","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fi\/bash-pohjainen-wordpress-kehittaejille\/","title":{"rendered":"Bash-pohjainen WordPress-kehitt\u00e4jille"},"content":{"rendered":"\n<p>Ajoittain p\u00e4\u00e4dyn asentamaan ohjelmiston <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Composerin<\/a> kautta tai sijoittamaan osan sen binaareista muihin hakemistoihin kuin tavallisiin paikkoihin, joissa macOS odottaa ne l\u00f6yt\u00e4v\u00e4n.<\/p>\n<p>Toisin sanoen, jos k\u00e4yt\u00e4t sovellusta terminaalista tai jos sovellus, jossa on GUI, odottaa olevan tietyss\u00e4 paikassa levyll\u00e4, se todenn\u00e4k\u00f6isesti odottaa sit\u00e4 jossakin viidest\u00e4 paikasta:<\/p>\n<ol>\n<li>\/usr\/bin<\/li>\n<li>\/bin<\/li>\n<li>\/usr\/sbin<\/li>\n<li>\/sbin<\/li>\n<li>\/usr\/local\/bin<\/li>\n<\/ol>\n<p>Mutta kuten sanoin, ajan mittaan p\u00e4\u00e4dymme asentamaan asioita k\u00e4ytt\u00e4m\u00e4ll\u00e4 kolmannen osapuolen ty\u00f6kaluja tai p\u00e4\u00e4dymme asentamaan asioita, jotka sijoittavat binaarit n\u00e4iden hakemistojen ulkopuolelle.<\/p>\n<p>Esimerkki: Mit\u00e4 tapahtuu, jos haluat asentaa <a href=\"http:\/\/wp-cli.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">WP-CLI<\/a> :n maailmanlaajuisesti? Tai ent\u00e4 jos haluat k\u00e4ytt\u00e4\u00e4 MySQL-versiota, joka toimitetaan <a href=\"https:\/\/www.mamp.info\/en\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">MAMP<\/a> :n kanssa ?<\/p>\n<p>N\u00e4iss\u00e4 tapauksissa n\u00e4it\u00e4 bin\u00e4\u00e4ri\u00e4 ei sis\u00e4llytet\u00e4 mihink\u00e4\u00e4n edell\u00e4 mainituista hakemistoista. Kun n\u00e4in tapahtuu, sinun on muutettava profiiliasi. Jos et ole koskaan tehnyt niin, se voi olla pelottavaa. Ja siit\u00e4 voi tulla sotkua, jos et tee sit\u00e4 j\u00e4rjestelm\u00e4llisesti ajan my\u00f6t\u00e4.<\/p>\n<p>Joten t\u00e4ss\u00e4 on Bashista WordPress-kehitt\u00e4jille tarkoitettu esittely siit\u00e4, mik\u00e4 <strong>bash_profiili<\/strong> on ja miten voit hallita kolmannen osapuolen ohjelmistoja sen avulla.<\/p>\n<h2>Bash WordPress-kehitt\u00e4jille<\/h2>\n<p>Ennen kuin aloitat polkujen asettamisen muiden ohjelmistojen ja vastaavien kohdalla, on t\u00e4rke\u00e4\u00e4 huomata, ett\u00e4 sinulla ei ehk\u00e4 ole <strong>bash_profile<\/strong>. Eli jos k\u00e4yt\u00e4t p\u00e4\u00e4tett\u00e4, voit k\u00e4ytt\u00e4\u00e4 erityyppist\u00e4 kuorta, ja jos n\u00e4in on, olet jo paljon edell\u00e4 t\u00e4t\u00e4 viesti\u00e4.<\/p>\n<p>Jos toisaalta k\u00e4yt\u00e4t terminaalin kuorta ilman muutoksia, joka toimitetaan macOS:n kanssa. Mutta ensin, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Shell_(computing)\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">mik\u00e4 on kuori<\/a>? <\/p>\n<blockquote>\n<p>Laskennassa shell on k\u00e4ytt\u00f6liittym\u00e4 k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4n palveluihin p\u00e4\u00e4sy\u00e4 varten. Yleens\u00e4 k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4n kuoret k\u00e4ytt\u00e4v\u00e4t joko komentorivik\u00e4ytt\u00f6liittym\u00e4\u00e4 (CLI) tai graafista k\u00e4ytt\u00f6liittym\u00e4\u00e4 (GUI) tietokoneen roolin ja tietyn toiminnon mukaan.<\/p>\n<\/blockquote>\n<p>Ja jos k\u00e4yt\u00e4t Terminalia ilman muutoksia, k\u00e4yt\u00e4t todenn\u00e4k\u00f6isesti <a href=\"https:\/\/en.wikipedia.org\/wiki\/Bash_(Unix_shell)\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Bashia<\/a>.<\/p>\n<p>Lopuksi kaikki asetukset jokaiselle p\u00e4\u00e4tteen k\u00e4ynnist\u00e4miselle tallennetaan komentotulkin asiaankuuluvaan profiilitiedostoon. T\u00e4ss\u00e4 tapauksessa kaikki on tallennettu <strong>.bash_profile -tiedostoon<\/strong>.<\/p>\n<p>Jotta kaikki saadaan asetettua juuri niin kuin tarvitsemme, meid\u00e4n on teht\u00e4v\u00e4 joitain muutoksia (tai jopa alustettava se), jotta asiat etenev\u00e4t.<\/p>\n<p><strong>Huomaa\u00a0<\/strong>, ett\u00e4 jokaisen <strong>.bash_profile<\/strong> -tiedoston muutoksen j\u00e4lkeen saatat haluta suorittaa:<\/p>\n<pre><code>$ source ~\/.bash_profile<\/code><\/pre>\n<p>Joten kaikki k\u00e4ytt\u00f6\u00f6n otetut uudet muutokset ladataan nykyist\u00e4 p\u00e4\u00e4teistuntoa varten.<\/p>\n<h3>Alkuper\u00e4inen profiili<\/h3>\n<p>Aina kun m\u00e4\u00e4rit\u00e4n alkuper\u00e4isen profiilini, se n\u00e4ytt\u00e4\u00e4 aina samalta. T\u00e4m\u00e4 tarkoittaa, ett\u00e4 se sis\u00e4lt\u00e4\u00e4 viisi <a href=\"https:\/\/gist.github.com\/tommcfarlin\/c337af437e59084382597f57431db798#file-00-initial-bash-profile-sh\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">yll\u00e4 lueteltuani<\/a> hakemistoa :<\/p>\n<pre><code>PATH=\"\/usr\/bin:\/bin:\/usr\/sbin:\/sbin:\/usr\/local\/bin:$PATH\"\nexport PATH<\/code><\/pre>\n<p>Huomaat\u00a0 kuitenkin, ett\u00e4 <strong>PATH<\/strong> &#8211; \u00a0muuttujan lopussa on jotain, joka n\u00e4ytt\u00e4\u00e4 toiselta muuttujalta. Tarkemmin sanottuna puhun <strong>$PATHista<\/strong>. Ja t\u00e4m\u00e4 on t\u00e4rke\u00e4\u00e4 ymm\u00e4rt\u00e4\u00e4, koska se vaikuttaa siihen, miten ohjelmat l\u00f6ytyv\u00e4t p\u00e4\u00e4tteest\u00e4.<\/p>\n<h4>Mik\u00e4 on $PATH?<\/h4>\n<p>Ajattele ensin, ett\u00e4 se oli komentotulkin tai k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4n tapa etsi\u00e4 binaaritiedostoja. Joten jos sinulla on kaikki viisi yll\u00e4 olevaa polkua, k\u00e4ytt\u00f6j\u00e4rjestelm\u00e4 etsii n\u00e4ist\u00e4 hakemistoista tiettyj\u00e4 binaareja.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e795683c64a.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e795683c64a.png\" alt=\"Bash-pohjainen WordPress-kehitt\u00e4jille\" ><\/a><\/p>\n<p>Kokeile sit\u00e4 k\u00e4ynnist\u00e4m\u00e4ll\u00e4 terminaali ja kirjoittamalla:<\/p>\n<pre><code>$ which clear<\/code><\/pre>\n<p>Ja t\u00e4m\u00e4 n\u00e4ytt\u00e4\u00e4 sinulle, mist\u00e4 se l\u00f6yt\u00e4\u00e4 <strong>selke\u00e4n<\/strong> suoritettavan tiedoston j\u00e4rjestelm\u00e4st\u00e4si (jos clear pyyhkii vain p\u00e4\u00e4tteen n\u00e4yt\u00f6n \ud83d\ude42).<\/p>\n<p>Huomaa seuraavaksi, ett\u00e4 <strong>$PATH\u00a0<\/strong> on m\u00e4\u00e4ritelty yll\u00e4 olevassa esimerkiss\u00e4 merkkijonon lopussa. Kun muokkaat profiiliasi, haluat ty\u00f6skennell\u00e4 sen kanssa. Lyhyesti sanottuna se m\u00e4\u00e4ritt\u00e4\u00e4 j\u00e4rjestyksen, jossa hakemistoja tulee etsi\u00e4.<\/p>\n<p>Yll\u00e4 olevassa sis\u00e4ll\u00f6ss\u00e4 p\u00e4\u00e4te aikoo etsi\u00e4 bin\u00e4\u00e4ri\u00e4, joka vastaa sit\u00e4, mit\u00e4 aiot suorittaa, alkaen <strong>\/usr\/bin<\/strong> ja p\u00e4\u00e4ttyen <strong>\/usr\/local\/bin<\/strong>.<\/p>\n<h3>Mit\u00e4 &quot;vienti&quot; tarkoittaa?<\/h3>\n<p>Jos et k\u00e4yt\u00e4 Bashia, en voi kommentoida vastaavaa, mutta Bashin kontekstissa <strong>vienti<\/strong> on tapa nimenomaisesti m\u00e4\u00e4ritt\u00e4\u00e4 arvo yll\u00e4 olevassa sis\u00e4ll\u00f6ss\u00e4 m\u00e4\u00e4ritellylle <strong>PATH -muuttujalle.<\/strong><\/p>\n<p>Eli ohjelmoinnissa k\u00e4ytet\u00e4\u00e4n muuttujan luomiseen ja sille arvon m\u00e4\u00e4ritt\u00e4miseen. T\u00e4m\u00e4 on samanlainen kuin se. Olemme kuitenkin hieman selke\u00e4mpi\u00e4. Yksinkertaisesti sanottuna asetamme vasemman puolen muuttujan oikean puolen arvoksi. Ja t\u00e4m\u00e4 asetetaan k\u00e4ytt\u00e4m\u00e4ll\u00e4 <strong>vienti\u00e4.<\/strong><\/p>\n<p>Joten jos haluat n\u00e4hd\u00e4 mit\u00e4 <strong>$PATH<\/strong> sis\u00e4lt\u00e4\u00e4, kirjoita t\u00e4m\u00e4 terminaaliin:<\/p>\n<pre><code>$ echo $PATH<\/code><\/pre>\n<p>Sitten n\u00e4et viiden t\u00e4h\u00e4n menness\u00e4 m\u00e4\u00e4ritellyn polun arvon.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e7956b32b60.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e7956b32b60.png\" alt=\"Bash-pohjainen WordPress-kehitt\u00e4jille\" ><\/a><\/p>\n<p>Ajan my\u00f6t\u00e4 haluamme kuitenkin luonnollisesti lis\u00e4t\u00e4 t\u00e4h\u00e4n lis\u00e4\u00e4.<\/p>\n<h3>S\u00e4velt\u00e4j\u00e4paketit<\/h3>\n<p>Olen puhunut Composerin asentamisesta ja pakettien asentamisesta sen avulla aiemmissa viesteiss\u00e4 maailmanlaajuisesti. Mutta sanotaan, ett\u00e4 argumentin vuoksi haluamme asentaa WP-CLI:n ja sitten lis\u00e4t\u00e4 sen siten, ett\u00e4 sit\u00e4 voidaan k\u00e4ytt\u00e4\u00e4 p\u00e4\u00e4telaitteen kautta miss\u00e4 tahansa j\u00e4rjestelm\u00e4ss\u00e4mme. Ja t\u00e4m\u00e4 kaikki voidaan tehd\u00e4 k\u00e4ytt\u00e4m\u00e4ll\u00e4 yll\u00e4 olevia profiilitietoja.<\/p>\n<p>Olettaen, ett\u00e4 olet asentanut s\u00e4velt\u00e4j\u00e4n ja <a href=\"https:\/\/gist.github.com\/tommcfarlin\/c337af437e59084382597f57431db798#file-01-composer-example-json\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">composer.json-tiedostosi n\u00e4ytt\u00e4\u00e4 t\u00e4lt\u00e4<\/a> (sek\u00e4 muutamien muiden asioiden kanssa, mutta j\u00e4t\u00e4 ne huomiotta toistaiseksi):<\/p>\n<pre><code>{\n    \"require\": {\n        \"squizlabs\/php_codesniffer\": \"2.9.1\",\n        \"wp-cli\/wp-cli\": \"~1.2.1\",\n        \"psy\/psysh\": \"~0.8.6\"\n    }\n}\n<\/code><\/pre>\n<p>Ja sin\u00e4 juoksit:<\/p>\n<pre><code>$ composer update<\/code><\/pre>\n<p>Sitten WP-CLI on asennettu. Mutta kun yrit\u00e4t suorittaa sen asennushakemiston ulkopuolella olevasta p\u00e4\u00e4tteest\u00e4, se ei toimi. Mit\u00e4 siis antaa?<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e7956e399dc.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e7956e399dc.png\" alt=\"Bash-pohjainen WordPress-kehitt\u00e4jille\" ><\/a><\/p>\n<p>Polkua s\u00e4velt\u00e4j\u00e4n kautta asennettuihin binaareihin ei ole asetettu <strong>.bash_profile -tiedostossamme<\/strong>. Voit korjata t\u00e4m\u00e4n lis\u00e4\u00e4m\u00e4ll\u00e4 uuden rivin <strong>.bash_profile<\/strong> -tiedostoon, mutta varmista, ett\u00e4 et m\u00e4\u00e4rit\u00e4 uudelleen jotain jo olemassa olevaa.<\/p>\n<p>Koska <strong>PATH<\/strong> on olemassa, voimme vain asettaa <strong>$PATH<\/strong> uuden rivimme loppuun ja liitt\u00e4\u00e4 siihen Composer-hakemistomme. T\u00e4ll\u00e4 tavalla emme kopioi hakemistoja tai muuttujan arvoja aina, kun viemme niit\u00e4, ja asetamme haettavien hakemistojen prioriteetin.<\/p>\n<p><a href=\"https:\/\/gist.github.com\/tommcfarlin\/c337af437e59084382597f57431db798#file-02-adding-composer-packages-sh\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Esimerkiksi<\/a> :<\/p>\n<pre><code>PATH=\"\/usr\/bin:\/bin:\/usr\/sbin:\/sbin:\/usr\/local\/bin\"\nPATH=\"$HOME\/.composer\/vendor\/bin:$PATH\"\n\nexport PATH<\/code><\/pre>\n<p>Sitten, kun yrit\u00e4t ajaa <strong>wp<\/strong> :t\u00e4 mist\u00e4 tahansa komentorivill\u00e4, sen pit\u00e4isi toimia ja sinun pit\u00e4isi pysty\u00e4 kirjoittamaan:<\/p>\n<pre><code>$ which wp<\/code><\/pre>\n<p>Ja katso, ett\u00e4 se tulee <strong>s\u00e4velt\u00e4j\u00e4\/toimittaja\/bin<\/strong> hakemistosta. Oh \u2013 ja huomaa, ett\u00e4 <strong>$HOME<\/strong> on muuttuja, joka viittaa nykyisen k\u00e4ytt\u00e4j\u00e4n kotihakemistoon. T\u00e4t\u00e4 voidaan muuttaa, mutta se ei kuulu t\u00e4m\u00e4n viestin piiriin.<\/p>\n<h3>MAMP-ohjelmisto<\/h3>\n<p>T\u00e4ss\u00e4 vaiheessa PHP:n, MySQL:n tai mink\u00e4 tahansa valitsemasi kielen ja ty\u00f6kalun versio muuttuu. Olen antanut joitain erilaisia \u200b\u200bviestej\u00e4 MAMPin ymp\u00e4rille (<a href=\"https:\/\/tommcfarlin.com\/mailcatcher-mamp-wordpress\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">1<\/a>, <a href=\"https:\/\/tommcfarlin.com\/php-error-log\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">2<\/a>, <a href=\"https:\/\/tommcfarlin.com\/using-phpstorm-for-wordpress\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">3<\/a> ), joten p\u00e4\u00e4t\u00e4n k\u00e4ytt\u00e4\u00e4 esimerkki\u00e4.<\/p>\n<p>Tarkemmin sanottuna haluan k\u00e4ytt\u00e4\u00e4 MAMP:n PHP- ja MySQL-versiota \u2013 en j\u00e4rjestelm\u00e4n mukana toimitettua versiota. Mutta t\u00e4ss\u00e4 vaiheessa voit ajaa:<\/p>\n<pre><code>$ which php<\/code><\/pre>\n<p>Ja:<\/p>\n<pre><code>$ which mysql<\/code><\/pre>\n<p>Ja katso, ne molemmat tulevat j\u00e4rjestelm\u00e4hakemistoista. T\u00e4m\u00e4 on muutettava niin, ett\u00e4 komentorivik\u00e4ytt\u00f6mme k\u00e4ytt\u00e4\u00e4 samaa ohjelmistoversiota, jota sovelluksemme k\u00e4ytt\u00e4\u00e4.<\/p>\n<p>Voit tehd\u00e4 t\u00e4m\u00e4n lis\u00e4\u00e4m\u00e4ll\u00e4 <a href=\"https:\/\/gist.github.com\/tommcfarlin\/c337af437e59084382597f57431db798#file-03-adding-php7-sh\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">seuraavat rivit<\/a> <strong>.bash_profile -tiedostoomme<\/strong> :<\/p>\n<pre><code>PATH=\"\/usr\/bin:\/bin:\/usr\/sbin:\/sbin:\/usr\/local\/bin\"\nPATH=\"$PATH:$HOME\/.composer\/vendor\/bin\"\nPATH=\"\/Applications\/MAMP\/bin\/php\/php7.1.0\/bin:$PATH\"\n\nexport PATH<\/code><\/pre>\n<p>T\u00e4ss\u00e4 on kuitenkin jotain tuotavaa: olen sijoittanut MAMP:n PHP-binaarihakemiston ennen <strong>$PATH<\/strong> -arvoja. T\u00e4m\u00e4 johtuu siit\u00e4, ett\u00e4 haluan j\u00e4rjestelm\u00e4n katsovan ensin t\u00e4\u00e4lt\u00e4 (ei j\u00e4rjestelm\u00e4hakemistoista).<\/p>\n<p>On kuitenkin toinen haaste. MAMP toimitetaan useiden eri PHP-versioiden kanssa, ja todenn\u00e4k\u00f6isyys, ett\u00e4 haluamme k\u00e4ytt\u00e4\u00e4 samaa versiota joka kerta, on pieni. Tarvitsemme siis tavan k\u00e4ytt\u00e4\u00e4 mit\u00e4 tahansa MAMPissa valittua versiota, eik\u00f6 niin?<\/p>\n<p>Yksi tapa tehd\u00e4 t\u00e4m\u00e4 on k\u00e4ytt\u00e4\u00e4 aliasta.<\/p>\n<h3>Ent\u00e4 aliakset?<\/h3>\n<p>Voit ajatella aliaksia pikan\u00e4pp\u00e4imen\u00e4 \u2013 se on nopea tapa suorittaa tietty komento tai ohjelma ilman, ett\u00e4 sinun tarvitsee kirjoittaa ohjelman t\u00e4ydellist\u00e4 nime\u00e4.<\/p>\n<p>MAMP:n ja PHP:n tapauksessa voimme k\u00e4ytt\u00e4\u00e4 joitain PHP-versioita. T\u00e4t\u00e4 kirjoittaessani minulla on:<\/p>\n<ul>\n<li>5.4.45<\/li>\n<li>5.5.38<\/li>\n<li>5.6.28<\/li>\n<li>7.0.13<\/li>\n<li>7.1.0<\/li>\n<\/ul>\n<p>Kaikki saatavilla j\u00e4rjestelm\u00e4ss\u00e4ni. En todenn\u00e4k\u00f6isesti halua k\u00e4ytt\u00e4\u00e4 niit\u00e4 kaikkia (enk\u00e4 niit\u00e4 kaikkia ole <strong>$PATH<\/strong> :ssani ), mutta saattaa olla mahdollisuus, ett\u00e4 haluan suorittaa aiemman PHP-version testatakseni jotain tietty\u00e4.<\/p>\n<p>Joten miten voimme tehd\u00e4 sen? Voimme k\u00e4ytt\u00e4\u00e4 aliaksia. Ja jos siirryt osoitteeseen <strong>\/Applications\/MAMP\/bin\/php\u00a0<\/strong>, sinun pit\u00e4isi n\u00e4hd\u00e4 kaikki PHP-versiot, jotka sis\u00e4ltyv\u00e4t MAMP-versioosi.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e795712a3f6.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-166528-61e795712a3f6.png\" alt=\"Bash-pohjainen WordPress-kehitt\u00e4jille\" ><\/a><\/p>\n<p>Nyt m\u00e4\u00e4rit\u00e4mme <a href=\"https:\/\/gist.github.com\/tommcfarlin\/c337af437e59084382597f57431db798#file-04-aliases-sh\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">aliakset<\/a> jokaiselle n\u00e4ist\u00e4:<\/p>\n<pre><code>## Aliases to old versions of PHP.\nalias php54=\"\/Applications\/MAMP\/bin\/php\/php5.4.45\/bin\/php\"\nalias php55=\"\/Applications\/MAMP\/bin\/php\/php5.5.38\/bin\/php\"\nalias php56=\"\/Applications\/MAMP\/bin\/php\/php5.6.28\/bin\/php\"\nalias php70=\"\/Applications\/MAMP\/bin\/php\/php7.0.13\/bin\/php\"<\/code><\/pre>\n<p>Ja voimme ajaa niit\u00e4 toisistaan \u200b\u200briippumatta terminaalissa suorittamalla komennon, kuten:<\/p>\n<pre><code>$ php54 -v<\/code><\/pre>\n<p>T\u00e4m\u00e4n pit\u00e4isi n\u00e4ytt\u00e4\u00e4, mit\u00e4 PHP-versiota suoritetaan <strong>.bash_profile<\/strong> -tiedostossa m\u00e4\u00e4ritt\u00e4m\u00e4si aliaksen perusteella .<\/p>\n<p>Ja lopuksi, huomaa viimeisess\u00e4 sis\u00e4ll\u00f6ss\u00e4, ett\u00e4 n\u00e4et rivin, joka on lis\u00e4tty <strong>tiedostoon .bash_profile<\/strong> :<\/p>\n<pre><code>source ~\/.profile<\/code><\/pre>\n<p>J\u00e4rjestelm\u00e4 tekee t\u00e4m\u00e4n automaattisesti, kun alat ty\u00f6skennell\u00e4 interaktiivisen kuoren kanssa. Voit poistaa sen, mutta se lis\u00e4t\u00e4\u00e4n uudelleen tiedoston yl\u00e4osaan, joten \u00e4l\u00e4 turhaan.<\/p>\n<p>Ja viitteeksi lopullinen <strong>.bash_profile<\/strong> -versioni n\u00e4ytt\u00e4\u00e4 <a href=\"https:\/\/gist.github.com\/tommcfarlin\/c337af437e59084382597f57431db798#file-05-bash-profile-sh\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">t\u00e4lt\u00e4<\/a> :<\/p>\n<pre><code>source ~\/.profile\n\nPATH=\"\/usr\/bin:\/bin:\/usr\/sbin:\/sbin:\/usr\/local\/bin\"     # The standard system binaries\nPATH=\"$HOME\/.composer\/vendor\/bin:$PATH\"                 # Composer binaries\nPATH=\"\/Applications\/MAMP\/bin\/php\/php7.1.0\/bin:$PATH\"    # MAMP's PHP7 loaded first\nPATH=\"\/Applications\/MAMP\/Library\/bin:$PATH\"             # MAMP's MySQL loaded first\n\n## Aliases to old versions of PHP.\nalias php54=\"\/Applications\/MAMP\/bin\/php\/php5.4.45\/bin\/php\"\nalias php55=\"\/Applications\/MAMP\/bin\/php\/php5.5.38\/bin\/php\"\nalias php56=\"\/Applications\/MAMP\/bin\/php\/php5.6.28\/bin\/php\"\nalias php70=\"\/Applications\/MAMP\/bin\/php\/php7.0.13\/bin\/php\"\n\nexport PATH<\/code><\/pre>\n<p>Huomaat, ett\u00e4 olen my\u00f6s lis\u00e4nnyt MySQL- ja MySQLAdmin-rivit juuri aliaksia m\u00e4\u00e4ritt\u00e4v\u00e4n rivin yl\u00e4puolelle (vaikka sinun omasi n\u00e4ytt\u00e4\u00e4 todenn\u00e4k\u00f6isesti erilaiselta).<\/p>\n<p>T\u00e4st\u00e4 huolimatta t\u00e4m\u00e4 on yleinen ajatus, vaikka omasi n\u00e4ytt\u00e4\u00e4 todenn\u00e4k\u00f6isesti erilaiselta.<\/p>\n<h2>Advanced Bash<\/h2>\n<p>Jotkut ihmiset ovat paljon edistyneempi\u00e4 Bashissa kuin min\u00e4 (ja jopa muiden sivustojen selaaminen joidenkin ihmisten tekemien asioiden ymp\u00e4rill\u00e4 voi olla vaikuttavaa).<\/p>\n<p>Mutta jos olet WordPress-kehitt\u00e4j\u00e4, jolla ei ole juurikaan tai ei ollenkaan tietoa Bashista, komentorivity\u00f6kaluista, polkujen asettamisesta ja niin edelleen, t\u00e4m\u00e4n pit\u00e4isi olla toimiva referenssi ja kunnollinen l\u00e4ht\u00f6kohta.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00e4ss\u00e4 on Bashista WordPress-kehitt\u00e4jille tarkoitettu esittely siit\u00e4, mik\u00e4 bash_profile on ja miten voit hallita kolmannen osapuolen ohjelmistoja sen avulla.<\/p>\n","protected":false},"author":1,"featured_media":224039,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[719,895,917],"tags":[1166],"class_list":["post-229591","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-kehittaejae","category-koodi","category-muut","tag-affiai-fi"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/229591","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/comments?post=229591"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/posts\/229591\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media\/224039"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/media?parent=229591"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/categories?post=229591"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fi\/wp-json\/wp\/v2\/tags?post=229591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}