Onko tiedosto olemassa

Anonyymi

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

3

313

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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

    1. Orpo hiiri kadoksissa, Marin jo kommentoi

      Kuinka on valtiojohto hukassa, kun vihollinen Grönlantia valloittaa? Putinisti Purra myös hiljaa kuin kusi sukassa.
      Maailman menoa
      117
      6319
    2. Lopeta jo pelleily, tiedän kyllä mitä yrität mies

      Et tule siinä onnistumaan. Tiedät kyllä, että tämä on just sulle. Sä et tule multa samaan minkäänlaista responssia, kosk
      Ikävä
      379
      6125
    3. Nuori lapualainen nainen tapettu Tampereella?

      Työ­matkalainen havahtui erikoiseen näkyyn hotellin käytävällä Tampereella – tämä kaikki epäillystä hotelli­surmasta tie
      Lapua
      69
      5900
    4. Tampereen "empatiatalu" - "Harvoin näkee mitään näin kajahtanutta"

      sanoo kokoomuslainen. Tampereen kaupunginvaltuuston maanantain kokouksessa käsiteltävä Tampereen uusi hyvinvointisuunni
      Maailman menoa
      344
      3962
    5. Lidl teki sen mistä puhuin jo vuosikymmen sitten

      Eli asiakkaat saavat nyt "skannata" ostoksensa keräilyvaiheessa omalla älypuhelimellaan, jolloin ei tarvitse mitään eril
      Maailman menoa
      145
      2355
    6. Ukraina, unohtui korona - Grönlanti, unohtu Ukraina

      Vinot silmät, unohtui Suomen valtiontalouden turmeleminen.
      Maailman menoa
      4
      2345
    7. Orpo pihalla kuin lumiukko

      Onneksi pääministerimme ei ole ulkopolitiikassa päättäjiemme kärki. Hänellä on täysin lapsellisia luuloja Trumpin ja USA
      Kansallinen Kokoomus
      118
      1395
    8. Onko täällä helmessä tapahtunut vakava rikos?

      Onko kuullut kukaan mitään.
      Haapavesi
      12
      1231
    9. Miten kauan sulla menisi

      Jos tulisit mun luo tänne nyt kahvinkeittoon?
      Ikävä
      183
      1064
    10. Miksi me oikein

      Rakastuttiin?
      Ikävä
      59
      887
    Aihe