Leider gottes nochmal ein Bashproblem.

  • Themenstarter Themenstarter sw33tlull4by
  • Beginndatum Beginndatum
S

sw33tlull4by

Guest
hi!
ich habe noch ein paar fragen bezueglich der bash unter linux:
1.Wiso gibt

cat /dev/zero /dev/stdout
bzw
cat /dev/zero /proc/self/fd/1
bzw
dd if="/dev/zero" of="/dev/stdout"
bzw
dd if="/dev/zero" of="/proc/seld/fd/1"

nichts auf meinem Bildschirm aus.
Nicht das das etwas sinnvolles waere aber ich spiele gerne^^


2.gibt es eine Regel wann man auf die device-files zugreift und wann auf die eigentliche verzeichnissstrucktur?

3.Linux ist sehr komplex habe also erstmal was von den /etc/fd/* Sachen erfahren
was raetst du mir was sollte ich unbedingt ueber Linux behalten?
Denn ich kann nicht alles behalten und schon gar nicht nach einmal lesen und des weiteren habe ich nicht
die Zeit permanent zu wiederholen und ich werde auch nicht immer ein Script in Bash schreiben.

4.Was fuer einen Grund hat es das ich verschiedene Verzeichnisbaeume an verschiedener Stelle finde?
Als beispiel mal ls / und ls /sbin/
bzw. /etc/host.conf und /etc/sysconfig/network



mfg

sw33t
 
1. Das Zero-Device gibt dir Null-Oktetts (\000) zurueck, die nicht anzeigbar sind.

2. Device-Dateien sind die direkte Schnittstelle zur Hardware. Bei HD-Devices heisst das, dass man auf diese nur dann zugreift, wenn man sektorenweise Operationen auf einer Partition/Platte durchführen oder die Partitionstabelle ändern will. Device-Dateien sind allgemein dazu da, dass eine Software direkt auf Funktionalitäten des Treibers, der das Device erstellt hat, zugreifen kann.

3. Lerne das, was du für notwendig erachtest. Niemand kann dir sagen, was du an Linux lernen solltest (von einigen Grundlagen wie dem Umgang mit der Shell, Installation von Software u.ä. mal abgesehen). Jemand, der Linux primär auf Servern einsetzt benötigt z.B. ein völlig anderes Wissen als jemand, der mit Linux seine täglich Büroarbeit macht.

4. Das Linux Dateisystem hat einen streng logischen Aufbau, wie er in jedem Unix zu finden ist. 10 Sekunden Google hätte dich z.B. zu http://www.uni-muenster.de/ZIV/Mitarbeiter/MathiasGrote/linux/Dateisystem.html gebracht, wo dir erklärt wird wofür welche Ordner da sind. :rolleyes:
 
Hi!
Vielen dank fuer die Hilfe... sehe ich ein das wenn die zeichenkette nicht dargestellt werden kann ich auch nichts sehe.
Ich habe es mal mit

echo "hi">proc/self/fd/1

gemacht und
es gar das gleiche Ergebniss wie das beispiel von oiermann.
Berichtigt mich bitte wenn ich falsch liegen aber:
Ein Filedeskriptor(z.b./proc/self/fd/1) ist ein Eintrag in einer vom Kernel verwaltete Liste in welcher alle z.Z. offenen Dateien stehen(weiss zwar nicht genau wie das gamacht wird aber bin ja auch Anfaenger ^.^) und da unter Linux ja alles eine Datei ist bzw als solche gehandhabt wird, schreibt das System meinen Wert hi in die vermeintliche Datei welche Stdout ist und wenn ich /dev/tty ansteuere dann wende ich mich direkt an den z.Z. aktiven Bashprompt welcher somit auch Stdout ist.

btw:gehe ich richtig in der Annahme das Opertionen mit filedeskriptoren langsamer sind als ihre Highlevel-Gegenstuecke(fread,rwrite,etc)? da diese nicht in einer Liste nachschauen muessten sondern gleich ueber Referenzen auf die entsprechende "Datei" zugreifen?

@bitmuncher:
Thx, dafuer das du wahrscheinlich schon zum 100 mal einem Noob die gleichen sachen erklaert hast, bin schon dabei mir die Seite reinzuziehen.
mfg

sw33t
 
Zurück
Oben