Mientras miraba un video, vi lo siguiente:
% more tinyUF.txt
10
4 3
3 8
6 5
¿Qué es este %
signo antes del more
comando?
shell
command-line
prompt
Maxim Koretskyi
fuente
fuente
export PS1=%
??$
signo normal usandoexport PS1=...
dónde...
está el reemplazo.Respuestas:
Ese es el indicador del shell, o más precisamente, es el indicador primario del shell ( hay varios ). Es la forma en que el shell dice " adelante, estoy listo para la entrada ahora ".
El
%
indicador es común en loscsh
shells de tipo mientras que lossh
shells (likebash
yksh93
) normalmente usan a$
como el prompt.El aviso generalmente cambia
#
para el usuario raíz, ya que un usuario suficientemente poderoso debe recordar ese poder mediante un aviso alternativo (como dice el estándar POSIX).El indicador primario en
sh
shells de tipo está determinado por el valor de la variable de shellPS1
.Resumen de los comentarios a continuación, con adiciones:
El
#
carácter del indicador raíz (utilizado por ambossh
ycsh
shells) coincide con el carácter de comentario de shell común. Copiar y pegar un comando como root haría que el comando pegado no funcionara, si el indicador de shell también se copiara. Tenga en cuenta que#
se adoptó como el indicador raíz antes de que el shell tuviera una convención de comentarios (referencia: correo electrónico de Doug McIlroy ).Los shells
es
yrc
del Plan 9 usan el;
carácter como indicador predeterminado. Una consecuencia de esto es que copiar y pegar un comando, incluida la solicitud, significará que el comando pegado es válido (y se ejecutará).Una forma para permitir que uno tenga una costumbre, pero todavía copiar-pastable, Indicador Shell, sería la de utilizar
: something ;
, dondesomething
podría ser el directorio actual, el nombre de host o la hora, por ejemplo.fuente
zsh
(un shell de estilo Bourne, pero con muchas características detcsh
). Tenga en cuenta que los shells de tipo Bourne y csh suelen usarse#
para usuarios de uid 0.rc
shells similares se usan;
allí (uno puede copiar y pegar la línea completa y ese es un código de shell válido, la misma idea que la#
solicitud de root es un comentario).#...
líneas son comentarios cuando se copian, incluso si no era la intención. No sé si era la intención que hay detrás;
derc
ambos, aunque observo que es una consecuencia conveniente.