Python skript shutdown?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

hi ihr bin auf der Suche nach einer Dokumentation oder Tutorial für Shutdown-Skript

Hab hier ne datei dort steht Wert drin die sich ändern bei X soll shutdown eingeleitet werden nunja die Datei auslesen kein Problem aber nun die Funktion zu schreiben stellt doch n großes Problemchen dar
dachte zuerst vll mit einer if-Funktion wie in allen anderen Sprachen aber vll hat jemad ne bessere Idee
Liebe Grüße

mybloodyvalentine
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ein ``if``-Statement klingt doch gut, nur zu…
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

Muha hab ja am Wochenende auch ne Dokumentation gelesen

http://www.thomas-guettler.de/vortraege ... hrung.html

einfach nur gut gemachte Doku :D

aber gut ich probiers mal mit If ^^
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

#!/usr/bin/python
import linecache
#
while 1:
datei = open("datei.ini","r")
lineListen=datei.readlines()
datei.close
lese=lineListen[1].split('=')[1]

if lese == x :
shutdown()
else:
print blubb


das einzige was an dem Code nicht geht is shutdown hat einer vll ne Idee wie ich das umsetzen kann?
lg mybloodyvalentine
Zuletzt geändert von mybloodyvalentine am Dienstag 24. August 2010, 11:24, insgesamt 1-mal geändert.
.robert
User
Beiträge: 274
Registriert: Mittwoch 25. April 2007, 17:59

Warum die drei Shebangs?
Warum immer noch keine Code-Tags?

Wie soll man so helfen?

Wo kommt das x her?
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

x kommt von der Datei die gesplitet wird dort sind Variablen die immer neu definiert werden daher x kla da kommen 5 variablen noch dazu die mach ich aber erst wenn ich shutdown habe ^^
ich schreib meine Programme im Vi deswegen keine Tags ^^
.robert
User
Beiträge: 274
Registriert: Mittwoch 25. April 2007, 17:59

Bitte?

Ich denke dir sollte jemand helfen der mehr Geduld hat als ich. Mir geht deine wirre Ausdrucksweise und die Ignoranz, dich nicht mal zu Informieren was die Code-Tags sind (welche überhaupt gar nichts dem verwendeten Editor zu tun haben) jetzt schon auf die Nerven. Wer Hilfe will soll sein Anliegen so vorbringen, dass auch geholfen werden kann.
(Ich schreibe das jetzt nicht um dich zu ärgern, sondern um dir einen Hinweis zu geben. Der berühmt-berüchtigte Zaunpfahl!)
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

mybloodyvalentine hat geschrieben:#!/bin/bash
#!/bin/sh
#!/usr/bin/python
#/etc/init.d/boot.local
import linecache
#
while 1:
datei = open("datei.ini","r")
lineListen=datei.readlines()
datei.close
lese=lineListen[1].split('=')[1]

if lese == x :
shutdown()
else:
print blubb

das einzige was an dem Code nicht geht is shutdown hat einer vll ne Idee wie ich das umsetzen kann?
Fang doch bitte endlich erst einmal mit den Grundlagen an. Du hast immer noch diese völlig obskuren Codezeilen am Anfang des Skriptes die du offensichtlich für den shebang hältst. Dann solltest du PEP-8 beachten, vor allem was die Einrückung angeht. Zudem gibt es, worauf man dich auch seit Anfang an immer wieder hingewiesen hat, hier im Forum Code-Tags für Python die den Code in der Ansicht lesbarer gestalten.

Zu deinem Code:
1: Warum liest du die ganze Datei aus?
2: Was erwartest du eigentlich, was datei.close tut? In deinem Code tut es garantiert nicht das, was du erwartest.
3: Wann glaubst du, dass die while-Schleife verlassen wird?
4: Woher kommt x?
5: Wo ist shutdown definiert?

Mein persönliches Gefühl ist, dass du keine Ahnung davon hast was du da tust und nicht genügend Bereitschaft mitbringst dich selber einzuarbeiten. Glaub mir, man lernt nicht programmieren indem man einfach immer Zeug zusammenstöpselt was andere einem geben, ohne dass man es wirklich verstanden hat. Dir fehlen Grundlagen und vor allem fehlt dir die Bereitschaft, bei Fehlern selber nach dem Problem zu suchen. Ich verstehe ja, dass du den Code gerne lauffähig hättest, aber ohne Basiswissen und eine passende Grundhaltung zur Softwareentwicklung geht es halt nicht.

Das erinert mich an eine Diskussion die ich im Usenet mal hatte
> ich kenn mich halt net so gut aus mit dem fachausdrücken und ich bin
> bestimmt kein sauberer coder

"Seit ich zu Hause den achten Steckdosenverteiler in Reihe geschaltet
habe fliegt mir die Sicherung immer raus."

> ich schreib mein code halt so das es funktioniert

"Ich habe deshalb die Sicherung durch zusammengeknüllte Alufolie ersetzt
aber die hält nicht so richtig."

> darum wäre es besser wenn ich jemandem das ganze per email schreiben könnte
> dann kann ich auch genau sagen was ich will !!

"Ich suche deshalb jetzt einen Elektriker-Meister der mir genau erklärt,
wie ich einfach eine Drahtbrücke dazwischen löten kann."

> ich glaube kaum das ihr hier unmengen von code haben wollt ??

"Die Alufolie braucht der Meister dafür wohl nicht."

> sagt mir doch bitte was ihr genau braucht damit ihr mir helfen könnt wenn
> ihr lust dazu habt

"Ich möchte keine Grundlagen lernen. Soll ich ich euch die Aufschrift
auf der Sicherung nennen, damit ihr mir sagen könnt, wie dick der
Ersatzdraht sein muss?"
BlackJack

@mybloodyvalentine: Es ist völlig egal womit Du Deinen Quelltext schreibst -- wenn Du ihn hier ins Forum stellst, gehört der in Code-Tags, sonst kann man Dir nicht weiterhelfen weil man die Einrückung nicht sieht.
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

1: Warum liest du die ganze Datei aus?
2: Was erwartest du eigentlich, was datei.close tut? In deinem Code tut es garantiert nicht das, was du erwartest.
3: Wann glaubst du, dass die while-Schleife verlassen wird?
4: Woher kommt x?
5: Wo ist shutdown definiert?


1. weil ich die komplette Datei auslesen muss weil 2 Zeilen Drinstehn
und da ich Zeile 2 brauch lass ich die Splitten :)
2. datei.close schließt die datei mehr nicht
3 tja is halt so bis ich strg c drück
4. x kommt aus der datei Zeile 2 deswegen wird gesplitet nach '='
5. shutdown definiert? noch garnich es soll einfach wenn x drin steht shutdown ausführen :)

------------------------
Black Jack es ist eingerückt aber wenn ich den Code hier reinkopier is das weg auch wenn ich mit Leertaste nachrück ^^

ausserdem hab ich ne Dokumentation gelesen wie oft noch ^^
was kann ich dafür das ich net viel Zeit hab um irgendwelche Dokus zu lesen ^^ versteht ihr net das mein tag um 8 bzw 10 uhr angeht und um 23.30 erst aufhört?
sry aber ich hab eben net so viel Zeit wie manch Renter oder so und mein Betriebsinformatik-Meister will ich NICHT umsonst gemacht haben. Deswegen versuch ich mit Python umzugehn und glaub mir ich Les hier schon einiges in der arbeit auch wenn Chef das nicht passt :D
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

#!/usr/bin/pyton
import linecache
#
datei = open("datei.ini","r")
lineListen=datei.readlines()
lese=lineListen[1].split('=')[1]
x=2
if lese == 2 :
shutdown -r
else:
print "Fehler"


geänderter Code
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

@mybloodyvalentine: Wenn Du hier einen Beitrag erstellst, dann siehst Du doch oben so lustige kleine Buttons. Damit kann man jemand anderen zitieren, indem man sein Posting oder einen Abschnitt daraus mit den Tags [ quote]zitat[ /quote] umschließt. Kann man eben über die Buttons lösen oder per Hand eingeben. Natürlich ohne die Leerzeichen!

Da siehst Du dann noch "Code" und in der 2. Zeile "python". Ersteres ist für Code anderer Sprachen bzw. Daten gedacht, letzteres für Python-Code. Damit wird beim Rendern der Seite eben kein Leerzeichen weggenommen und die Formatierung aus Deinem Editor 1:1 übernommen.

Auf diesen Sachverhalt haben wir dich gefühlte 100 mal bereits hingewiesen in gefühlten 100 sich immer ähnelden Threads! Wenn Du schon so eine simple Sache nicht peilst, kapiere ich auch, wieso das Lesen von Dokumentation bei Dir nicht fruchtet. Nebenbei: Arbeite doch endlich mal ein gescheites Tutorial durch! Es wurde da schon das offizielle genannt (welches es auch auf Deutsch gibt btw. -> SuFu!), aber eben auch andere, die im wiki aufgeführt sind:

wiki.python-forum.de

Hier siehst Du übrigens die Verwendung des "url"-Tags ;-)

Desweiteren sind Deine Postings nach wie vor schwer lesbar, weil Du unvollständige, zu kurze und unstrukturierte Sätze schreibst. Du gehst auf Nachfragen meist nur oberflächlich - wenn überhaupt - ein und gibst Dir offensichtlich keine Mühe, dein Posting zu formulieren. Ich werde Dich jedenfalls jetzt so lange igonieren, bis sich da erkennbar etwas bessert und hoffe eigentlich, dass das die meisten anderen hier auch so sehen. Irgend wo muss "Erziehung" ja mal anfangen :evil:
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

Hyperion damit kann ich leben :)
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

mybloodyvalentine hat geschrieben: 2. datei.close schließt die datei mehr nicht
3 tja is halt so bis ich strg c drück
4. x kommt aus der datei Zeile 2 deswegen wird gesplitet nach '='
5. shutdown definiert? noch garnich es soll einfach wenn x drin steht shutdown ausführen :)
zu 2: Nein, das passiert da nicht. Lass dir mal einen Rückgabewert geben und vergleiche den mit dem, was dort herauskommen müsste.
zu 3: Wie erwartest du dann, dass der Code danach ausgeführt wird?
zu 4: Das ist nicht korrekt. In deinem Code wird nirgendwo ein Wert an x gebunden. Möchtest du vielleicht eine Zeichenkette haben?

Deine Beiträge wären übrigens deutlich besser zu lesen, wenn du nicht so schreiben würdest wie du redest. Du hast vor dem Abschicken deines Beitrags durchaus die Möglichkeit noch mal über den Text zu schauen, eine passende Struktur hineinzubringen, diese durch passende Interpunktion auch wirklich klar zu machen und Wörter korrekt zu schreiben. Ich empfinde deine Ausdrucksweise als äußerst anstrengend und die Motivation dir zu helfen sinkt mit jedem deiner Beiträge.

Wenn du übrigens keine Zeit hast um die Dokumentation zu lesen, dann solltest du darüber nachdenken, ob du dir nicht zu viel zumutest. "Keine Zeit" ist keine gute Voraussetzung um mit neuen Sachen anzufangen. Programmieren lernen kannst du später auch noch.
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

Wissen Sie mir wäre es um 100 mal lieber,
wenn ich jemand hätte der mir es erklärt.
Mit Dokumentationen komm ich nicht aus, bei Personen kann man eben Fragen.
Leider kann meine Arbeit nicht warten vorrausgesetzt Sie wollen noch eine auf der Straße lebende Informatikerin.

lg mybloodyvalentine
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

mybloodyvalentine hat geschrieben:

Code: Alles auswählen

#!/usr/bin/pyton
import linecache
#
datei = open("datei.ini","r")
lineListen=datei.readlines()
lese=lineListen[1].split('=')[1]
x=2
  if lese == 2 :
   shutdown -r
  else:
   print "Fehler"
Warum schließt du die Datei nicht? Wofür brauchst du x? Was soll "shutdown -r" sein?

Programmieren ist kein Büchsenwerfen, wo man so lange mit Bällen wirft bis man endlich alles abgeräumt hat. Das kann bei simplen Sachen mal funktionieren, aber du hast ja noch nicht mal die Bälle zum Werfen in der Hand.

Du hast keine Ahnung was du tust und hast laut eigener Aussage keine Zeit zum Lernen. Dann kann ich dir nur folgenden Rat geben: Lass es! Das hat so überhaupt keinen Sinn.
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

Die Datei die gesplitet wird:


[Abaclis_Console]
Boottime=XD



von hier kommt das x.
Pekh
User
Beiträge: 482
Registriert: Donnerstag 22. Mai 2008, 09:09

Du hast keinen Meistertitel in Informatik, und wenn du so weiter machst wirst du auch nie einen bekommen. So viel Vertrauen in unser Bildungssystem habe ich noch.

Dein Problem ist nicht, daß du zu wenig liest, sondern daß du die falschen Dinge liest. Du gehst, sinnbildlich gesprochen, in einen Supermarkt, ziehst nach dem Zufallsprinzip Waren aus den Regalen und wirfst alles (ohne es auszupacken), in einen großen Topf. Und hoffst, daß es genießbar sein wird. Und daß das von Zeit zu Zeit sogar mal klappt, läßt dich glauben, daß du Fortschritte machst.

Du liest die falschen Sachen. Suche nicht nach Codesnippets, sondern versuche wirklich, dein Handwerkszeug kennenzulernen. Das, was in den ersten sagen wir fünf Kapiteln JEDES noch so schlechten Tutorials beigebracht wird. Listen, Schleifen, Dictionaries. Das muß sitzen, sonst kann es nur Pfusch werden. Und vor allem: Lerne endlich, dich klar und verständlich auszudrücken. Wie willst du Probleme lösen, wenn du sie nicht klar beschreiben kannst? Das hat noch gar nichts mit Python zu tun, das ist eine Grundfertigkeit, die dir scheinbar völlig abgeht. Mathematik-Beweise in der Schule: Gegegeben, Gesucht. Was steht mir an Hilfsmitteln zur Verfügung? Welche davon nehme ich in die engere Wahl? Warum? Welche nicht? Warum nicht? Du mußt das Problem doch überhaupt erst mal erfassen und durchdringen, bevor du anfangen kannst, einen Algorithmus für die Problemlösung zu entwickeln, den du dann ganz am Ende deiner Betrachtungen in die Sprache Python übersetzen kannst.
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

also doch datei.close -.-


hab halt Programmieren von php vb.net und vba gelernt und nicht Python aber in allen Sprachen is die Syntax doch eh fast gleich. und nein ich geb nicht auf :) nur Versager tun das ^^ und lesen tu ich die ganze Zeit gerade, was andere so tun mit shutdown...


na shutdown soll heissen: pc fährt runter

^^
mybloodyvalentine
User
Beiträge: 99
Registriert: Dienstag 3. August 2010, 11:29

öhm doch in Netzwerkservicetechnik ne 2
Anwendungsentwicklung auch ne 2
und in Professionellen EDV Anwender auch kann dir gern mal die Diplome + Meistertitel schicken


oder du Ruft einfach bei HWK-Schwandorf Charlottenhof an und fragst nach dem Mädel das in PHP ne 1 hingelegt hat ;)
Antworten