comando para mostrar o prompt de comando do shell

0

Existe um comando shell para exibir o prompt de comando.

Vou explicar o que quero através da ilustração abaixo.

Quando executo o script.sh, eu devo obter a seguinte saída

$sh script.sh
$                   /* command prompt and then print hi */
hi

Meu script.sh é assim

#! /bin/bash

<command to display the shell command prompt>
echo "hi"
exit 0

qual deve ser o código que deve ser colocado no lugar de colchetes angulares para obter uma saída como acima?

Obrigado

    
por LinuxPenseur 05.01.2011 / 10:06

1 resposta

2

Não há como portably fazer o que você pede, porque a variável PS1 só é definida quando o shell é interativo, e só deve ser alterado em arquivos dot-rc se já estiver definido, como "PS1 é definido?" é o teste clássico para estar em um shell interativo.

Escolha seu prompt preferido e use-o. Classicamente, '$' para shells estilo bourne, incluindo bash (o padrão é 'bash- $'), '> 'para tcsh,'% 'para zsh e' # 'se raiz.

Se você está tentando transmitir estado para consistência, basta usar "# 'se raiz, senão' $ '."

    
por 05.01.2011 / 10:33

Tags