To znak powrotu w kopiowanym tekście powoduje automatyczne wykonanie.
Weźmy inny przykład, skopiuj te linie naraz i wklej je do terminala:
echo "Hello";
echo "World";
Jeśli spojrzysz na swój terminal, nie zobaczysz tego:
$ echo "Hello";
echo "World";
Widać to (może być również powiedzenie linii World
):
$ echo "Hello";
Hello
$ echo "World";
Zamiast czekać na wklejenie wszystkich danych wejściowych, wykonywany jest pierwszy wiersz (i z tego samego powodu drugi wiersz może, ale nie musi). Jest tak, ponieważ RETURN
między dwiema liniami jest znak.
Kiedy naciskasz ENTER
klawisz na klawiaturze, wszystko, co robisz, to wysyłanie znaku o wartości ASCII 13
. Ta postać jest natychmiast wykrywana przez twój terminal i wie, że ma specjalne instrukcje, aby wykonać to, co wpisałeś do tej pory.
Gdy jest przechowywany na komputerze lub drukowany na ekranie, RETURN
znak jest jak każda inna litera alfabetu, cyfry lub symbolu. Znak ten można usunąć za pomocą backspace lub skopiować do schowka, tak jak każdy inny zwykły znak.
Jedyna różnica polega na tym, że gdy przeglądarka widzi znak, wie, że zamiast drukować widoczny znak, powinien traktować go inaczej i ma specjalne instrukcje, aby przenieść następny zestaw tekstu do następnego wiersza. Z tego RETURN
powodu znak i SPACE
znak (ascii 32
) oraz kilka innych rzadko używanych znaków są znane jako „znaki niedrukowalne”.
Czasami podczas kopiowania tekstu ze strony internetowej trudno jest skopiować tylko tekst, a nie zwrot na końcu (i często utrudnia to styl na stronie).
Czas na eksperyment!
Poniżej znajdziesz dwa polecenia, które zilustrują problem, i na których możesz „ćwiczyć”. Rozpocznij kursor tuż przed echo
i przeciągnij, aż wyróżnienie znajdzie się tuż przed strzałką:
echo "Wait for my signal...";<- End cursor here right after the semicolon
A teraz spróbuj drugiego polecenia. Rozpocznij kursor tuż przed echo
i przeciągnij w dół, aż kursor znajdzie się w drugiej linii, ale znajdzie się tuż przed <-
strzałką. Skopiuj go, a następnie wklej do terminala:
echo 'Go go go!';
<- End cursor here right before the arrow
W zależności od przeglądarki może nie być nawet widoczne, że wybrany tekst przekroczył dwie linie. Ale kiedy wkleisz go do terminala, przekonasz się, że wykonuje wiersz, ponieważ znalazł RETURN
znak w skopiowanym tekście.
{
przed wklejeniem wpisz (w / spacja), a następnie zakończ}
. Nie ma to wpływu na działanie wklejonych poleceń, ale zapobiega wykonywaniu go przez powłokę do momentu zamknięcia bloku. Opisano tutaj [ gnu.org/software/bash/manual/html_node/Command-Grouping.html]