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
249
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
Tukalaa kuumuutta
Tietäisitpä vaan kuinka kuumana olen käynyt viime päivät. Eikä johdu helteestä, vaan sinusta. Mitäköhän taikoja olet teh412365Mansikkatiloilla hyväksikäytetään ukrainalaisia
Työolot ovat surkeita ja palkka kelvoton. https://yle.fi/a/74-201729423001951- 201750
- 241565
Okei, myönnetään,
Oisit sä saanut ottaa ne housutkin pois, mutta ehkä joskus jossain toisaalla. 😘231404- 1001299
- 411272
En ymmärrä käytöstäsi
Se on ollut eräänlaista hyväksikäyttöä. Että seura kyllä kelpaa palstan välityksellä silloin kun ei ole parempaakaan tek1391235- 35992
Ensi kesänä
Näin kesän viimeisenä minuutteina ajattelen sinua. Olisiko seuraava kesä "meidän" kesä? Tänä vuonna ei onnistuttu, mutta32975