Mikä tässä alla olevassa aiheuttaa virheen:
#!/usr/bin/env bash
on () { echo "Tiedosto on olemassa." }
ei () { echo "Tiedostoa ei ole olemassa." }
[ -f testi.txt ] && on || ei
Onko tiedosto olemassa
3
305
Vastaukset
- Anonyymi
"#!/usr/bin/env bash"
Ei tuolla tavalla, vaan ensimmäiselle riville laitetaan polku bashiin. Yleensä se on /bin/bash, esim:
#!/bin/bash
[ -f $1 ] && echo "'$1' on olemassa." || echo "'$1' ei ole olemassa."
---
Tallennetaan tuo vaikka nimellä test.sh ja tehdään siitä ajettava komennolla chmod x ./test.sh
$ ./test.sh test.sh
'test.sh' on olemassa.
$ ./test.sh test.bash
'test.bash' ei ole olemassa.- Anonyymi
Absoluuttinen komentotulkin polku voi osoittaa väärään paikkaan, mutta ympäristömuuttujan env käyttäminen osoittaa lähes 100 varmasti missä komentotulkki on.
Bach, python ja perl -skriptin siirrettävyys on maksimissaan kun käytetään ympäristömuuttujaa kertomaan tulkin sijainti.
- Anonyymi
HIENOA
Hyvä ajatus kutsua funktioita, ehdon toteutumista vastaavasti. Virhe on minimaalinen, (;) ja vain yksirivisenä tulee esille.
#!/usr/bin/env bash
on () { echo "Tiedosto on olemassa."; }
ei () { echo "Tiedostoa ei ole olemassa."; }
[ -f testi.txt ] && on || ei
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 574614
Vain vasemmistolaiset rakennemuutokset pelastavat Suomen
Kansaa on ankeutettu viimeiset 30+ vuotta porvarillisella minäminä-talouspolitiikalla, jossa tavalliselta kansalta on ot1554224- 673862
- 1253820
Purra on kantanut vastuuta täyden kympin arvoisesti
Luottoluokituksen lasku, ennätysvelat ja ennätystyöttömyys siitä muutamana esimerkkinä. Jatkakoon hän hyvin aloittamaans473648Persut huutaa taas: "kato! muslimi!"
Persut on lyhyessä ajassa ajaneet läpi kaksi työntekijöiden oikeuksien heikennystä, joita se on aiemmin vastustanut. Pe793478- 983031
- 542885
- 252706
Korjaamo suositus
Vahva suositus Kumpulaisen korjaamolle vanhan 5-tien varrelta! Homma pelaa ja palvelu ykköslaatuista. Mukavaa kun tuli p152420