OVH Cloud OVH Cloud

Base64 ?

22 réponses
Avatar
loiseauthierry
Bonjour,

J'aimerais depuis le terminal faire un encodage Base64.

Est-possible ?

Merci
Thierry
--
* * __*__ *
* * * -----oOOo---°O°---oOOo------ * *
<http://astrophoto.free.fr> *
* * -------- oOOo oOOo -------- *

10 réponses

1 2 3
Avatar
Nicolas.MICHEL
Thierry Loiseau wrote:

Oui, ok, mais là, tu m'enfonces encore plus, non ? Je n'y connais rien,
alors :-)


La première fois que j'ai ouvert le terminal, il m'a falut 3 jours
(et de nombreux posts D'Eric) pour arriver à lancer une commande banale
que j'avais décidé d'essayer... Open trucmuche.
Horible, tout simplement.

C'est la première fois que tu touches à cette chose ?

Si oui, peut-être que ce qui suit te sera utiles...

quand on lit :
openssl base64 -in file.bin -out file.b64

C'est un exemple parfaitement clair pour un habitué, évidement.
ça veux dire que tu dois :

1) copier
"openssl base64 -in " (avec l'espace à la fin) dans le terminal

2)Puis
- soit tu écris le nom du fichier
(toujours utiliser la completion automatique : touche "tab" pour éviter
les erreurs)
- soit tu glisses le fichier dans la fenêtre du terminal
3) Puis écrire " -out " (avec l'espace devant et derrière)
4) puis écrire le nom du fichier de sortie, c'est à dire le résultat.

voilou :)
--
S'il n'y a pas de solutions, c'est qu'il n'y a pas de problèmes
iChat/AIM : michelnicolas

Avatar
loiseauthierry
Benoît Grandin wrote:

Là a priori, il faut passer par "openssl base64", mais je n'avance pas


Ils sont vraiment vilains, hein !
L'exemple pertinent dans le man est :

openssl base64 -in file.bin -out file.b64

où tu remplaces évidemment "file.bin" par le fichier à encoder (avec son
chemin complet si tu n'es pas dans le répertoire concerné) et "file.b64"
par le nom que tu souhaites lui donner.


Donc je suis obligé de passer par un fichier ? Je ne peux pas encoder
directement une chaîne de caractère et avoir le résultat dans le
terminal ?

Thierry (désolé à tous pour mon incompétence)
--
* * __*__ *
* * * -----oOOo---°O°---oOOo------ * *
<http://astrophoto.free.fr> *
* * -------- oOOo oOOo -------- *


Avatar
loiseauthierry
FiLH wrote:

J'aimerais depuis le terminal faire un encodage Base64.
Est-possible ?


openssl base64 help


Oui, ok, mais là, tu m'enfonces encore plus, non ? Je n'y connais rien,
alors :-)


Ben si tu demandes depuis le terminal c'est que tu envisages de tapper
une commande non ?


Ça paraît évident, effectivement !

Donc si tu tappes la commande que je t'ai dit, tu peux voir que
s'affiche quelques lignes d'aides qui ne sont pas trop compliquées à
comprendre si les mots : input output file encode et decode veulent dire
quelque chose pour toi.


Tout à fait ! Donc, si j'ai compris, on ne peut pas traiter directement
une chaîne de caractères ?

Thierry
--
* * __*__ *
* * * -----oOOo---°O°---oOOo------ * *
<http://astrophoto.free.fr> *
* * -------- oOOo oOOo -------- *




Avatar
filh
Thierry Loiseau wrote:

Benoît Grandin wrote:

Là a priori, il faut passer par "openssl base64", mais je n'avance pas


Ils sont vraiment vilains, hein !
L'exemple pertinent dans le man est :

openssl base64 -in file.bin -out file.b64

où tu remplaces évidemment "file.bin" par le fichier à encoder (avec son
chemin complet si tu n'es pas dans le répertoire concerné) et "file.b64"
par le nom que tu souhaites lui donner.


Donc je suis obligé de passer par un fichier ? Je ne peux pas encoder
directement une chaîne de caractère et avoir le résultat dans le
terminal ?


Il suffit de ne pas mettre de in ni de out.

code=`echo toto | openssl base64 -e`
echo $code

FiLH
--
Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire
une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle.
Roland Barthes.
http://www.filh.org



Avatar
loiseauthierry
FiLH wrote:

Thierry Loiseau wrote:
(...)

Donc je suis obligé de passer par un fichier ? Je ne peux pas encoder
directement une chaîne de caractère et avoir le résultat dans le
terminal ?


Il suffit de ne pas mettre de in ni de out.

code=`echo toto | openssl base64 -e`
echo $code


Ah voilà ce que je voulais !! Donc, je tape par exemple directement :

iBookG5:~ user$ echo toto | openssl base64 -e
dG90bwo
Ok. dans le cas où la chaîne contient une espace, des guillemets, je
fais :

iBookG5:~ user$ echo "Sesame:ouvre toi" | openssl base64 -e
QWxhZGRpbjoib3V2cmUgdG9pIgo
Merci à toi et à vous tous, je vais pas tarder à revenir :-))

Thierry
--
* * __*__ *
* * * -----oOOo---°O°---oOOo------ * *
<http://astrophoto.free.fr> *
* * -------- oOOo oOOo -------- *


Avatar
loiseauthierry
FiLH wrote:

Thierry Loiseau wrote:
(...)

Donc je suis obligé de passer par un fichier ? Je ne peux pas encoder
directement une chaîne de caractère et avoir le résultat dans le
terminal ?


Il suffit de ne pas mettre de in ni de out.

code=`echo toto | openssl base64 -e`
echo $code


Ah voilà ce que je voulais !! Donc, je tape par exemple directement :

iBookG5:~ user$ echo toto | openssl base64 -e
dG90bwo
Ok. dans le cas où la chaîne contient une espace, des guillemets, je
fais :

iBookG5:~ user$ echo "Aladdin:"ouvre toi"" | openssl base64 -e
QWxhZGRpbjoib3V2cmUgdG9pIgo
Merci à toi et à vous tous, je vais pas tarder à revenir :-))

Thierry
--
* * __*__ *
* * * -----oOOo---°O°---oOOo------ * *
<http://astrophoto.free.fr> *
* * -------- oOOo oOOo -------- *


Avatar
loiseauthierry
Nicolas MICHEL wrote:

- soit tu écris le nom du fichier
(toujours utiliser la completion automatique : touche "tab" pour éviter
les erreurs)


C'est quoi, çà ?

Thierry
--
* * __*__ *
* * * -----oOOo---°O°---oOOo------ * *
<http://astrophoto.free.fr> *
* * -------- oOOo oOOo -------- *

Avatar
Nicolas.MICHEL
Thierry Loiseau wrote:

Nicolas MICHEL wrote:

- soit tu écris le nom du fichier
(toujours utiliser la completion automatique : touche "tab" pour éviter
les erreurs)


C'est quoi, çà ?

Thierry


Tu peux tester toi-même :
Tu écris les 2 ou 3 premières lettres d'un nom puis tu appuyes sur tab,
si tant est que tu aies un shell digne de ce nom et qu'il n'ait pas été
saboté côté config il devrait écrire la fin du nom lui-même.

Pareil pour les commandes, dureste.

La touche tab, c'est bon. Mangez-en

--
S'il n'y a pas de solutions, c'est qu'il n'y a pas de problèmes
iChat/AIM : michelnicolas


Avatar
sebastienmarty
Jean-Luc Rosier wrote:

Salut, mon terminal ne fait que bipper lorsque j'appuie sur Tab, peux-tu
me donner un exemple de commande ou la complétrion automatique est censé
fonctionner ?


Ça bippe si tu ne tapes pas assez de lettres : "up"+TAB = ça bippe ;
"upt"+TAB = ça te complète en "uptime ".

--
[SbM]
<http://sebastienmarty.free.fr> - <http://tradintosh.free.fr>
<http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr>
"If the French were really intelligent, they'd speak English" (W. Sheed)

Avatar
laurent.pertois
Jean-Luc Rosier wrote:

Salut, mon terminal ne fait que bipper lorsque j'appuie sur Tab, peux-tu
me donner un exemple de commande ou la complétrion automatique est censé
fonctionner ?


C'est parce qu'il est tombé sur un cas où plusieurs choix existent, donc
il ne sait que choisir.

Si on prend l'exemple de la commande openssl donnée ici, taper "op" puis
tab va provoquer l'écriture de "open" et s'arrêter, il y a maintenant
plusieurs choix, taper deux fois tab va afficher ces choix, il faut
maintenant aider la complétion en lui donnant des caractère
supplémentaires pour réduire son choix, taper un "s" et tab suffit.

Pour les chemins, il faut bien faire attention à la casse, taper "cd
/sy" et tab ne donne rien, par contre "cd /Sy" et tab va provoquer
l'écriture de "cd /System/", ensuite, on tape tab, comme il ne doit y
avoir qu'un dossier dans /System, il n'y a pas de doutes. Et ainsi de
suite, il faut l'aider un peu, ne pas trop se tromper mais le double-tab
permet de voir ce sur quoi il bute.

Je suis d'accord avec Nicolas :

"La touche tab, c'est bon. Mangez-en"

HTH

--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.

1 2 3