2012-03-31 6 views
-2

Ich habe einige Fragen darüber, wie Sie eine du-Funktion in UNIX-Shell (/ bin/sh) implementieren, wenn ich ein Skript zum exec einige schreiben möchte Befehle.Wie ein Skript zu entwickeln, die einige Funktion in UNIX-Shell-Skript implementiert werden kann

1) Um Verwechslungen mit dem echten du-Befehl zu vermeiden, wie kann ich diesen Namen mit einem neuen Namen wie "disku" bezeichnen?

2) Ich möchte "getopt" verwenden, um ein Befehlszeilenargument zu akzeptieren, das den Namen eines Startverzeichnisses in absoluter oder relativer Notation angibt. (ZB Wenn die gegenwärtige Arbeitsverzeichnis/home und wir wollten Verzeichnis/home/foo und alle Unterverzeichnisse verarbeiten, die Befehlszeile könnte sein:

disku -d /home/foo or 
disku -d foo or 
disku -d ./foo 
All three forms must work.) 

so wie kann in einem Skript schreiben, dass die Liste jede Datei im Verzeichnis und seine Größe als Anzahl von 512-Byte-Bericht Einheiten aufgerundet auf die nächste 512-Byte-Einheit auf.

sO wie kann ich die eingebauten in getopt-Funktion verwenden, um Befehlszeilenargument zu analysieren.?

dann wie kann ich die Implementierung der h und -s Optionen?

prost

+0

Dies ist ein wenig breites konsistent zu machen. . . Erstens scheint es, dass Sie zwei nicht miteinander verbundene Fragen haben, und dann zeigt die zweite Frage nicht wirklich, was Sie bisher versucht haben. Ich würde diese Frage in mehr mundgerechte Arbeitsteile aufteilen. – dsolimano

Antwort

0

1) So stellt dich auf neue Namen wie DISKU alias verwendet

alias disku=du 

es in einigen Startskripten setzen, um es über mehrere Sitzungen