je dois générer 12 chiffres dans les numéros de Hex KSH sur Solarisgénérons 12 Numéro de chiffres HEX dans KSH
Merci
je dois générer 12 chiffres dans les numéros de Hex KSH sur Solarisgénérons 12 Numéro de chiffres HEX dans KSH
Merci
Commencez avec ce programme Python, hex12.py
.
hex12.py
#!/usr/bin/env python
import random
import hashlib
h= hashlib.sha1(str(random.random())).hexdigest()
print h[:12]
Dans votre shell, vous pouvez maintenant utiliser hex.py
pour créer 12 chiffres hexadécimaux sur la sortie standard.
Essayez celui-ci:
DIGITS=`head -c 6 /dev/urandom | od -x | head -n 1 | sed -e 's/^0* //' -e 's/ //g'
#!/bin/ksh
set -A hex 0 1 2 3 4 5 6 7 8 9 A B C D E F
for i in {1..12}
do
printf ${hex[$((RANDOM%16))]}
done
Bonne solution sauf que j'ajouterais probablement une ligne supplémentaire avant la boucle, c'est-à-dire RANDOM = 0x'head -c 4/dev/urandom | od -x | tête -1 | cut -d '' -f6' – fpmurphy1
Cela fonctionne bien, je vais essayer dès que je serai au travail demain Merci – rojanu
Cela devrait être le module 16. Vous pouvez omettre le '$ (())': '$ { hex [RANDOM% 16]} '. Vous pouvez aussi faire 'hex = ({0..9} {A..F})'. (Ceci est vrai dans ksh93 Je ne suis pas sûr des versions antérieures.) –
@S. Lott, je crois qu'il a besoin d'une solution utilisant le script ksh. – Anders
Il a demandé ksh, je pense qu'il a besoin d'un script shell korn –
Cela fonctionne dans ksh. Essayez-le. Si cela a des permissions 'x', alors le' #!/Usr/bin/env python' fait que ksh invoque Python. À chaque fois. Reliablement. En effet, cela fonctionne dans à peu près tous les shell. –