quoteé uma função definida (aqui no meu sistema Debian, mas acho que é a mesma coisa no Ubuntu) no arquivo /usr/share/bash-completion/bash_completion, que é originário /etc/bash.bashrcda inicialização do Bash.
Eu nunca usaria essa função! Se você precisar citar itens para poder ser usado com segurança por um shell, use printfcom o %qmodificador, como:
printf '%q\n' "Hello my friend I like 'single quotes' as well as \"double quotes\""
De fato, mesmo que isso raramente seja usado, sempre existem estratégias melhores para coisas de alto nível, como nós, usuários, normalmente fazemos. Essa quotecoisa é usada internamente por algumas coisas obscuras que nem queremos saber. Esta quotefunção é provavelmente específica do fornecedor / distribuição (leia específica do Debian) e provavelmente não é portátil, e pode até mudar em versões futuras.
Editar. Acabei de verificar um sistema Ubuntu 12.04, e a quotefunção é definida em /etc/bash_completion, originada por /etc/bash.bashrc, ela própria originada por /etc/profile.
Como eu determinei isso? usando um pouco de heurística:
Verifique se quoteaparece em /etc/profile:
grep '\bquote\b' /etc/profile
Não. Vá para o próximo passo.
Quais são os arquivos obtidos /etc/profile?
grep '[[:space:]]\.[[:space:]]' /etc/profile
Eu tenho $i(necessidade de olhar para a fonte para o que este fontes, mas neste caso é os arquivos /etc/profile.d/*.shse algum (e se legível) e /etc/bash.bashrc. Olhando nos /etc/bash.bashrc.
- Está
quotedentro /etc/bash.bashrc? sim / não, etc ...