---
title: "unix-shell"
tags: 
- cosc202
---

- most common command shell (macOS, linux, android, ios)
- bash is another common shell
- windows shells:
	- cmd.exe (legacy)
	- powershell (more powerful than bash)
	- many ways to run bash

## 1 Unix shell good/bad

- good
	- embodies unix principle: separation of concerns
	- minimal -> shell just manages interaction of other small tools
	- highly programmable; supports complex automation
- bad
	- has quirkiness that can trip everyone up
- tradeoffs
	- Shell can be perfect to some tasks; terrible for others
	- extremely powerful however also difficult to learn to use

shells are in cosc202 as lowest-level, common means for controlling computers during software development
