Estou editando meu prompt do PS1 e não quero continuar procurando meu bashrc para atualizá-lo (já que meu bashrc redefine outras coisas também). Também não quero copiar e colar repetidamente. Existe uma maneira de editar a variável interativamente, como usar nano
(meu editor padrão)?
O PS1 é principalmente um exemplo, porque quero fazer a mesma coisa com outros vars. O motivo pelo qual desejo fazer isso de maneira interativa é que a variável já é bastante longa e só preciso editar alguns caracteres nela. E eu só preciso alterá-lo no shell atual.
fonte
PS1='$PS1'
, ele excluiu as aspas, mas a digitaçãoPS1=\'$PS1\'
funciona perfeitamente.bind -p
, eu também descobri que você pode expandir globs, tildes e linhas de história. Arrumado!Em vez de obter o bashrc, forneça outro arquivo, que apenas contém a variável.
Crie:
Nota: Se a variável contiver aspas simples, você precisará usar um comando que possa escapar delas, por exemplo:
Abra-o em um editor, por exemplo
nano /tmp/PS1
.nano
repetidas vezes, você pode executá-lo em outro terminal / TTY ou usar um editor gráfico.Faça as alterações e salve.
Fonte:
Repita as etapas 3 e 4 conforme necessário.
fonte
O Zsh possui um built-in chamado
vared
que permite editar uma variável embutida. Eu escrevi minha própria versão, originalmente publicada em Super Usuário :Observe que isso tem algumas diferenças sutis em relação ao Zsh embutido, por exemplo:
vared $
)Em seguida, para editar o PS1, basta executar
vared PS1
.fonte