Ik heb zojuist maar weer eens het bash scripten opgepakt en nu loop ik tegen het volgende probleem:
Opzich werkt deze code prima, maar ik wil niet dat de string echood op de console, maar dat ik deze weer in een variabele kan gebruiken zoiets dus:
Dit laatste voorbeel zou natuurlijk "worx" op de console moeten afdrukken.. maar in plaats daarvan krijg ik dit:
./test1: [: =: unary operator expected
failed
Iemand enig idee hoe ik strings goed kan returnen naar een variabele?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| #!/bin/bash
#
#
string_function ()
{
string="abcdefg"
echo $string$1
}
output=`string_function "zxy"`
echo "$output" |
Opzich werkt deze code prima, maar ik wil niet dat de string echood op de console, maar dat ik deze weer in een variabele kan gebruiken zoiets dus:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| #!/bin/bash
#
#
string_function ()
{
string="abcdefg"
echo $string$1
}
output=`string_function "zxy"`
if [ ${ouput:0:4} = "abcd" ]
#controleer of de eerste vier characters van de string "abcd" zijn.
then
echo "worx"
else
echo "failed"
fi |
Dit laatste voorbeel zou natuurlijk "worx" op de console moeten afdrukken.. maar in plaats daarvan krijg ik dit:
./test1: [: =: unary operator expected
failed
Iemand enig idee hoe ik strings goed kan returnen naar een variabele?