# HG changeset patch # User markus schnalke # Date 1430669280 -7200 # Node ID bf2ac5df006357e5036496b705ebcdc2c2ff63de # Parent 00097c80a853cbdae98884a5d434082a21ca96b5 Zwischenstand diff -r 00097c80a853 -r bf2ac5df0063 cut.txt --- a/cut.txt Sat May 02 23:09:00 2015 +0200 +++ b/cut.txt Sun May 03 18:08:00 2015 +0200 @@ -1,8 +1,9 @@ -Das Werkzeugkaestle +Das Werkzeugkaestle, #1 -#1: cut - cut out selected fields of each line of a file ---------------------------------------------------------- -markus schnalke, 2015-05 +cut - cut out selected fields of each line of a file +---------------------------------------------------- +markus schnalke +2015-05 Cut ist ein klassisches Programm im Unix-Werkzeugkasten. @@ -35,7 +36,7 @@ Mit cut lassen sich aber auch Strings kuerzen. - echo "$long" | cut -c -20 + $ echo "$long" | cut -c -20 Dieser Befehl gibt die ersten maximal 20 Zeichen (jeder Zeile) von `$long' aus. @@ -53,7 +54,7 @@ Newline-Zeichen stehen haben (und den Rest stillschweigend ignorieren), dann macht man das mit: - cut -b -500 + $ cut -b -500 Den Rest kann man sich mit `cut -b 501-' einfangen. Diese Funktion ist insbesondere fuer POSIX wichtig, da so sicher @@ -70,7 +71,7 @@ Extraktion von Information aus der passwd-Datei. So z.B. der Username, die User-ID und das Homeverzeichnis: - cut -d: -f1,3,6 /etc/passwd + $ cut -d: -f1,3,6 /etc/passwd (Die Argumente fuer die Optionen koennen bei cut uebrigens direkt angehaengt oder mit Whitespace abgetrennt folgen.) @@ -114,8 +115,9 @@ Aber werfen wir doch einen Blick auf die BSD-Linie: Dort ist mein fruehester Fund ein cut.c mit dem Datum 1986-11-07 im Code der -Spezialversion 4.3BSD-UWisc, die im Januar 1987 veroeffentlicht -wurde. +Spezialversion 4.3BSD-UWisc, +[ http://gunkies.org/wiki/4.3_BSD_NFS_Wisconsin_Unix +die im Januar 1987 veroeffentlicht wurde. [ http://minnie.tuhs.org/cgi-bin/utree.pl?file=4.3BSD-UWisc/src/usr.bin/cut Die Datei unterscheidet sich nur minimal von der aus System III. Im bekannteren 4.3BSD-Tahoe (1988) taucht cut aber nicht auf. @@ -225,7 +227,48 @@ +B-) wc -lc cut.c* | sort -n + 123 2966 cut.c__system_iii.1980-04-11 + 125 3038 cut.c__4.3bsd-uwisc.1986-11-07 + 256 5715 cut.c__4.3bsd-reno.1990-06-25 + 270 6545 cut.c__netbsd.1993-03-21 + 296 6920 cut.c__freebsd.1994-05-27 + 306 7500 cut.c__netbsd.2014-02-03 * + 479 10961 cut.c__freebsd.2012-11-24 * + 586 14175 cut.c__gnu.1992-11-08 * + 830 23167 cut.c__gnu.2015-05-01 * + 3271 80987 total + +B-) c_count cut.c* | sort -n +Total: +116 cut.c__system_iii.1980-04-11 +118 cut.c__4.3bsd-uwisc.1986-11-07 +200 cut.c__4.3bsd-reno.1990-06-25 +200 cut.c__netbsd.1993-03-21 +224 cut.c__freebsd.1994-05-27 +232 cut.c__netbsd.2014-02-03 * +382 cut.c__gnu.1992-11-08 * +391 cut.c__freebsd.2012-11-24 * +588 cut.c__gnu.2015-05-01 * +2451 + +(* == version hat -b) + + cut(1) in Version 8 Unix ``In data base parlance, it projects a relation.'' + + + +Autoreninfo + +Markus Schnalke interessiert sich fuer die Hintergruende +von Unix und seinen Werkzeugen. Fuer die Erarbeitung dieses +Textes wurde er regelrecht zum Historiker. + + +Lizenz +CC0 (und kann damit auch unter CC BY-SA 4.0 Unported +veroeffentlicht werden)