Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: shell scriptje voor het installeren van programma's  (gelezen 1119 keer)

Offline golden07

  • Lid
shell scriptje voor het installeren van programma's
« Gepost op: 2012/10/01, 19:58:44 »
hallo,

omdat ik nogal vaak een herinstallatie uitvoer van linux mint of ubuntu leek het mij handig om een scriptje te maken dat programma's installeert die ik veel gebruik, echter zou ik ook graag een controle willen inbouwen om te kijken of het programma al geinstalleerd is, en of de in de sources.list bijvoorbeeld deb http://repository.spotify.com stable non-free al aanwezig is zodat deze er niet dubbel in komt te staan, wie kan mij helpen? dit is het scriptje tot nu toe:

#!/bin/bash
# My first script

echo "Welkom bij mijn eerste installatiescript"
sleep 3

apt-get upate
apt-get upgrade -y

echo "installatie dropbox"
sleep 2
apt-get install dropbox -y

echo " installatie spotify"
sleep 2
echo "deb http://repository.spotify.com stable non-free" >> /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 94558F59 -y

apt-get update
apt-get install spotify-client -y

echo "installatie google chrome stable"
sleep 2

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list
apt-get update
apt-get install google-chrome-stable

echo "chrome is geinstalleerd"
sleep 5


Wie kan mij helpen met die controles? zodat ik mijn scriptje verder kan uitbreiden:)

Groet, golden07

Offline redmar

  • Vertaalteam
Re: shell scriptje voor het installeren van programma's
« Reactie #1 Gepost op: 2012/10/01, 20:15:03 »
Je kan "set -e" gebruiken om er voor te zorgen dat het script meteen stopt als het een fout tegen komt. Zo voorkom je dat het een hele tijd doorgaat terwijl er van alles mis gaat. Daarnaast zou ik het script niet als root uitvoeren, maar sudo gebruiken waar nodig. Zo is de kans kleiner dat je met een tikfout je halve systeem om zeep helpt. Voor het kijken of een bepaalde repo al aanwezig is zou je grep kunnen gebruiken

Re: shell scriptje voor het installeren van programma's
« Reactie #2 Gepost op: 2012/11/09, 10:03:04 »
Hoi Golden07,

Je gaat uit van veel dingen dat zij automatisch werken. Een ander ding is, dat een output niet perse nodig is, tenzij er iets fouts is.  Dit is een kwestie van smaak. Als nog strenger wilt checken, dan kijk je of de file sources.list überhaupt writeable  is.  De zogenaamde file operators: http://tldp.org/LDP/abs/html/fto.html

Ik zou alle output loggen naar een tijdelijke file dus achter alle apt-get's: "1>&2", hiermee redigireer je de standaard en error output.
zie verdere achtergrond: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-3.html

Omdat, dit script alleen werkt in een sudo of root situatie, kan je ook een check doen met het commando whoami


Verder kan je checken met grep of je een hit krijgt in /etc/apt/sources.list. Verwerk dat in een alias.

if grep -q PATTERN FILE; then
    $FOUND = "TRUE"
fi

if $FOUNT == "FALSE"; then
  echo "deb http://repository.spotify.com stable non-free" >> /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 94558F59 -y
fi


« Laatst bewerkt op: 2012/11/09, 10:05:19 door maikelonline »