• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Shell Skripting

A

Anonymous

Gast
Hi, ich habe noch nie was mit shell Skripting gemacht.
Also meine Frage: Kann man per Shell Skript auf eine Mysql-datenbank
zugreifen dort ne abfrage starten und dann noch ne Verbintung zu einem MailServer
aufbauen welcher dann die daten wegschickt...?

Gibts für sowas vllt Tutorials , oder kann mir einer vllt schreiben wie man sowas macht?

mfg
 

abgdf

Guru
Hallo,

bitte lies doch mal :mrgreen: von meiner Seite:

http://www.angelfire.com/linux/tux25/bash.html

und

http://www.angelfire.com/linux/tux25/python.html#15

Viele Grüße
 
OP
A

Anonymous

Gast
Hallo!

Danke,
das werde ich mir dann mal durchlesen:)

mfg :D
 

spoensche

Moderator
Teammitglied
guck mal unter http://tldp.org/LDP/abs/html/

wenn ich mich nicht irre gibts unter http://www.linuxfibel.de auch ein tut.
 

abgdf

Guru
guck mal unter http://tldp.org/LDP/abs/html/
Ja, den Link erwähne ich auf meiner Seite auch. Aber glaubst Du, das ist für Einsteiger geeignet ?

Zu meinem Python-Link: Ich glaube, Du mußt nicht unbedingt über Python zugreifen. Guck mal, wie da der Datenbankaufbau mit dem "mysql"-Kommando dargestellt ist. Ähnlich müßtest Du auch mysql-Befehle direkt an diesen Konsolenbefehl übergeben können.

Edit: Nämlich so:
Code:
echo "show TABLES;" | mysql -u root -pMyPassword -DMyDatabase
Den kennst Du, oder ?

http://www.linux-club.de/ftopic49585.html

Viele Grüße
 
OP
A

Anonymous

Gast
Hallo,
Also http://www.linux-club.de/ftopic49585.html kannte ich noch nicht, aber danke.:)

Solche Seiten über Shell... habe ich gesucht danke. Dann werde ich mal nen bissel was ausprobieren.


mfg thomas
 
OP
A

Anonymous

Gast
Hi habe folgendes geschrieben:
#!/bin/bash
test=`dirname $0`/dailyskripts/test.php
echo `php -f $test`

die Ausgabe ist :
Could not open input file: /www/data/ZIV.AVM/data/dailyskripts/test.php

wenn ich:
#!/bin/bash
echo `php -f /www/data/ZIV.AVM/data/dailyskripts/test.php`
mache geht das.

was mache ich falsch?
 
Und das Script liegt a) auch in /www/data/ZIV.AVM/data und wird b) auch mit vollständigem Pfad aufgerufen?

$0 enthält den Aufruf des Scriptes.

Also z.B.:
Code:
/etc/init.d/apache2 start
=> $0 ist /etc/init.d/apache2
Code:
./test.sh foo bar
=> $0 ist ./test.sh

Außerdem solltest du dir angewöhnen ...
- Variablen zu Quoten: "$VAR" bzw. "${VAR}"
- statt der Backticks "`" besser $(command) verwenden
- Shellausgaben hier im Forum in CODE-Tags zu setzen
Code:
[code]Da, wo die Textrein kommt
[/code]

So spontan fällt mir allerdings auch keine zufriedenstellende Lösung ein, den Standort des Scriptes im Script selbst zu bestimmen ...

Evtl. könntest du mit "${BASH_SOURCE[0]}" arbeiten ...
 
Oben