6 ms·
A Unix Shell poster from 1983
- crististm 8y agoWas Fortran called F77 back then?
- anticensor 8y agoF77 is the 1977 revision of Fortran standard, which brought major new features.
- cbcoutinho 8y agoNo the language was called FORTRAN back then, and the executable compiler was f77
- zachrose 8y agoI would buy a reproduction in a heartbeat.
- ToFab123 8y agoIn the comments on Twitter someone said "This inspired Debian". What's that story about?
- usrme 8y agoHere is a larger version that isn't a photo: https://i.imgur.com/iicvkdp.png https://i.imgur.com/iicvkdp.png
- deleted 8y ago[deleted]
- nixpulvis 8y agoFunny seeing this pop up as I've spent this whole weekend working on a Rust POSIX shell: https://github.com/nixpulvis/oursh https://github.com/nixpulvis/oursh. `&` is my next thing to implement.
- fredsted 8y agoInteresting that `pr` and `troff` still exists on OS X Mojave!
- saagarjha 8y agopr is part of SUS, which macOS must implement to remain called "Unix".
- OskarS 8y ago`pr` is part of the POSIX standard, so of course it still hangs around! Can't remove a thing like that! I don't think `troff` is part of POSIX, but since it used to be (still is?) the standard tool for typesetting man pages, it's not so surprising it's still around.
- pjc50 8y agoMan pages are typeset with nroff to the console and troff to the printer. Yes, you can print manpages, and they turn out quite nice: try "man -t bash > bash.ps" to produce a postscript file which can be printed or converted to PDF etc.
- xelxebar 8y agoOkay. You kind of blew my mind. My `man` command doesn't seem to have the `-t` switch, but I can do this MANPAGER=mupdf man -T pdf man and, bam! I'm reading a pdf man page for `man`. On my system `man` is symlinked to `mandoc` and I've apparently got the latest version from here: http://mandoc.bsd.lv/ http://mandoc.bsd.lv/ Better yet, the `-T` switch seems to take a decent selection of options, even markdown and html!
- pmoriarty 8y agoI was expecting this one instead: https://i.imgur.com/qMN1are.jpg https://i.imgur.com/qMN1are.jpg
- bitofhope 8y ago>@ kill line I think I saw this in _The Unix Programming Environment_ by Kernighan and Pike. @ doesn't seem to do anything using various shells on any systems I can quickly think of trying: * /bin/sh (dash) on Linux on AMD64 * zsh on Linux on AMD64, NetBSD/amd64 (Xen domU), NetBSD/sparc64, Solaris 10 on Sparc64 * bash on Linux on AMD64 * /bin/sh on NetBSD/amd64 (Xen domU), NetBSD/sparc64, Solaris 10 on Sparc64, Tru64 V5.1 2650 on Alpha * pdksh on OpenBSD on AMD64 None of those seemed to treat @ as anything special so I decided to go older, but… * /bin/csh and /bin/sh on 4.3BSD on simh-vax780 …equally bust. Maybe I'm remembering the syntax wrong? I don't have the book with me now. Otherwise, wonder when this feature was removed? Probably after video terminals with erasable characters became commonplace.
- eponeponepon 8y agoI'm fairly sure that '@' is a character that's wandered around keyboards and character sets over the years - could it be that the command is a different character these days?
- nils-m-holm 8y agoThe @ character did kill a line back in the days where you typed your commands on a TTY -- that is a real TTY that printed your commands on a roll of paper. On a modern Unix you would use control-U.
- self 8y agoIt's from the System V Interface Definition standard. See page 625 in http://www.sco.com/developers/devspecs/vol1a.pdf http://www.sco.com/developers/devspecs/vol1a.pdf > During input, erase and kill processing is normally done. The ERASE character (by default, the # character) erases the last character typed. The WERASE character (CRTL-W) erases the last ‘‘word’’ typed in the current input line (but not any preceding spaces or tabs). A ‘‘word’’ is defined as a sequence of non-blank characters, with tabs counted as blanks. Neither ERASE nor WERASE will erase beyond the beginning of the line. The KILL character (by default, the @ character) kills (deletes) the entire input line, and optionally outputs a newline character. All these characters operate on a key stroke basis, independent of any backspacing or tabbing that may have been done. The REPRINT character (CTRL-R) prints a newline followed by all characters that have not been read. Reprinting also occurs automatically if characters that would normally be erased from the screen are fouled by program output. The characters are reprinted as if they were being echoed; consequencely, if ECHO is not set, they are not printed.
- TeMPOraL 8y agoSo the "improper" use of cat, for printing files on screen, dates back to at least 1983. I consider it legitimized.
- dijit 8y agoCat is fine for reading a file. It’s when you ‘cat <file> | grep <word>‘ that it becomes improper use.
- JdeBP 8y agoTeMPOraL got the adjective wrong. The correct adjective is "useless". * http://porkmail.org/era/unix/award.html http://porkmail.org/era/unix/award.html
- oblio 8y agoI never liked this "improper" moniker. If you're writing a quick script it's way more convenient and readable to just put the input where you'd expect it, at the start of the pipeline, as its own thing. It's a bit more inefficient, but you don't go mucking around with file input parameters for the commands later on in the pipeline, especially as you're moving them around and changing them.
- JdeBP 8y agoThe challenge here is to identify the 1983 Unix, or whether it is indeed one single Unix. It has the old line discipline defaults for the eof, kill, and interrupt special characters. But it also has a job control shell and the susp special character. It does not mention either Mail or mailx. login is apparently the shell built in that overlays the current shell, and there are both vi and ex for the visual and line mode editors. But there's a help command, too.
- bitofhope 8y agoSo, in 1983 I think the possible variants are 4.2BSD, SunOS 1.0, Xenix 3.0, SVR1. Someone in a sibling thread mentioned the kill line characters were already replaced around 2BSD. SVR1 had vi and ex, too. `lpr` is BSDian, I think, but maybe System V included that too as an alternative. It's hard to tell, really. At the time SVR1 was out and included fairly many bits of BSD in it, as did Xenix. The only thing I can really say is that SunOS is unlikely, since it was designed for workstations with video monitors from day 1 and the kill characters seem anachronistic since erasing was a standard feature in terminals already and default behavior in current BSD.
- justinpw 8y agoWhere is "yes"?