[ nixa @ 24.10.2005. 02:23 ] @
pozdrav!

pravim skriptu koja treba iz varijable koja je zadana na sljedeci nacin
MYSQL="username:password@localhost/home/somedir"
izvuci sve podatke u osgovarajuce varjable da bih se mogao spojiti na server pomocu mysqldumpa...

uspio sam izvuci username sa ${MYSQL%:*} e sada htio sam pass izvuci bez da moram koristiti pomocne varijable nesto tipa ${${MYSQL#*:}%@*} ali to ne radi ... bio bih vrlo zahvalan kad abi mi netko pomogao oko ovog vjerovatno vecini vas tirvijalnog problema :)

hvala
[ random @ 24.10.2005. 07:23 ] @
0ld sk00l, dovoljan je običan Bourne shell:

Code:
PASS="`echo ${MYSQL} | cut -d@ -f1 | cut -d: -f2`"


Obični navodnici (") su tu samo zbog robusnosti (za slučaj da lozinka sadrži space karaktere i slično).

[Ovu poruku je menjao random dana 24.10.2005. u 08:26 GMT+1]
[ nixa @ 24.10.2005. 14:48 ] @
puno hvala na primjeru ... trazio sam po man stranicama od cut-a ali nikako nisam skuzio da treba koristiti i onaj -f1 -f2 :)

evo ako nekome bude trebalo ...

MYSQL="user1:password1@localhost/database user2:pass2@remotehost/database2"
MYSQL_USERNAME=$(echo ${MYSQL_CONN} | cut -d: -f1)
MYSQL_PASSWORD=$(echo ${MYSQL_CONN} | cut -d@ -f1 | cut -d: -f2)
MYSQL_HOSTNAME=$(echo ${MYSQL_CONN} | cut -d@ -f2 | cut -d/ -f1)
MYSQL_DATABASE=$(echo ${MYSQL_CONN} | cut -d/ -f2)