Como fazer bash pensar '-mthreads' palavra como '-pthread'?

2

Então eu quero fazer o meu bash para substituir a palavra '-mthreads cada vez que eu digito com a palavra -pthread . Isso é possível e como fazê-lo?

    
por myWallJSON 20.10.2012 / 20:28

2 respostas

2

Em zsh , você pode fazer isso com um alias global:

alias -g -- -mthreads=-pthread

Mas se você precisar ficar com o bash, faça uma função shell para filtrar os argumentos, como explicado @Kyle Jones.

    
por 20.10.2012 / 23:35
0

Eu não vejo nenhuma maneira de fazê-lo se aplicar a todas as linhas de comando, mas você pode fazer a substituição por comando escrevendo uma função de shell para cada comando para o qual você gostaria que a substituição acontecesse. Exemplo: para gcc você escreveria:

function gcc {
   local args=""
   local arg
   for arg in $@
   do
      case $arg in
         -mthreads) arg=-pthreads
      esac
      args="$args $arg"
   done
   command gcc $args
}
    
por 20.10.2012 / 22:34

Tags