P.S., the body of the parent #toot was created by a simple #shell #function:

function apod { #Today's NASA Astronomy Picture of the Day info-fetcher curl -sL 'https://apod.nasa.gov/apod/archivepix.html' \ |grep -m1 "[0-9][0-9]:" \ |sed 's/^/Date: /; s|: *<a href="|\nURL: https://apod.nasa.gov/apod/|; s/">/\nTitle: /; s/<.*$//' echo echo "#NASA #Astronomy #PictureOfTheDay" }

#bash #ksh #mksh #shellScripting #unix #UnixShell #WebScraping #Scraping #HTML

oh MIPS RISC/os on MAME (MIPS r2000 emulation)
https://virtuallyfun.com/2025/11/10/mips-risc-os-on-mame/

and HP-UX 11i v1 32bit on QEMU PA-RISC
https://virtuallyfun.com/2025/10/26/installing-hp-ux-11i-v1-11-11-32bit-pa1-1-on-qemu-10-1/

maybe I need to try compiling #mksh on them as well. #retrocomputing
MIPS RISC/os on MAME | Virtually Fun

oh. Caldera OpenLinux's bash 1.14.7(1) segfaults when running #mksh Build.sh's genopt. Fortunately it has /bin/ksh(which is PD KSH v5.2.7) which runs it fine.

#Poll: Curious about people's attitudes towards shell scripting.

Two part question:

  • Are you a DEVeloper (or working in a development-heavy role), OTHER-IT worker (such as a sysadmin, architect, anything in a non-development-heavy role), or NON-IT (accountant, doctor, whatever)
  • Do you HATE shell scripting, are you INDIFferent towards (or ignorant of) shell scripting, or do you LOVE it?
  • #Unix #UnixShell #ShellScript #ShellScripting #POSIX #PosixShell #sh #bash #zsh #csh #tcsh #ksh #pdksh #oksh #mksh

    dev - hate
    10.4%
    dev - indif
    15.6%
    dev - love
    22.9%
    other-it - hate
    2.1%
    other-it - indif
    9.4%
    other-it - love
    24%
    non-it - hate
    1%
    non-it - indif
    7.3%
    non-it - love
    7.3%
    Poll ended at .
    @lanodan @simontatham I actually type cd $PWD + Tab + Enter, as #mksh tab-completes shell parameters in backslash-escaped form (so no splitting), which is easy to type (right tiny finger lies on shift while I press $WD with left hand and P with right pointing finger)

    I've probably tooted about this before, but I don't know why this isn't standard.

    It's just so obvious, at least to me. ;)

    ~ $ type mcd mcd is a function mcd () { [[ -n $1 ]] && mkdir "$1" && cd "$1" }

    #shell #UnixShell #ShellScripting #sh #bash #ksh #mksh

    @fbfortune depends on the shell, in #mksh use Esc+Ctrl-L instead.

    The command clear will also do, or even print \\033c (which does a full reset; on a hardware DEC VT420 it will simulate a power cycle with its long self-test, so be careful).

    However, all of these don’t reset the tty state, so you may need to stty sane additionally.

    Process Substitution is hella neat.

    $ diff important-data.txt <(clipo |sort -u)

    (Of course #mksh has it as well ;)

    Process Substitution (Bash Reference Manual)

    Process Substitution (Bash Reference Manual)

    @regehr @miodvallat incidentally, #POSIX requires that crash for sh so mksh does it in the lksh binary (uses long for arithmetic as POSIX demands) as well.

    The standard #mksh language provides 32-bit arithmetic with guaranteed 2s complement, wraparound, shr and sar both defined, negative modulus defined, etc. (and to get there, much cursing at C’s signed integers led me there eventually).

    -Wtype-limits in G++ 5.5 is too overeager · MirBSD/int@e522a9b

    CVS export of mbsdint.h and its testsuite (publish-only, no PRs (use IRC/eMail), may receive force pushes) - -Wtype-limits in G++ 5.5 is too overeager · MirBSD/int@e522a9b

    GitHub