Podczas oglądania wideo zobaczyłem:
% more tinyUF.txt
10
4 3
3 8
6 5
Co to za %
znak przed more
poleceniem?
shell
command-line
prompt
Maxim Koretskyi
źródło
źródło
export PS1=%
??$
znak, używającexport PS1=...
gdzie...
jest zamiennik.Odpowiedzi:
To jest monit powłoki, a dokładniej, to główny monit powłoki ( jest ich kilka ). Powłoka mówi: „ śmiało, jestem gotowy na dane wejściowe ”.
%
Szybka jest powszechne wcsh
Type powłoki podczassh
-shells (na przykładbash
iksh93
) zwykle wykorzystuje$
jako szybka.Monit zwykle zmienia się na
#
dla użytkownika root, ponieważ wystarczająco mocnemu użytkownikowi należy przypomnieć o tej mocy poprzez alternatywne monity (jak to określa standard POSIX).Podstawowy monit w
sh
powłokach typu zależy od wartości zmiennej powłokiPS1
.Podsumowanie poniższych komentarzy z dodatkami:
#
Postaci korzenia szybkiej (wykorzystywany zarówno przezsh
icsh
powłok), pokrywa się z komentarzem postaci wspólnej obudowy. Kopiowanie i wklejanie polecenia jako root sprawi, że wklejone polecenie nie będzie działać, jeśli zostanie również skopiowane zapytanie powłoki. Zauważ, że#
został przyjęty jako monit root, zanim powłoka miała konwencję komentowania (odnośnik: email od Douga McIlroya ).es
Irc
muszle Planu 9 używa;
znaku jako domyślną wiersza. Konsekwencją tego jest to, że kopiowanie i wklejanie polecenia, w tym monitu, będzie nadal oznaczać, że wklejone polecenie jest prawidłowe (i zostanie wykonane).Sposobem na umożliwienie posiadania niestandardowego, ale wciąż kopiowalnego monitu powłoki, byłoby użycie
: something ;
, gdziesomething
może być na przykład bieżący katalog, nazwa hosta lub godzina.źródło
zsh
(powłoka w stylu Bourne'a, ale z wieloma funkcjami odtcsh
). Zauważ, że podobne do Bourne'a i csh-podobne powłoki zwykle używają#
użytkowników UID 0.rc
używają;
tam podobnych powłok (można skopiować i wkleić pełny wiersz, a to jest poprawny kod powłoki, taki sam pomysł jak#
podpowiedź roota jako komentarz).#...
wiersze są komentarzami po wklejeniu, nawet jeśli nie było to zamierzone. Nie wiem, czy to było intencją;
wrc
obaj, choć obserwujemy to wygodne konsekwencją.