Se eu estiver em um diretório profundo, digamos:
~/Desktop/Dropbox/School/2017/C/A3/
então quando eu abro o terminal, diz
bob@bob-ubuntu:~/Desktop/Dropbox/School/2017/C/A3/$
e então escrevo meu comando. Isso é muito longo, e todas as linhas que escrevo no terminal vão para a próxima linha. Quero saber se existe uma maneira de exibir apenas meu diretório atual. Quero que ele seja exibido:
bob@bob-ubuntu: A3/$
Dessa forma, é muito claro, e sempre posso fazer pwd
para ver meu diretório inteiro. Eu só não quero o diretório inteiro visível no terminal, porque ocupa muito espaço.
export PROMPT_DIRTRIM=3
no seu.bashrc
é o meio termo perfeito entre\W
e\w
. Veja: gnu.org/software/bash/manual/html_node/Bash-Variables.htmlSupondo que você esteja usando o bash, altere a sequência de caracteres do prompt (variável PS1) para que ela tenha, em
\W
vez de\w
.por exemplo, se o seu PS1 estiver atualmente
\u@\h:\w\$
, defina-o como\u@\h:\W\$
Para tornar isso permanente, você precisará alterá-lo nos arquivos de inicialização do bash - por exemplo,
~/.bash_profile
ou~/.bashrc
.veja
man bash
e procure porPROMPTING
detalhes completos e uma lista de caracteres especiais com escape de barra invertida.fonte
\w
PS1 para\W
. ou você pode simplesmente definir o prompt como desejar na parte inferior do script.Nesse caso, você terá que editar o PS1 ,
insted de
\w
, você terá um comando ou uma variável que mostra shortned caminho:PS1 original
mude para
Observe que isso colocará o nome de usuário dentro de ~ se você estiver no diretório home!
para evitar que você precise de alguns comandos inseridos em $ {PWD ## * /}, por exemplo
o novo PS1 terá a seguinte aparência
oOps enquanto estou tentando salvar o mundo, não esqueci o \ W
fonte
Isso é portátil para todas as
sh
conchas.Atribua a
PS1
um dos seus arquivos de inicialização do shell:O prompt parecerá
Onde
dir
é o nome base do diretório atual.A
$PWD
variável contém o caminho do diretório atual e${PWD##*/}
removerá tudo, inclusive o último/
nesse caminho.As aspas simples evitam que o formulário do shell avalie a substituição da variável no momento da atribuição (o valor de
$PS1
será avaliado sempre que o prompt for exibido).A
PS1
variável não deve ser exportada, pois é usada apenas pelo shell atual.fonte
https://github.com/chrissound/SodiumSierraStrawberry
Permite truncar um caminho como:
fonte