Du använder variabelns namn innanför citationstecken, vilket gör att det bara blir en textfnutt, istället för det som variablen innehåller.
Såhär ska det se ut
do shell script "cat " & mySourceTxt & "> myResult"
Ett bra tips när man ska jobba med "do shell script" är att man bygger upp hela kommandot som en sträng innan, såhär
set myCommand to "cat " & mySourceTxt & "> myResult"
och sedan kör:
do shell script myCommand