Você pode tentar:
compgen -o default /
Eu quero perguntar ao bash como ele completaria uma string como se eu tivesse digitado em um shell e clicado em tab. Por exemplo, se eu digitar
ls /[TAB][TAB]
Eu vejo a lista de arquivos e dirs no / que poderia completar o comando ls. Como eu pergunto bash como seria completar 'ls /' sem digitá-lo e bater guia? Eu quero algo como:
query_complete 'partial command line string'
Eu li a man page completa e compgen, mas não consegui descobrir como fazer isso com eles.
Nota: 'ls /' não é o comando em que estou interessado, apenas um exemplo. Eu estou procurando uma solução geral para qualquer seqüência arbitrária que representa uma linha de comando parcial.
Você pode tentar:
compgen -o default /
Aparentemente, o Awesome WM tem um pequeno truque para se apossar disso.
Mas parece que não consigo funcionar corretamente. Deixe-me saber se você tem mais sorte.
Você poderia usar uma função que usa a Expansão de Parâmetros do bash, assim:
expand(){ echo ${a:+$1}; }; expand "ls /*"
Mas você precisará substituir seu [TAB] [TAB] por "*".
Eu acho que uma boa opção para você é olhar para as funções do bash que você pode escrever para o seu arquivo .bashrc. Meu palpite é que você acaba digitando comandos uma e outra vez, e você quer acelerar as coisas. Aqui está um exemplo do meu arquivo .bashrc:
newmod() {
mkdir -p ${1}/{manifests,files,templates} && \
echo "class $1" >> ${1}/manifests/init.pp && \
echo "class ${1}::conf" >> ${1}/manifests/conf.pp && \
echo "class ${1}::packages" >> ${1}/manifests/packages.pp
}
Eu criei muitos módulos de fantoches. Esta função, quando invocada a partir do shell, faz o seguinte trabalho para mim:
[configmgr@mback-dev ~]$ newmod testmodule
[configmgr@mback-dev ~]$ tree testmodule/
testmodule/
|-- files
|-- manifests
| |-- conf.pp
| |-- init.pp
| '-- packages.pp
'-- templates
3 directories, 3 files
[configmgr@mback-dev ~]$
Os arquivos são preenchidos com o scaffolding para a classe, os pacotes e a configuração dos módulos. Isso me poupa toneladas de digitação!
HTH, ztron
Tags bash