Para tornar isso um alias, o que é possível, você precisa usar aspas duplas em torno do valor inteiro do alias. Você também precisará escapar de algumas coisas dentro do alias, e você precisa escapar de qualquer um dos argumentos de campo para awk
, uma vez que estes serão interpretados como argumentos pelo Bash, bem como quando você estiver configurando o alias.
Isso funcionou para mim:
$ alias mm="ps -u $USER -o pid,rss,command | \
awk '{print \alias mm="ps -u ...."
}{sum+=\} END {print \"Total\", sum/1024, \"MB\"}'"
Acima, fiz o seguinte:
-
Aspas duplas em torno do valor do alias
awk '{print \
}{sum+=\} END {print \"Total\", sum/1024, \"MB\"}awk '{print \
}{sum+=\} END$ alias mm="ps -u $USER -o pid,rss,command | \ awk '{print \
}{sum+=\} END {print \"Total\", sum/1024, \"MB\"}'"alias mm="ps -u ...."
-
Aspas duplas do awk escapado
awk '{print \
}{sum+=\} END {print \"Total\", sum/1024, \"MB\"}awk '{print \%pre%}{sum+=\} END
-
Escapou campos do awk
%pre%
Eu usaria isso?
Provavelmente não, eu mudaria isso para uma função Bash, já que será mais fácil manter e entender o que está acontecendo, mas aqui está o alias se você ainda quiser.