hansis1
Goto Top

Variablenzuweisung

Muss einer Variable eine bestimmte Anzahl von Leerzeichen zuweisen.

Hallo.

folgendes Problem.
Ich möchte einer Variable eine bestimmte Anzahl von Leerzeichen zuweisen. Die Anzahl ist abhängig von einer anderen Variable.

zB:
VariableA: "TEST: "
VariableB: " ."
echo VariableA VariableB

Das Problem ist, dass der "." in der VaribleB genau auf der Position "80" sein muss.
Die Länge der VariableA kenn ich erst nach Zuweisung.

Wie kann ich nun die Anzahl der Leerzeichen (80-Länge VariableA) in VariableB schreiben?

Danke
hansi

Content-ID: 188587

Url: https://administrator.de/contentid/188587

Ausgedruckt am: 26.11.2024 um 09:11 Uhr

Cthluhu
Cthluhu 25.07.2012 um 12:07:33 Uhr
Goto Top
Hi hansi,

In welcher Programmiersprache soll das denn bitte sein?

mfg

Cthluhu
hansis1
hansis1 25.07.2012 um 12:34:55 Uhr
Goto Top
Hallo!

Sorry, vergessen zu erwähnen: Linux bash

lg
facebraker
facebraker 25.07.2012 um 12:40:05 Uhr
Goto Top
In der Bash:

testing='14.00'
Hier wird die Anzahl der Dateien in einer Variable gespeichert:

gesamt=`sudo find /backup/dasi/ /backup/dasi/Praktikant /backup/dasi/root-server | wc -l`
hansis1
hansis1 25.07.2012 aktualisiert um 12:52:47 Uhr
Goto Top
danke mal.

ich denke ich habe mich falsch ausgedrückt.

folgendes soll passieren.
VariableA = " Test: "  
VariableB = "                   ."  
VariableA + VariableB = " Test:                     ."  

VariableA = " Kurztest: "  
VariableB = "                   ."  
VariableA + VariableB = " Kurztest:                 ."  

Beidemale sollen die Konkat. der beiden Variablen die gleiche Länge haben sollten und zwar genau 80.
Da die Länge von VariableA immer unterschiedlich ist muss die Länge der VariableB variabel sein.

lg
hansi
bastla
bastla 25.07.2012 aktualisiert um 13:45:14 Uhr
Goto Top
Hallo hansis1!

Wäre es nicht einfacher, die VariableB nur mit (80) Leerzeichen zu füllen und davon, abhängig von der Zeichenanzahl in VariableA, die nötige Anzahl sowie am Ende den Punkt anzufügen - also schematisch etwa:
VariableA = " Test: "  
VariableB = "                                                                               "  
L = 80 - ${#VariableA} - 1
VariableC = VariableA + ${VariableB:1:L) + "."  

Grüße
bastla

P.S.: Da ich eigentlich nur CMD schreibe, habe ich mich hinsichtlich Syntax mal hier ein wenig umgesehen ...
hansis1
hansis1 25.07.2012 um 14:01:14 Uhr
Goto Top
danke
Genauso habe ich es jetzt gemacht

RAHMEN="*                                                                           *"  
AUSDRUCK="Datum:    `date +"%d.%m.%G %T"`"  
echo "${RAHMEN:0:1} $AUSDRUCK ${RAHMEN:${#AUSDRUCK}+3}"  

Jetzt bekomme ich folgendes:
* Datum:    25.07.2012 13:58:19                                             *

dankeschön
hansi