Como evitar alias bash de armazenar pid

2

Eu tenho um alias que anexa um processo chamado myprocess no gdb.

i.e. alias myat="gdb / caminho / para / myprocess $ (pgrep myprocess)"
$ type myat
myat é aliado para 'gdb / path / to / myprocess 23313'

Isso funcionará até que meu processo morra e reinicie com um novo pid.
Mas, para poder usar o alias novamente, tenho que recarregar meu ~ / .bashrc

Existe uma maneira melhor de especificar esse alias, para que eu não precise recarregar o
~ / .bashrc?

    
por Aman Jain 25.08.2012 / 02:20

1 resposta

2

O problema é que o bash expande as substituições entre aspas duplas ( " " ) no momento em que o comando alias ... é executado. Ou escape da substituição como \$(...) ou use aspas simples ( ' ' ).

alias myat="gdb /path/to/myprocess \$(pgrep myprocess)"
alias myat='gdb /path/to/myprocess $(pgrep myprocess)'

Ou use uma função:

myat() { gdb /path/to/myprocess $(pgrep myprocess); }
    
por 25.08.2012 / 02:25

Tags