BASH

Aus ConfigWiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
Zeile 5: Zeile 5:
 
* [[dump-Backupskript]]
 
* [[dump-Backupskript]]
 
* [[Datei einer bestimmten Größe mit zufälligem Inhalt erstellen]]
 
* [[Datei einer bestimmten Größe mit zufälligem Inhalt erstellen]]
 
+
* [[Zufälligen String mit einer definierten Länge erzeugen]]
== Zufälligen String mit einer definierten Länge erzeugen ==
+
* Kann z.B. zum erzeugen eines neuen Passwortes genutzt werden.
+
* Das Bsp.-script prüft:
+
** ob ein Parameter für die Länge des zu erzeugenden Strings übergeben wird,
+
** ob dieser ein Integer ist
+
** und dieser kleiner als 1000000 ist (dient gegen Rechnerstress).
+
* Die Standardlänge des Strings ist hier 10 Zeichen.
+
<source lang="bash">
+
#!/bin/bash
+
+
#
+
# function for random string
+
#
+
function randstrg () {
+
        local strgLength
+
        local strg
+
        if [ $1 ]; then
+
                strgLength=$1
+
        else
+
                strgLength=10
+
        fi
+
 
+
        strg=</dev/urandom tr -dc A-Za-z0-9 | head -c $strgLength
+
        return $strg
+
}
+
+
#
+
# ERROR-handling if parameter 1 set, not to big  and not a integer
+
#
+
if [ ${1} ]; then
+
    if [ ! $(echo "${1}" | grep -E "^[0-9]+$") ] || [ "${1}" -gt 1000000 ]; then
+
        echo 'wrong 1. parameter ( Must be an INTEGER <= 1000000! )'
+
        echo 'usage:'
+
        echo "${0} [ INTEGER ]"
+
        exit
+
    fi
+
fi
+
+
#
+
# GO
+
#
+
strg= randstrg ${1}
+
echo $strg
+
</source>
+

Version vom 20. Dezember 2011, 00:53 Uhr