- A substituição de comandos não é executada em aspas simples, em vez disso, você terá que usar aspas duplas.
-
\e[1;30m
não é uma variável, portanto você não pode fazer${\e[1;30m}
.
Tente:
sed 's:[AEIOU]:'"$(printf "\e[1;30m&\e[0m")"':i2' room.txt
Aqui, fecho a aspa simples e, em seguida, uso aspas duplas e, em seguida, reabrimo a aspas simples.