Estou tentando fazer com que um oneliner consiga listar todos os pacotes bloqueados (proibidos de atualizar) no FreeBSD.
Normalmente, você emite este comando:
pkg info -ak
Produz uma lista de todos os pacotes no sistema, incluindo bloqueado e desbloqueado, o que não está funcionando para mim, pois eu só quero os bloqueados. Se eu grep 'sim' faz exatamente o que eu quero:
pkg info -ak | grep yes
Produz o seguinte:
nginx-devel-1.5.10 yes
php5-extensions-1.7 yes
php55-5.5.8 yes
Agora, o que eu quero é poder editar essa saída um pouco alterando a string 'yes' para seguir ( adicionando o nome do pacote com a versão omitida ):
nginx-devel-1.5.10 locked, run: sudo pkg unlock nginx-devel
php5-extensions-1.7 locked, run: sudo pkg unlock php5-extensions
php55-5.5.8 locked, run: sudo pkg unlock php55
Eu tentei seguir sem sucesso:
pkg info -ak | grep yes | sed s/yes/"locked - run: sudo pkg unlock $(pkg info -ak | grep yes | cut -d - f1-2)"/
Embora o que tentei não esteja funcionando, postei-o apenas para você ter a ideia do que estou tentando alcançar.