Bonjour,

Après quelques tests et recherches infructueuses, je demande un peu d'aide.
J'ai crée un script qui écrit un texte (donné en argument) et le complète avec des espaces pour obtenir un texte de 24 caractères.

Voici mon script char24
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
#! /bin/bash
 
nbChar=${#1}
nbEsp=$((24-$nbChar))
 
i=0
esp="x"
while true
do
	i=$(($i+1))
	result=`echo -n "${result}${esp}"`
	if [ $i -eq $nbEsp ]
	then break
	fi
done
 
txt=`echo -${1}${result}-`
echo $txt
Si j'écris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
char24 "un texte au hasard"
J'obtiens bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
un texte au hasardxxxxxx
Ca fonctionne donc si esp="x".
Mais j'ai un problème lorsque esp=" "...
Il ne prends pas en compte les espaces !

Voyez-vous une solution ?