String-Variable innerhalb einer for-Schleife in der Bash-Shell verketten [closed]


15
#!/bin/bash

names= find /home/devuser -name 'BI*'
echo $names

for name in {names[@]}
do    
 echo $name
 $var = $var$name   
done

echo $var

1
Und was ist deine Frage?
— Rzymek

Antworten:


17
#!/bin/bash

names= find /home/devuser -name 'BI*'
echo $names

for name in {names[@]}
do    
 echo $name
 var=$var$name //$ should be removed which is prefixed before var. Blank space before and after equal sign should be removed to run this code.   
done

echo $var

1
Sind Sie sicher, dass Sigil vor dem Variablennamen auf der linken Seite einer Zuweisung richtig ist? Wie auch immer, überprüfen Sie besser Ihren gesamten Beitrag, beginnend mit diesem Kommentar.
— Manatwork

Besser. :) Jetzt der Kommentar. Anschließend wird die findAusgabe ausgeführt und erfasst . Dann die Array-Variable in der fors- inKlausel.
— Manatwork

1
Der letzte Punkt wird wahrscheinlich sein , dass besser ist , keine Schleife zu verwenden: var="$(IFS=; echo "${names[*]}")". Wenn Sie also nicht den Fragenbesitzer unterrichten möchten, hat die Korrektur seiner Mehrfachsyntaxfehler keinen großen Vorteil.
— Manatwork

1
Sie haben ein vergessen $, die for-Schleife sollte lautenfor name in ${names[@]}
— bcattle

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.