* [COFF] 21st Century Equivalent to 'learn'? @ 2020-03-04 3:49 wkt 2020-03-04 6:23 ` spedraja ` (3 more replies) 0 siblings, 4 replies; 17+ messages in thread From: wkt @ 2020-03-04 3:49 UTC (permalink / raw) Hi all, I'm looking for an interactive tool to help students learn the Unix/Linux command line. I still remember the "learn" tool. Is there an equivalent for current systems? I have tried to forward-port the old learn sources to current Linux but my patience ran out :-) Thanks in advance for any tips/pointers. Cheers, Warren ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-04 3:49 [COFF] 21st Century Equivalent to 'learn'? wkt @ 2020-03-04 6:23 ` spedraja 2020-03-04 6:55 ` thomas.paulsen 2020-03-04 9:53 ` wkt 2020-03-04 19:31 ` dave ` (2 subsequent siblings) 3 siblings, 2 replies; 17+ messages in thread From: spedraja @ 2020-03-04 6:23 UTC (permalink / raw) [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 959 bytes --] Hi/Morning from my location. Are the sources of 'learn' available? I doubt I could help but just in case... Have a Good Day. Cordiales saludos / Best Regards / Salutations / Freundliche Grüße ----- Sergio Pedraja El mié., 4 mar. 2020 4:49, Warren Toomey <wkt at tuhs.org> escribió: > Hi all, I'm looking for an interactive tool to help students learn the > Unix/Linux command line. I still remember the "learn" tool. Is there an > equivalent for current systems? > > I have tried to forward-port the old learn sources to current Linux but > my patience ran out :-) > > Thanks in advance for any tips/pointers. > > Cheers, Warren > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20200304/2755f720/attachment.html> ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-04 6:23 ` spedraja @ 2020-03-04 6:55 ` thomas.paulsen 2020-03-04 9:53 ` wkt 1 sibling, 0 replies; 17+ messages in thread From: thomas.paulsen @ 2020-03-04 6:55 UTC (permalink / raw) An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20200304/edf1e835/attachment.html> ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-04 6:23 ` spedraja 2020-03-04 6:55 ` thomas.paulsen @ 2020-03-04 9:53 ` wkt 1 sibling, 0 replies; 17+ messages in thread From: wkt @ 2020-03-04 9:53 UTC (permalink / raw) On Wed, Mar 04, 2020 at 07:23:27AM +0100, Sergio Pedraja wrote: > Are the sources of 'learn' available? I doubt I could help but just in > case... Yes, online here: https://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/learn https://minnie.tuhs.org/cgi-bin/utree.pl?file=OpenBSD-4.6/usr.bin/learn and also in several of the 4BSD versions. Cheers, Warren ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-04 3:49 [COFF] 21st Century Equivalent to 'learn'? wkt 2020-03-04 6:23 ` spedraja @ 2020-03-04 19:31 ` dave 2020-03-05 1:00 ` wkt 2020-03-12 20:53 ` rtomek 3 siblings, 0 replies; 17+ messages in thread From: dave @ 2020-03-04 19:31 UTC (permalink / raw) On Wed, 4 Mar 2020, Warren Toomey wrote: > Hi all, I'm looking for an interactive tool to help students learn the > Unix/Linux command line. I still remember the "learn" tool. Is there an > equivalent for current systems? Knowing Penguin/OS bloatware there's probably a multi-GB GUI that will do the same job as will a simple C program and a structured directory hierarchy... Or perhaps there's always "info" :-) -- Dave ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-04 3:49 [COFF] 21st Century Equivalent to 'learn'? wkt 2020-03-04 6:23 ` spedraja 2020-03-04 19:31 ` dave @ 2020-03-05 1:00 ` wkt 2020-03-05 12:43 ` jpl.jpl 2020-03-06 3:39 ` bakul 2020-03-12 20:53 ` rtomek 3 siblings, 2 replies; 17+ messages in thread From: wkt @ 2020-03-05 1:00 UTC (permalink / raw) On Wed, Mar 04, 2020 at 01:49:25PM +1000, Warren Toomey wrote: > Hi all, I'm looking for an interactive tool to help students learn the > Unix/Linux command line. I still remember the "learn" tool. Is there an > equivalent for current systems? > Thanks in advance for any tips/pointers. I've made a start with a new version of a "learn"ing tool. It uses tmux to have a pane of instructions and a pane where the user enters commands. Link to the repo is: https://github.com/DoctorWkt/tlearn/blob/master/tlearn This is all protoyping at present. I'd love any ideas & suggestions. Cheers, Warren ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-05 1:00 ` wkt @ 2020-03-05 12:43 ` jpl.jpl 2020-03-05 21:23 ` arrigo 2020-03-06 9:10 ` akosela 2020-03-06 3:39 ` bakul 1 sibling, 2 replies; 17+ messages in thread From: jpl.jpl @ 2020-03-05 12:43 UTC (permalink / raw) Marc Rochkind used to recommend reading the entire UNIX manual each year. That was good advice in the late 70's, but it would be hopelessly impractical now, quite beyond the lack of a manual to read. There are just too many commands and libraries. A valuable service would be to identify the most useful tools. Those in the old manuals would be an interesting starting point, but I can't remember when I last used "ar" command, which I mostly used to pack multiple files into a single one to save inodes and wasted file system space, neither of which matter any more. If there were a corpus of contemporary shell scripts, identifying the most used commands could be interesting. Perl's CPAN (comprehensive perl archive network) could be a corpus of scripts from which the most commonly used system calls could be extracted. On Wed, Mar 4, 2020 at 8:00 PM Warren Toomey <wkt at tuhs.org> wrote: > On Wed, Mar 04, 2020 at 01:49:25PM +1000, Warren Toomey wrote: > > Hi all, I'm looking for an interactive tool to help students learn the > > Unix/Linux command line. I still remember the "learn" tool. Is there an > > equivalent for current systems? > > Thanks in advance for any tips/pointers. > > I've made a start with a new version of a "learn"ing tool. It uses tmux > to have a pane of instructions and a pane where the user enters commands. > Link to the repo is: > https://github.com/DoctorWkt/tlearn/blob/master/tlearn > > This is all protoyping at present. I'd love any ideas & suggestions. > > Cheers, Warren > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20200305/41c2c99c/attachment.html> ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-05 12:43 ` jpl.jpl @ 2020-03-05 21:23 ` arrigo 2020-03-06 3:14 ` grog 2020-03-06 9:10 ` akosela 1 sibling, 1 reply; 17+ messages in thread From: arrigo @ 2020-03-05 21:23 UTC (permalink / raw) [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: text/plain, Size: 285 bytes --] Someone (sorry, lost the message by deleting it and discovered I don't archive COFF...) mentioned that "learn" is still around in BSDs but I didn't find it in either FreeBSD or OpenBSD (base or packages). Where should I look? Or was it a "compile it off 4.4BSD”? Cheers, Arrigo ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-05 21:23 ` arrigo @ 2020-03-06 3:14 ` grog 0 siblings, 0 replies; 17+ messages in thread From: grog @ 2020-03-06 3:14 UTC (permalink / raw) On Thursday, 5 March 2020 at 22:23:31 +0100, Arrigo Triulzi wrote: > Someone (sorry, lost the message by deleting it and discovered I > don't archive COFF...) mentioned that "learn" is still around in BSDs > but I didn't find it in either FreeBSD or OpenBSD (base or > packages). Where should I look? Or was it a "compile it off > 4.4BSD???? Interesting. I took a quick look around my (FreeBSD) machine and located a directory /home/src/OpenBSD/3.0-RELEASE/usr.bin/learn/, dating from October 2001. It no longer compiles with clang, but a quick attempt with gcc and without (clang) default flags at least produces object files. I've put a tarball at http://www.lemis.com/grog/src/learn.tar Greg -- Sent from my desktop computer. Finger grog at lemis.com for PGP public key. See complete headers for address and phone numbers. This message is digitally signed. If your Microsoft mail program reports problems, please read http://lemis.com/broken-MUA -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 163 bytes Desc: not available URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20200306/a45749e4/attachment.sig> ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-05 12:43 ` jpl.jpl 2020-03-05 21:23 ` arrigo @ 2020-03-06 9:10 ` akosela 2020-03-07 21:50 ` dave 1 sibling, 1 reply; 17+ messages in thread From: akosela @ 2020-03-06 9:10 UTC (permalink / raw) "John P. Linderman" <jpl.jpl at gmail.com> wrote: > Marc Rochkind used to recommend reading the entire UNIX manual each year. > That was good advice in the late 70's, but it would be hopelessly > impractical now, quite beyond the lack of a manual to read. There are just > too many commands and libraries. A valuable service would be to identify > the most useful tools. Those in the old manuals would be an interesting > starting point, but I can't remember when I last used "ar" command, which I > mostly used to pack multiple files into a single one to save inodes and > wasted file system space, neither of which matter any more. If there were a > corpus of contemporary shell scripts, identifying the most used commands > could be interesting. Perl's CPAN (comprehensive perl archive network) > could be a corpus of scripts from which the most commonly used system calls > could be extracted. I compiled such a list a couple of years ago. Most of those commands should be available on every major flavor of Unix and I consider them "the core Unix tools". This is not a final list, but commands I personally use most often. Certainly you can't call yourself a Unix user if you have never consulted their manuals. as, at, awk, basename, bc, cal, cat, cc, chmod, chown, cp, cut, date, dc, dd, df, diff, du, env, expr, false, find, fmt, free, gdb, grep, gzip, head, hexdump, id, iostat, join, ld, ldd, less, ln, ls, man, md5sum, mkdir, mkfifo, mv, nice, nl, nohup, od, patch, passwd, paste, pgrep, pkill, ps, pstree, rev, rm, rmdir, script, sed, seq, sh, sha256sum, shuf, shutdown, size, sleep, sort, split, stat, strip, strings, stty, su, sum, sysctl, tac, tar, tail, tee, top, touch, tr, tree, uname, uniq, uptime, vmstat, w, wc, whatis, whereis, which, who, whoami, xargs, yes I specifically excluded all shell builtin commands and core network related tools like ping(8). It is interesting to note that still most of them come from the earliest Unix versions. It shows the ingenuity and beauty of the original design. --Andy ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-06 9:10 ` akosela @ 2020-03-07 21:50 ` dave 2020-03-07 22:05 ` clemc 0 siblings, 1 reply; 17+ messages in thread From: dave @ 2020-03-07 21:50 UTC (permalink / raw) On Fri, 6 Mar 2020, Andy Kosela wrote: [ List elided ] What do you have against "cpio"? Admittedly it's harder to use than "tar" but I still come across it from time to time; also, "tar" had a bug at one time whereby it did not handle an empty directory, and I think there was a problem with devices/sockets as well. Heck, I still have "cpio -adplumv" burned into my retinas. -- Dave ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-07 21:50 ` dave @ 2020-03-07 22:05 ` clemc 2020-03-07 23:02 ` dfawcus+lists-coff 0 siblings, 1 reply; 17+ messages in thread From: clemc @ 2020-03-07 22:05 UTC (permalink / raw) Dave -- please, let's not re-live 'tar-wars' -- it's why the POSIX command is called 'pax' - God Bless USENIX for funding the original implementation and putting it in the public domain. - tar was research/BSD and worked best when you chdir to some directory and were working interactively and was the logic follow on to the earlier stp and tp. It was ASCII and after the binary issues of tp was a welcome relief. The format was also extensible (thanks to bug in the original implementation). - cpio was USG and worked best with a find(1) script/automation - which was good for controlled distributions but poor for interactive use. It was also binary originally (with PDP-11isms builtin) The real issue in the end was cpio being part of System III many/most universities did not have it originally, so the tp/stp was what we used, which was replaced by tar. pax has a user interface that work either ways, and the USENIX public implementation can read both tape formats.. Clem PS At Masscomp, I once wrote "car" but no one ever wrote "tpio". On Sat, Mar 7, 2020 at 4:50 PM Dave Horsfall <dave at horsfall.org> wrote: > On Fri, 6 Mar 2020, Andy Kosela wrote: > > [ List elided ] > > What do you have against "cpio"? Admittedly it's harder to use than "tar" > but I still come across it from time to time; also, "tar" had a bug at one > time whereby it did not handle an empty directory, and I think there was a > problem with devices/sockets as well. > > Heck, I still have "cpio -adplumv" burned into my retinas. > > -- Dave > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20200307/ed640139/attachment.html> ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-07 22:05 ` clemc @ 2020-03-07 23:02 ` dfawcus+lists-coff 2020-03-08 0:02 ` clemc 0 siblings, 1 reply; 17+ messages in thread From: dfawcus+lists-coff @ 2020-03-07 23:02 UTC (permalink / raw) On Sat, Mar 07, 2020 at 05:05:52PM -0500, Clem Cole wrote: > Dave -- please, let's not re-live 'tar-wars' -- it's why the POSIX > command is called 'pax' - God Bless USENIX for funding the original > implementation and putting it in the public domain. [snip] > pax has a user interface that work either ways, and the USENIX public > implementation can read both tape formats.. > > Clem > > PS At Masscomp, I once wrote "car" but no one ever wrote "tpio". and now we have xar (https://en.wikipedia.org/wiki/Xar_%28archiver%29), since obviously everything can be improved by a dose of XML ! ;-) DF ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-07 23:02 ` dfawcus+lists-coff @ 2020-03-08 0:02 ` clemc 0 siblings, 0 replies; 17+ messages in thread From: clemc @ 2020-03-08 0:02 UTC (permalink / raw) It's worse than just being XML. The whole idea of tar and cpio was to fix the problem tp/stp had of putting the catalog at the front of the tape (archive) and thread the directory through out it. Sigh... if you don't learn from history, you are destined to repeat iot. On Sat, Mar 7, 2020 at 6:12 PM Derek Fawcus < dfawcus+lists-coff at employees.org> wrote: > On Sat, Mar 07, 2020 at 05:05:52PM -0500, Clem Cole wrote: > > Dave -- please, let's not re-live 'tar-wars' -- it's why the POSIX > > command is called 'pax' - God Bless USENIX for funding the original > > implementation and putting it in the public domain. > > [snip] > > > pax has a user interface that work either ways, and the USENIX public > > implementation can read both tape formats.. > > > > Clem > > > > PS At Masscomp, I once wrote "car" but no one ever wrote "tpio". > > and now we have xar (https://en.wikipedia.org/wiki/Xar_%28archiver%29), > since obviously everything can be improved by a dose of XML ! ;-) > > DF > _______________________________________________ > COFF mailing list > COFF at minnie.tuhs.org > https://minnie.tuhs.org/cgi-bin/mailman/listinfo/coff > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://minnie.tuhs.org/pipermail/coff/attachments/20200307/5810aaf3/attachment.html> ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-05 1:00 ` wkt 2020-03-05 12:43 ` jpl.jpl @ 2020-03-06 3:39 ` bakul 1 sibling, 0 replies; 17+ messages in thread From: bakul @ 2020-03-06 3:39 UTC (permalink / raw) On Mar 4, 2020, at 5:00 PM, Warren Toomey <wkt at tuhs.org> wrote: > > On Wed, Mar 04, 2020 at 01:49:25PM +1000, Warren Toomey wrote: >> Hi all, I'm looking for an interactive tool to help students learn the >> Unix/Linux command line. I still remember the "learn" tool. Is there an >> equivalent for current systems? >> Thanks in advance for any tips/pointers. > > I've made a start with a new version of a "learn"ing tool. It uses tmux > to have a pane of instructions and a pane where the user enters commands. > Link to the repo is: https://github.com/DoctorWkt/tlearn/blob/master/tlearn > > This is all protoyping at present. I'd love any ideas & suggestions. I am tempted to suggest something like a Jupyter notebook, sort of a manpage where examples can be modified or run interactively. That is, even the learning instructions can become manpages that can be referenced later even. May be some of that can become new intro! ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? 2020-03-04 3:49 [COFF] 21st Century Equivalent to 'learn'? wkt ` (2 preceding siblings ...) 2020-03-05 1:00 ` wkt @ 2020-03-12 20:53 ` rtomek 3 siblings, 0 replies; 17+ messages in thread From: rtomek @ 2020-03-12 20:53 UTC (permalink / raw) On Wed, Mar 04, 2020 at 01:49:25PM +1000, Warren Toomey wrote: > Hi all, I'm looking for an interactive tool to help students learn the > Unix/Linux command line. I still remember the "learn" tool. Is there an > equivalent for current systems? > > I have tried to forward-port the old learn sources to current Linux but > my patience ran out :-) > > Thanks in advance for any tips/pointers. I am not sure what kind are your students, but back when I was one (and not in US, so my approach might not apply) there was some kind of minimum required from a student to pass as "knows Unix". Stuff like "show directory contents", "make directory", move around via cd and pwd, chmod, some editing, write a C program and compile (CS students were meant to program). It is possible that knowledge of /usr/bin/make was optional. /bin/tar was definitely optional. Majority (i.e. "all") would not give a hoot about some "yoo-neecs". DOS and Windows 3.1 ruled in businesses, where the majority expected to find themselves after graduation. Windows 3x was all the rage. It had multitasking! And Novell networks, for the more ambitious. I learned more than minimum, because I actually wanted to _use_ the facilities. Which means, solving a problem by writing some code (shell script, makefile, C-file, awk). No need to convince me or make it easy by some "pupil shell". I never expected this, I only expected good manual or Readme. BTW, I also perceived tools available on Unix as superior to anything I could lay my hands on, including AmigaOS (which had number of similar tools, but poor multitasking sometimes resulted in frozen computer). Maybe VMS could compete, but was not so easy to have account on it. So I falsely assumed one should choose the best tools and now I am on this God-forgotten mailing list. The list composed by Andy Kosela seems very plausible to my eyes, but I am afraid the majority of modern students likewise are not going to give a hoot. Perhaps you could make some of them care more if you gave them a kind of contest. Bare bones system install in virtual machine, no X, no compiler, no perl, but yes vim and yes emacs (and maybe some others, joe/jed?). Solve a problem? Small database a'la rolodex? For the rest, just demonstrate they can mkdir/ls/cd/chmod etc and let them go. Solving Project Euler tasks with shell scripts (or awk, when applicable). A bit harder - solve the tasks and make an uber-script which lists available solutions (say, it will find there are solutions for problem 3, 5 and 9 and list them) and can display an answer for problem by running a script. Student writes a solution-script and uber-script auto detects new file and can use it without need to be edited. If the solutions dir is empty, it will say no solutions found. Etc. I suppose some folks will be delighted by doing such things. Other will be kicking and screaming - no need to give them bad memories of Unix. Rather, let them see others who achieve. I am not sure, maybe I would be a very bad teacher. -- Regards, Tomasz Rola -- ** A C programmer asked whether computer had Buddha's nature. ** ** As the answer, master did "rm -rif" on the programmer's home ** ** directory. And then the C programmer became enlightened... ** ** ** ** Tomasz Rola mailto:tomasz_rola at bigfoot.com ** ^ permalink raw reply [flat|nested] 17+ messages in thread
* [COFF] 21st Century Equivalent to 'learn'? @ 2020-03-08 3:39 rudi.j.blom 0 siblings, 0 replies; 17+ messages in thread From: rudi.j.blom @ 2020-03-08 3:39 UTC (permalink / raw) I started using 'cpio' in the 80tish and still use it, especially transferring files and complete directories between various UNIX versions like SCOUNIX 3.2V4.2, Tru64, HP-UX 11i.. The main option I use with cpio is (of course) "-c" and only occasionally "-u" ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2020-03-12 20:53 UTC | newest] Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-03-04 3:49 [COFF] 21st Century Equivalent to 'learn'? wkt 2020-03-04 6:23 ` spedraja 2020-03-04 6:55 ` thomas.paulsen 2020-03-04 9:53 ` wkt 2020-03-04 19:31 ` dave 2020-03-05 1:00 ` wkt 2020-03-05 12:43 ` jpl.jpl 2020-03-05 21:23 ` arrigo 2020-03-06 3:14 ` grog 2020-03-06 9:10 ` akosela 2020-03-07 21:50 ` dave 2020-03-07 22:05 ` clemc 2020-03-07 23:02 ` dfawcus+lists-coff 2020-03-08 0:02 ` clemc 2020-03-06 3:39 ` bakul 2020-03-12 20:53 ` rtomek 2020-03-08 3:39 rudi.j.blom
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).