Written 1 Sep 2026. This is a how-to, not a product card.
Line lists up in columns
After unexpand, line lists up in columns with column so practice notes sit in columns that line up. You don't need extra software for this.
Turn spaces into tabs handled spaces to tabs. Tonight you line text up in columns: column. Start with two short practice lines piped into column -t so a sits over d, b over e, c over f. Printf prints those two lines once. Pipe is only the send. That is not unexpand, expand, cut, paste, or join. You are still only practicing in home on the computer. It does not need extra system software, htop, Grafana, or a NAS for this one job.
Skip until SSH already works
SSH from the couch should already get you a prompt. If spaces to tabs are what you want, that is turn spaces into tabs. If tabs to spaces are what you want, that is turn tabs into spaces. If one column pulled is what you want, that is pull one column. If columns side by side from two files are what you want, that is join columns side by side. If files matched on a shared field are what you want, that is match files on a shared field.
What this is
column lines lists up in columns. You type two short lines into printf, send them with a pipe, then column -t tables the fields. Stick with that safe peek. It is not cut. Cut pulls one column. It is not paste. Paste joins columns from two files. It is not join. Join matches files on a key.
Practice column in home
SSH in. Make sure home is where you sit:
pwd
You want a path that ends in your login name. If not:
cd ~
Line lists up in columns with a safe peek:
printf 'a b c\nd e f\n' | column -t
You want two lines with columns that line up (a over d, b over e, c over f), then the prompt back. That is enough for tonight. Practice only in home.
Debian and Ubuntu usually already have column. Don't make apt the job. If column is missing:
sudo apt install bsdextrautils
Then stop. That install is not the lesson.
Useful extras, still home only
Optional: a second pair of practice lines:
printf 'one two three\nfour five six\n' | column -t
Optional: colon as the split:
printf 'a:b:c\nd:e:f\n' | column -t -s :
-s : tells column to split on : instead of whitespace.
Optional: column then head:
printf 'a b c\nd e f\n' | column -t | head -n 2
Head is not tonight's job.
What this is not
This is not unexpand. That is turn spaces into tabs. It is not expand. That is turn tabs into spaces. It is not cut. That is pull one column. It is not paste. That is join columns side by side. It is not join. That is match files on a shared field. It is not comm. That is compare sorted lists. It is not fmt. That is reflow paragraphs. It is not opening SSH to the internet. That is keep the computer on the house network. Don't forward port 22.
What next
Need files matched on a key? Match files on a shared field. Need columns side by side? Join columns side by side. Need one column pulled? Pull one column. Need spaces to tabs? Turn spaces into tabs. Keep SSH on the house network: keep the computer on the house network. Don't forward port 22.
Skip
- Skip if SSH still fails. Finish SSH from the couch first.
- Skip unexpand, expand, cut, paste, join, and comm as tonight's job. Those pages already exist.
- Skip huge dumps. Tonight: two short practice lines.
- Skip files under
/etc, SSH folders, or paths you don't own. Practice only in home. - Skip
rm -rf. Careful delete only: delete a file carefully. - Skip opening SSH to the internet so you can do this from a coffee shop. That is keep the computer on the house network. Don't forward port 22.
Sources
Debian: column(1). Ubuntu: column(1). Official pages only. For the login, see SSH from the couch. For matching on a key, see match files on a shared field.