From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 29114 invoked from network); 31 Jul 2021 17:39:14 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 31 Jul 2021 17:39:14 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 037C79CA4B; Sun, 1 Aug 2021 03:39:12 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id E4A1E9C9B2; Sun, 1 Aug 2021 03:38:46 +1000 (AEST) Received: by minnie.tuhs.org (Postfix, from userid 112) id 3F8889C9B2; Sun, 1 Aug 2021 03:38:43 +1000 (AEST) X-Greylist: delayed 473 seconds by postgrey-1.36 at minnie.tuhs.org; Sun, 01 Aug 2021 03:38:42 AEST Received: from h2.fbrelay.privateemail.com (h2.fbrelay.privateemail.com [131.153.2.43]) by minnie.tuhs.org (Postfix) with ESMTPS id 5F0499C9AF for ; Sun, 1 Aug 2021 03:38:42 +1000 (AEST) Received: from MTA-14-3.privateemail.com (mta-14-1.privateemail.com [198.54.122.108]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by h1.fbrelay.privateemail.com (Postfix) with ESMTPS id 22A92803DA for ; Sat, 31 Jul 2021 13:30:48 -0400 (EDT) Received: from mta-14.privateemail.com (localhost [127.0.0.1]) by mta-14.privateemail.com (Postfix) with ESMTP id B3D7C18000AC; Sat, 31 Jul 2021 13:30:46 -0400 (EDT) Received: from localhost (unknown [10.20.151.201]) by mta-14.privateemail.com (Postfix) with ESMTPA id 9631C180022F; Sat, 31 Jul 2021 13:30:45 -0400 (EDT) Date: Sat, 31 Jul 2021 10:30:18 -0700 From: Anthony Martin To: Michael Siegel Message-ID: References: <20210731142533.69caf929@moon> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210731142533.69caf929@moon> X-Virus-Scanned: ClamAV using ClamSMTP Subject: Re: [TUHS] Systematic approach to command-line interfaces X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: tuhs@minnie.tuhs.org Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" Michael Siegel once said: > So, I've prepared a bit of a write-up, pondering on the pros and cons > of two different ways of having task-specific tool sets > (non-hierarchical command sets vs. sub-commands) that is available at > > https://www.msiism.org/files/doc/unix-like_command-line_interfaces.html > > I tend to think the sub-command approach is better. But I'm neither a UI > nor a Unix expert and have no formal training in computer things. So, I > thought this would be a good place to ask for comment (and get some > historical perspective). You're missing the approach taken in Plan 9 (and 10th edition Unix): put related commands in a directory and use a shell that doesn't restrict the first argument of a command to a single path element. This lets you execute commands like: auth/as disk/prep git/rebase ip/ping ndb/dns upas/send without having a prefix on every command name or single large binaries with every command linked in as subcommands. Cheers, Anthony