Първо, когато изпълняваш скрипт, за него се създава нов неинтерактивен шел, а по подразбиране alias-ите не играят в неинтерактивни шелове. За да им позволиш да играят, добави си следния ред в началото на скрипта (след указателя за шела):
След което под него можеш или ръчно да си задаваш твои alias-и, или да си вмъкнеш файл с alias-и (като ~/.bashrc) със source.
Второ, имай предвид, че alias командите влизат в сила след задаване на exit кода им, т.е., след пълното им изпълнение, което значи, че не трябва да слагаш други команди на същия ред, отделени от alias командата с ";" или "&&", които разчитат alias-ът да действа при тяхното изпълнение. В твоя пример си ги вписал добре, но не би имал успех ако напишеш някое от тези:
alias lh="ls -lrth"; lh
alias lh="ls -lrth" && lh
Трето, не виждам каква ти е ползата да си играеш с ръчно въведени alias-и в скрипт, вместо да си ги задаваш с променливи. Например:
GeSHi (Bash):
#!/bin/bash
lh="ls -lrth"
$lh