Ugyan nem vagyok jártas a témában, de szerintem ez nem igazán a shell dolga. A shell és a terminál két külön dolog. A terminál a fizikai kapcsolatot tartja a felhasználóval, ha lenyomsz egy billentyűt, azt küldi a shell felé, illetve, ha a shell küld egy karaktert, azt megjeleníti a terminál. Viszont terminál típusonként más szekvencia állítódik elő egy adott gomb megnyomásakor, ezért kellenek mindenféle konverziók, s ezért kell ismerni a terminál típusát. Szigorúan szerintem, de erről NevemTeve tudna értekezni, mert úgy emlékszem, foglalkozott behatóbban ilyesmivel.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE