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
285
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
Ikävä sua j-mies!
Enkä oikeesti ymmärrä miksi. Eihän me tunneta ees kovin hyvin. Mut haluaisin sun kanssa jotain säätöä sit kai vaan 🫦535099Voi itku! Sanna Marinilla EI OLLUT mitään tekemistä jäänmurtajakauppojen kanssa
Miten tässä näin kävi? Sanna-kultti paniikissa.913932En välttämättä koskaan aikaisemmin tosissani uskonut mihinkään sielunkumppanuuteen ym
Ennen kuin tapasin sinut. Oudointahan tässä on että ollaan tiedetty toisemme kuitenkin vuosia ja enemmän vuosia, mutta v153243- 372844
- 212202
- 442195
- 392156
- 92095
Sielunkumppanini ja nykyinen kaivattuni ovat hyvin samankaltaisia ihmisiä
Ja uskon että he punovat langansa yhteen pian. Sielunkumppanille voi olla kova paikka hyväksyä kuinka välittävä ja herkk341742- 641721