Wiem, że Linux to system operacyjny zbudowany na plikach tekstowych. Chciałbym utworzyć plik przy użyciu vi
wszystkich różnych poleceń, których się nauczyłem. W ten sposób mogłem bardzo łatwo znaleźć każde polecenie za pomocą polecenia /
in vi
. Ale chcę to zrobić tylko wtedy, gdy nie zmieni to sposobu działania mojego komputera. Czy to byłby dobry pomysł?
command-line
vi
BJsgoodlife
źródło
źródło
vi
(w porównaniu do powiedzmygedit
), czy miałeś na myśli „edytor tekstu”?sudo
.Odpowiedzi:
Zapisanie pliku tekstowego nie zmieni „sposobu działania komputera”.
W szczególności, aby zrobić coś takiego, musisz zrobić jedną z nich
Ponieważ nie zamierzasz robić czegoś takiego wprost, nie musisz się martwić. W szczególności druga odpowiedź jest niepotrzebna, sugerując, że pliki tekstowe muszą zaczynać się od skrótów w każdej linii. Oczywiście, że nie. Samo przechowywanie pliku tekstowego w normalnym katalogu domowym nic nie da.
źródło
#
aby przypadkiem nie wykonano niczego niezamierzonego. Myślę, że zawsze lepiej jest być po bezpieczniejszej stronie.You won't have permission to do this
. sudo zrób mi kanapkę.Aye, aye, sir!
exit
?Możesz zapisać wszystkie polecenia, których nauczyłeś się w pliku, ale należy pamiętać o kilku ważnych kwestiach:
source
plikNajlepszym sposobem byłoby umieszczenie
#
na początku wszystkich poleceń w celu skomentowania wszystkich poleceń, aby nie zostały one wykonane przypadkowo. W ten sposób możesz wyszukać potrzebne polecenie, a także nie ryzykować. Możesz dodać#
na początku każdej linii za pomocą następującego polecenia:sed -i 's/^/#/' <file_name>
EDYCJA: Podałem trzeci punkt jako ekstremalny środek bezpieczeństwa, ponieważ „neon_overload” i „David Z” zauważyli, że wstawianie skrótów we wszystkich wierszach jest zbyt obszerne i dlatego nie jest potrzebne, poparłbym je w tym kontekście. Również, jak wskazano w „random832”, znacznie lepszą alternatywą dla mojego trzeciego punktu byłoby uruchomienie pliku
exit
, ponieważ nie będą wtedy wykonywane żadne późniejsze polecenia.EDYCJA 2: „Rinzwind” wspomniał o dwóch ważnych kwestiach:
Nie zastępuj istniejącego pliku
Zapisz plik w katalogu domowym użytkownika (
/home/$USER/
).źródło
put a # in the beginning of all the commands to comment out all the commands so they don't get executed accidentally
Nie jestem do końca pewien, czy to ma być poważna sugestia, czy żart. Mój detektor sarkazmu zawiódł mnie dzisiaj.#!
- justexit
; w ten sposób jesteś również chroniony, przedsh yourfile
którym nieprawidłowy shebang nie pomoże.neon_overload ma bardzo dobrą odpowiedź.
Rozbuduję trochę kwestię twojego pytania - chciałbym zamienić to w komentarz, ale nie mam tutaj wystarczającej reputacji.
Linux, jako system operacyjny, w dużej mierze NIE jest oparty na plikach tekstowych. To powiedziawszy, widzę, skąd pochodzisz. Zewnętrznemu obserwatorowi sporo się dzieje przy edycji i uruchamianiu plików „tekstowych”, szczególnie w porównaniu z Windows.
Ma to kilka przyczyn, z których niektóre to:
źródło
Krótka odpowiedź brzmi: nie, nie zmienisz komputera , tworząc plik tekstowy w vi. Jeśli jednak nie będziesz ostrożny, utworzenie pierwszego pliku tekstowego może tylko zmienić twoje życie . Nauka uniksowego sposobu może być bardzo satysfakcjonującą praktyką.
źródło
vi
jest edytorem tekstowym , więc jeśli wszystko, czego potrzebujesz, to po prostu przechowuj fragmenty tekstu w pliku tekstowym i przeszukuj go, możesz to wszystko zrobić bezpośrednio z terminala za pomocą wbudowanych poleceń.Napisz notatkę do pliku tekstowego (utworzy plik, jeśli nie istniał):
echo z ważnymi danymi >> info.txt
WAŻNE: Uważaj na pojedyncze i podwójne cudzysłowy i poprzedz je ukośnikami, jeśli chcesz je uwzględnić.
Wyszukaj w pliku jakiś tekst (np.
important
):grep - kolor -i ważne info.txt
Aby uniknąć pisania,
--color -i
które powinno być w twoim aliasie~/.bashrc
.Możesz także dodać tekst wielowierszowy do istniejących lub nieistniejących plików tekstowych:
następnie wpisz lub wklej tekst, a po zakończeniu naciśnij CTR+Z
Jeśli chodzi o zmianę systemu, nie, nie zmieni to sposobu działania systemu, dopóki tworzysz pliki we własnym folderze domowym i nie wykonujesz ich (możesz wykonać plik, nawet jeśli nie jest wykonywalny, np. Za pomocą
bash myFile
) . Upewnij się także, że korzystasz z uprawnień roota tylko wtedy, gdy ich potrzebujesz.I wreszcie, twoja interpretacja systemu opartego na plikach nieco cię wprowadziła w błąd: większość systemów operacyjnych ma pliki, które przechowują ważne ustawienia, które głęboko wpływają na sposób działania systemu, ale są one zlokalizowane w predefiniowanych lokalizacjach i zwykle są chronione przed modyfikacjami przez zwykłych użytkowników.
Możliwe jest jednak łatwe strzelanie sobie w stopę, na przykład, jeśli jako zwykły użytkownik masz lokalny folder „wykonywalny”, który dodałeś
PATH
, i jeśli w tym folderze masz pliki wykonywalne, które mają takie same nazwy jak wbudowane -W wspólnych narzędzi lub bash słów kluczowych, takich jaktest
,echo
,cat
,for
,cut
, etc.źródło