Kirjoittaja Aihe: update.sh kuvake [ratkaistu]  (Luettu 770 kertaa)

Jakke77

  • Käyttäjä
  • Viestejä: 3515
  • Oulu (Oinaansuo)
    • Profiili
    • MasterJ
update.sh kuvake [ratkaistu]
« : 06.12.17 - klo:11.27 »
mitenhän tämän saa suoritumaan klikkaamalla kuvaketta, sais päätteessä avautua

Koodia: [Valitse]
#!/bin/bash
set -e
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
« Viimeksi muokattu: 07.12.17 - klo:14.35 kirjoittanut Jakke77 »
U_G_H

Aspire E5-575G V1.27 CPU: Intel i3-6100U (4) @ 2.300GHz GPU: Intel® HD Graphics 520 GPU: NVIDIA GeForce 940MX

AimoE

  • Käyttäjä
  • Viestejä: 1307
    • Profiili
Vs: update.sh
« Vastaus #1 : 06.12.17 - klo:12.37 »
Siirrä sudo eri kohtaan:

Koodia: [Valitse]
#!/bin/bash
if [ "$(whoami)" != "root" ]
then
    sudo $0
    return
fi
set -e
apt-get update
apt-get upgrade
apt-get dist-upgrade

Lisäksi, jos haluat että koodin voi ajaa sekä komentoriviltä että sille tehdyn käynnistimen kautta, ja jos käynnistimen määritys (.desktop-tiedosto) sisältää asetuksen Terminal=true, eli suoritusta varten avataan pääteikkuna jossa näet miten suorituksen kävi, niin silloin koodiin tarvitaan yksi rivi lisää:

Koodia: [Valitse]
#!/bin/bash
if [ "$(whoami)" != "root" ]
then
    sudo $0
    [ $SHLVL -eq 1 ] && { printf "sulje> " ; read any; }
    return
fi
set -e
apt-get update
apt-get upgrade
apt-get dist-upgrade

Komentoriviltä suoritettuna siis pysäytystä (read any) ei tehdä, koska se tarvitaan vain jos käynnistys tehtiin käynnistimen kautta.

Tuo koodi kelpaisi kyllä myöskin dash:lle, mutta silloin testattava $SHLVL-arvo on 0.

AimoE

  • Käyttäjä
  • Viestejä: 1307
    • Profiili
Vs: update.sh
« Vastaus #2 : 06.12.17 - klo:13.46 »
Vastauksestani taisi puuttua se oleellisin eli miten käynnistys tehdään. Tärkintä on että sinulla on kyseiseen tiedostoon suoritusoikeus (chmod +x), jolloin sen voi suorittaa tiedostoa klikkaamalla jos tiedostoselain (Nautilus) on asetettu sallimaan suoritus.

Mutta käynnisin on yleensä kätevin keino tehdä skriptistä klikkaamalla suoritettava. Tässä malliksi eräs käynnistin jonka olen tehnyt itselleni toiseen tarkoitukseen. Osannet soveltaa sitä; vaihdat tuossa kaikki kohdat jotka ovat suomeksi (ja lisäksi kohta Icon, jossa valitset jonkun sopivamman kuvan tai poistat rivin).

Koodia: [Valitse]
[Desktop Entry]
Type=Application
Name=Salakansio
GenericName=Viritys
Comment=Salakansion liitos tai irrotus
Categories=Utility;
Icon=folder-open
Exec=/home/haltia/bin/piilo
Terminal=true

Talleta koodi  tiedostoon jonka nimen loppu on ".desktop" ja vie tiedosto  hakemistoon ~/.local/share/applications ja annat siihenkin suoritusoikeuden (chmod +x ~/.local/share/applications/*).
« Viimeksi muokattu: 06.12.17 - klo:13.48 kirjoittanut AimoE »

Jakke77

  • Käyttäjä
  • Viestejä: 3515
  • Oulu (Oinaansuo)
    • Profiili
    • MasterJ
Vs: update.sh
« Vastaus #3 : 07.12.17 - klo:14.34 »
Vastauksestani taisi puuttua se oleellisin eli miten käynnistys tehdään. Tärkintä on että sinulla on kyseiseen tiedostoon suoritusoikeus (chmod +x), jolloin sen voi suorittaa tiedostoa klikkaamalla jos tiedostoselain (Nautilus) on asetettu sallimaan suoritus.

Mutta käynnisin on yleensä kätevin keino tehdä skriptistä klikkaamalla suoritettava. Tässä malliksi eräs käynnistin jonka olen tehnyt itselleni toiseen tarkoitukseen. Osannet soveltaa sitä; vaihdat tuossa kaikki kohdat jotka ovat suomeksi (ja lisäksi kohta Icon, jossa valitset jonkun sopivamman kuvan tai poistat rivin).

Koodia: [Valitse]
[Desktop Entry]
Type=Application
Name=Salakansio
GenericName=Viritys
Comment=Salakansion liitos tai irrotus
Categories=Utility;
Icon=folder-open
Exec=/home/haltia/bin/piilo
Terminal=true

Talleta koodi  tiedostoon jonka nimen loppu on ".desktop" ja vie tiedosto  hakemistoon ~/.local/share/applications ja annat siihenkin suoritusoikeuden (chmod +x ~/.local/share/applications/*).

tämäpä näytti toimivan, kiitti
U_G_H

Aspire E5-575G V1.27 CPU: Intel i3-6100U (4) @ 2.300GHz GPU: Intel® HD Graphics 520 GPU: NVIDIA GeForce 940MX

Jakke77

  • Käyttäjä
  • Viestejä: 3515
  • Oulu (Oinaansuo)
    • Profiili
    • MasterJ
Vs: update.sh kuvake [ratkaistu]
« Vastaus #4 : 07.12.17 - klo:16.42 »
kiitti teille, pari käytännöllistä kuvaketta sain käyttöön ;)
U_G_H

Aspire E5-575G V1.27 CPU: Intel i3-6100U (4) @ 2.300GHz GPU: Intel® HD Graphics 520 GPU: NVIDIA GeForce 940MX