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

285

    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. 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 🫦
      Ikävä
      53
      5099
    2. Voi itku! Sanna Marinilla EI OLLUT mitään tekemistä jäänmurtajakauppojen kanssa

      Miten tässä näin kävi? Sanna-kultti paniikissa.
      Maailman menoa
      91
      3932
    3. En 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 v
      Ikävä
      15
      3243
    4. Tykkäys ei tarkoita

      yhtään mitään!
      Ikävä
      37
      2844
    5. Puukotus Lidlissä

      Kuka sai puukkoo Lidlin pihas tänään. Ja kuka oli tekijä?
      Kankaanpää
      21
      2202
    6. Mulle riittäisi halaukset

      Ja juttelut mut sulle ei taida riittää
      Ikävä
      44
      2195
    7. Tarvitseeko

      kaivattusi suojelua?
      Tunteet
      39
      2156
    8. Mitä on tapahtunut myllymäessä ?

      On poliisit Sepänkadulla myllymäessä
      Kankaanpää
      9
      2095
    9. 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 herkk
      Ikävä
      34
      1742
    10. Paljon on tullut kuultua juttuja ja

      ei ole syytä olla uskomatta niitä.
      Ikävä
      64
      1721
    Aihe