Nieuws:

We zijn er weer.

Na lange tijd van afwezigheid zijn we er weer  :laugh:
We hebben alle wachtwoorden gereset, je oude wachtwoord werkt niet meer.Je moet via het "wachtwoord vergeten"-linkje je wachtwoord resetten. Je krijgt hiervoor een mailtje op het adres dat je bij ons geregistreerd hebt.

De komende tijd zijn we nog druk bezig om de rest van de site op te bouwen, dus het kan zijn dat sommige onderdelen (tijdelijk) niet werken.

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

Auteur Topic: [BASH] Automatisch variabelen aanmaken in bash  (gelezen 973 keer)

Offline BlackBurn

  • Lid
    • http://www.robmaas.eu
  • Steunpunt: Nee
[BASH] Automatisch variabelen aanmaken in bash
« Gepost op: 2008/11/10, 16:07:24 »
Ik ben bezig met een BASH script, hierbij wordt een directory uitgelezen en vervoglens worden de belangrijke bestandsnamen via een for loopje doorlopen.

Echter nu wil ik graag dat elk bestand (willekeurig aantal) in een aparte variable wordt gezet, dus als het ware.

var1=bestand1
var2=bestand2
etc.
Nu heb ik het nummer al mee laten lopen in het loopje dus $i bevat het nummer, alleen hoe plak ik dit aan elkaar, dus dat er in het er ongeveer zo uitziet.

 for test in /media/image/*
  do
    echo [$i] $test
    var$i=$test
    let i=$i+1
  done
Live to win, dare to lose
http://www.robmaas.eu

Offline profoX

  • Lid
    • wesley
    • Lionslink
  • Steunpunt: Nee
[BASH] Automatisch variabelen aanmaken in bash
« Reactie #1 Gepost op: 2008/11/10, 16:20:56 »
waarom wil je dat doen? het lijkt me een vreemde vereiste voor een programma
ik weet ook niet of het wel mogelijk is.. maar het is vast op een betere manier op te lossen
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline BlackBurn

  • Lid
    • http://www.robmaas.eu
  • Steunpunt: Nee
[BASH] Automatisch variabelen aanmaken in bash
« Reactie #2 Gepost op: 2008/11/10, 16:28:26 »
Ik heb al een oplossing in de vorm van een array

 for test in /media/image/*
  do
    echo [$i] $test
    array[$i]=$test
    let i=$i+1
  done
Kleine samenvatting wat het scriptje moet doen:
Het is voor een klein image script wat gestart wordt via PXE -> deze laadt een kleine linux distro en vervolgens wordt dit script gestart, hij haalt de images op uit een directory en laadt deze op het scherm zien. Vervolgens kan de eindgebruiker (in dit geval de helpdesk) met een nummertje gevolgd door enter de juiste image terugzetten.

p.s. bovenstaande is overigens pure test code.
Live to win, dare to lose
http://www.robmaas.eu