guides
http://9front.org/
http://fqa.9front.org/fqa8.html
gemini://9til.de/
https://wiki.xxiivv.com/site/plan9_c.html
https://pspodcasting.net/dan/blog/2019/plan9_desktop.html
software
rio
The window manager.
acme
The classic plan9 text editor.
plan9 rc
The plan9 shell.
https://git.sr.ht/~ft/fontsel
Simple font selector for Plan 9.
https://git.sr.ht/~ft/zuke
A music player for Plan 9.
https://git.sr.ht/~ft/treason
A video player for 9front.
https://git.sr.ht/~ft/flite
Text to speech.
https://git.sr.ht/~ft/microui
A tiny, portable, immediate-mode UI library for Plan 9.
https://git.sr.ht/~ft/gemnine
Gemini browser for Plan 9.
https://git.sr.ht/~ft/ext4srv
Ext[2-4] file system for Plan 9. Read and write.
unix to plan9
UNIX Plan 9 from Bell Labs
`command` `{ command }
.profile $home/lib/profile
^C (Ctrl+C) DEL key -- doesn't work without rio(4) though.
~ $home
/usr/$user/
~username /usr/username
"$@" $*
1>&2 >[2=1]
apropos lookman(1)
at specific-time while (! ~ (`{ date }) (specific-time)); commands
cc one of ones in 0c(1) followed by the same of 0l(1)
pcc(1) for Standard C/POSIX programs
cp -r /foo/ /bar/ mkdir /bar/foo/ && dircp /foo/ /bar/foo/
crontab -e sam /cron/$user/cron
curl http://foo/bar
wget http://foo/bar hget http://foo/bar > bar
(progress bar, -t for ascii) hget -v -o bar http://foo/bar |[2] aux/statusbar [-t] 'downloading'
cut awk -F ...
apt-get dist-upgrade
rpm -Ua
yum -c update /usr/glenda/bin/rc/pull
apt-get install
rpm -i package
yum -c install package 9fs sources ; cd /n/sources/
/n/sources/contrib/fgb/root/rc/bin/contrib/install fgb/contrib ; contrib/install $who/$what
df disk/kfscmd check
echo fsys all df | con -l /srv/fscons
df in fossilcons(8)
ee
emacs
jim
joe
nano
pico
vi
xedit sam
acme
expr hoc -e
find du -a | grep pattern
grep pattern `{du -a root}
-name du -a root | grep name
pattern in a file grep -n pattern `{du -a root | awk '{print $2}'}
-exec cp '{}' x ';' cp `{ du -a | grep pattern } x
fsck echo fsys all check fix | con -l /srv/fscons
if running venti, for a thorough fix: echo fsys all check fix venti snapshot | con -l /srv/fscons
ftp ftpfs host.domain (Remote files apear in /n/ftp).
ftpd aux/listen ftp
getopt getflags(8)
groff -l troff | lp
grops dpost - see troff(1)
head sed 10q
hwclock cat '#r/rtc'
aux/timesync
id echo $user
cat /dev/user
grep `{cat /dev/user} /adm/users
grep $user /adm/users
iostat iostats(4)
ifconfig(IP address) cat /net/ndb
ifconfig ip/ipconfig ether /net/ether0 add 192.168.1.32
ip/ipconfig # let dhcp do it
kill pid stop processname | rc
echo stop > /proc/pid/ctl
(in both cases, switch stop with start to get it back)
kill -9 pid
kill -KILL pid slay processname | rc
echo kill > /proc/pid/ctl
ld one of the ones in 0l(1)
ls lc -F
lspci pci -v
make mk (not exactly the same)
if necessary, use make in ape/psh
man -k lookman(1)
less
more p
mount [-p flag] bind(1)
unmount(1)
9fs(1)
srv(1)
import(4)
exportfs(4)
-p ns(1)
mount /dev/fd0 /mnt a: ; cd /n/a:
mount /dev/acd0 /mnt 9660srv
mkdir /n/9660
mount /srv/9660 /n/9660 /dev/sdD0/data
netcat -l aux/listen1 -t tcp!*!$port command
netstat [-r flag] netstat(1)
-r cat /net/iproute
nfsstat iostats(4)
nslookup ndb/dnsquery
passwd auth/changeuser username (first time)
passwd (subsequent times)
paste [FILE] ... pr -m [FILE] ...
PATH=$PATH:... bind -a directory /bin
ping ip/ping
pkginfo wrap(8)
reboot fshalt -r (note that there is a reboot command, but it doesn't call fshalt)
rmdir rm(1)
With contents inside: rm -r dir
sh rc(1)
if necessary, ape/psh
shutdown fshalt(8)
echo reboot > /dev/reboot
echo panic > /dev/reboot
snoop snoopy(8)
source .
startx
launch (Andrew Project)
mux (Blit's wm) rio (replaces 8½ and help)
tar xzf file.tgz tar xf file.tgz
tcpdump snoopy(8)
traceroute ip/traceroute
tree du $* | awk '{print $2}' | sort | sed 's/[^\/]+\// /g'
ufs{dump|restore} yesterday(1)
history(1)
fs(4)
vigr
vipw [Adding a new user]
vlock http://mirtchovski.com/lanlp9/rlock
(specify password at invocation)
vmstat stats(1)
cat /dev/sysstat
cat /dev/swap
which whatis
xbiff faces
xclock clock
games/catclock
faces
xditview troff | page
troff | proof
xload stats -l
xlock /n/sources/contrib/steve/conslock
(authenticates against authentication server)
xlogo window 'hget http://plan9.bell-labs.com/plan9/img/plan9bunnysmblack.jpg | page'
xman cat man -t cat | page
xv file.jpg page file.jpg
xwininfo winwatch
yes while() { echo y }
yes arg while() { echo arg }