KornShell - ArchWiki

Jump to content

This article or section is a candidate for merging with Command-line shell.

Notes: Most of this page is duplicating what already exists on the generic page. (Discuss in Talk:KornShell)

The KornShell (ksh) is a standard/restricted command and programming language developed by AT&T.

## Installation

First, install an implementation from the official repositories:

- AT&T Korn shell — Official AT&T version.

  http://www.kornshell.com/ || ksh

More implementations are provided in the Arch User Repository:

- loksh — A Linux port of OpenBSD's ksh

  https://github.com/dimkr/loksh || loksh-gitAUR

- OpenBSDs Korn Shell — Porting of the OpenBSD version of ksh to GNU/Linux.

  https://github.com/ibara/oksh/ || okshAUR

- MirBSD™ Korn Shell — Enhanced version of the public domain ksh.

  http://www.mirbsd.org/mksh.htm || mkshAUR

## Making a ksh implementation your default login shell

Change the default shell for the current user:

    $ chsh -s /bin/ksh_implementation

## Uninstallation

Change the default shell before removing the ksh packages.

Warning: Failure to follow the below procedure may result in users no longer having access to a working shell.

Run following command:

    $ chsh -s /bin/bash user

Use it for every user with m/ksh set as their login shell (including root if needed). When completed, the mkshAUR package can be removed.

Alternatively, change the default shell back to Bash by editing `/etc/passwd` as root.

Warning: It is strongly recommended to use `vipw` when editing `/etc/passwd` as it helps prevent invalid entries and/or syntax errors.

For example, change the following:

    username:x:1000:1000:Full Name,,,:/home/username:/bin/mksh

To this:

    username:x:1000:1000:Full Name,,,:/home/username:/bin/bash

## See Also

- mksh - The MirBSD Korn Shell

Category:

- Command-line shells

Hidden category:

- Pages or sections flagged with Template:Merge