Concatenation de chaines

Bonjour,

Je suis développeur c et c++ et j’ai decidé de me mettre un peu au shell. Je suis en train de faire une version “bash” de mon algo de cryptage. Cependant je bloc à une étape stupide a cause de ma méconnaissance de ce langage script. Voici le code qui pose problème :

while read line
	do 
		set $var_cryptosystem="$var_cryptosystem$line\n"
	done < $1

	echo -e $var_cryptosystem

Ce que je veux en fait c’est parcourir le fichier $1 et placer tout le contenu du fichier dans une même variable et l’afficher pour vérifier le contenu. Dans cet exemple, l’echo ne renvoi rien !

Je precise que je suis en “!/bin/bash”

Merci d’avance de votre aide ! :wink:

:bounce: UP

Bah alors personne pour m’aider… je cherche depuis cet après midi, je trouve que le shell est pas tres bien documenter pour des utilisations plus poussées contrairement au C ou autres c++ :frowning:
Edité le 14/04/2008 à 23:00

Je crois qu’un script python sera plus efficace pour ça.

Oui coder un algo un peu compliqué en bash n’est pas une chose à faire…

Je peux t’aider autant que tu veux ou presque si tu le fais en python (et ca marchera probablement aussi sous win :slight_smile: )

+1

tout sauf le shell en gros…
meme si on peut faire beaucoup de choses en shell, il faut le garder quasiment que pour scripter le systeme. C’est fait pour ca et c’est la dessus qu’il est vraiment bon…
C’est un peu comme si tu essayais de faire une appli de compta en Excel, c’est tout a fait possible (et ca existe, je l’ai vu) mais faut vraiment eviter car ce n’est pas fait pour aller si loin.

Pour info : c’est de la commande “cat” que tu as besoin.
Edité le 15/04/2008 à 13:50

Salut à vous !

J’ai effectivement laissé tomber l’idée, je trouvais ca interessant pour me mettre au shell mais ca me soul, je trouve ce truc vrmt inutile (dans mon cas) tout ce que le shell fait je le fait en C.

Que pourrait m’apporter python ? et par hasard, l’un d’entre vous à des notions en cryptographie ?

python est un bon langage orienté objet très “human readable”, multiplateforme plutot performant dans sa categorie (interpreté) et qui donne un accés facile à enormement (le mot n’est pas trop fort) de librairies dont la cryptographie.
Edité le 16/04/2008 à 02:14

c’est evident que le C permet plus de choses que le Shell… mais pour faire une procedure d’automatisation en 15min avec du C, c’est tout bonnement impossible.
On peut difficilement comparer les 2

Python est un peu entre les 2… il est tres puissant et facile a coder. Mais il est moins performant que du C et moins rapide a coder que le Shell.
Il s’utilise pour des vraies applis mais generalement pas pour des applis qui reclament un controle des perfs pousse.

Bref, c’est encore une autre categorie de langages. Faudrait que tu les essayes et que tu t’interesses aux applis codees avec tel ou tel langage car visiblement tu ne connais que le C… c’est bien mais il est loin d’etre pratique dans toutes les situations.
(Certains devs “melangent” meme les langages et utilisent differents langages dans differentes parties de leur appli suivant la ou c’est necessaire)

“moins rapide a coder que le Shell.” : Plus verbeux mais plus lissible on va dire :wink:

clair :paf:

quand je dis “moins rapide a coder” c’est sur des trucs bete : par exemple, un script de base en shell pourrait etre ca :


#!/bin/bash
cd /home/KP2
ls | grep XXX > pr0n.txt
mail -s "Pr0n" KP2@meuhlesvaches.com < pr0n.txt

Bref, un truc tout bete, juste des commandes placees les unes apres les autres alors que pour faire la meme chose en python, faut un peu plus de code…

KP2: bonne synthèse :wink:
le shell => pas d’algorithme complexes. simplement manipuler le système comme une boite noire.
C => programmation système
python => assez performant dans tout le reste

Python vient aussi, et c’est tout l’interet, avec la possibilité de nombreuses libs dont le coeur est écrit en C ou en fortran.
www.scipy.org… en est un superbe exemple : la souplesse de python et des perfs au niveau des meilleures lib C ou fortran :slight_smile:

ca c’est un bel exemple de melange tiens…
Y’a aussi de plus en plus de jeux commerciaux qui utilisent un moteur en C et dont les “regles” (ia, scenario, etc) sont codees en python

ouaip c’est tellement beau que ca commence meme à etre utiliser dans un grand groupe qui sait dans le spatial en Europe à la place de IDL/matcad/matlab :slight_smile:
La NASA (en gros) supporte une bonne partie du devel de scipy/numpy (en payant des gens pour boser dessus).

Bref, c’est une lib “sérieuse” :slight_smile: