Konfiguracja sprzętu i oprogramowania

Podstawy Linuksa: Wprowadzenie do bash. Podstawy Linuksa: Wprowadzenie do bash Przykłady z wykorzystaniem ścieżek względnych

Wszystkie pliki w systemie Linux mają określony adres w systemie plików, za pomocą którego możemy uzyskać do nich dostęp za pomocą menedżera plików lub narzędzi konsoli. To jest ładne prosty motyw, ale wielu początkujących ma z tym trudności.

W dzisiejszej krótkiej notatce przyjrzymy się, czym jest ścieżka do pliku w Linuksie, czym może być, jak ją poprawnie napisać i wiele więcej. Jeśli wcześniej miałeś z tym trudności, po przeczytaniu artykułu wszystko stanie się całkowicie jasne.

Ścieżki plików w Linuksie

System plików Linux bardzo różni się od systemu Windows. Nie będziemy rozważać jego struktury, zrobiono to wcześniej. Skupimy się na pracy z plikami.

Najważniejszą różnicą jest to, że adres pliku nie zaczyna się od dysku, na przykład C:\ lub D:\, jak to ma miejsce w Windows, ale od roota, katalogu głównego systemu, do którego podłączone są wszystkie inne. Jego adres - /. I tutaj trzeba powiedzieć o adresach. Ścieżki plików w systemie Linux używają ukośnika „/” do oddzielenia katalogów w adresie, a to różni się od tego, co zwykle widzisz w systemie Windows - \.

Na przykład, jeśli w systemie Windows pełna ścieżka do pliku na pulpicie wygląda jak C:\Users\Sergiy\Desktop\, to w linuksie ścieżka do pliku będzie po prostu wyglądać tak: /home/sergiy/desktop/. Dzięki temu wszystko jest proste i jasne. Ale problemy wciąż się pojawiają.

Na sali operacyjnej System Linux Może istnieć kilka rodzajów ścieżek do plików. Przyjrzyjmy się, jakie ścieżki są w linuksie:

  • Pełna, bezwzględna ścieżka linuksowa z katalogu głównego systemu plików- widziałeś już tę ścieżkę w powyższym przykładzie, zaczyna się od korzenia "/" i opisuje całą ścieżkę do pliku;
  • względna ścieżka linuksowa jest ścieżką do pliku względem bieżącego folderu, takie ścieżki są często mylące.
  • Ścieżka względem folderu domowego bieżącego użytkownika.- ścieżka w systemie plików, ale nie z katalogu głównego, ale z folderu bieżącego użytkownika.

Teraz przyjrzyjmy się bliżej, jak te ścieżki wyglądają w Linuksie, a także przeanalizujmy kilka przykładów, aby było to całkowicie jasne. Aby to zademonstrować, użyjemy narzędzia ls, które służy do przeglądania zawartości katalogów.

Na przykład mamy taki katalog w naszym katalogu domowym z czterema plikami w nim:

Tak będzie wyglądać pełna ścieżka linuksowa do jednego z plików:

ls /home/sergiy/tmp/plik1

Jest to już względna ścieżka linuksowa, która zaczyna się od folderu domowego, jest oznaczona przez ~/. Zauważ, że nie ~, ale ~/. Wtedy możesz już określić podfoldery, w naszym przypadku tmp:

Cóż, lub ścieżka pliku w Linuksie, w stosunku do bieżącego folderu:

Pierwszy link wskazuje na bieżący folder (.), drugi (..) wskazuje na folder o jeden poziom wyżej. Otwiera to jeszcze więcej możliwości poruszania się po katalogach. Na przykład, aby odwołać się do pliku w bieżącym folderze, możesz użyć konstrukcji:

Jest bezużyteczny podczas przeglądania zawartości pliku. Ale jest to bardzo ważne podczas uruchamiania programu. Ponieważ program najpierw będzie przeszukiwany w środowisku PATH, a dopiero potem w tym folderze. A zatem, jeśli potrzebujesz uruchomić program, który znajduje się w bieżącym folderze i nazywa się dokładnie tak samo, jak ten w katalogu / bin, to bez wyraźnego linku, że plik należy przeszukać w bieżącym folderze, nic nie zadziała.

Takie konstrukcje można spotkać dość często podczas kompilacji programów. Możesz używać wszystkich tych symboli i ścieżek plików linux nie tylko w terminalu, ale także w dowolnym menedżer plików co może być bardzo wygodne.

Ale terminal Linux zapewnia jeszcze więcej opcji. Możesz użyć prostych znaków zastępczych bezpośrednio w adresach plików lub katalogów. Na przykład możesz wyświetlić listę wszystkich plików, które zaczynają się od f:

Możesz nawet wyszukiwać nie tylko w folderze tmp, ale w dowolnym podfolderze swojego folderu domowego:

I to wszystko zadziała, być może nie zawsze jest to konieczne i praktyczne. Ale w niektórych sytuacjach może być bardzo pomocny. Funkcje te są zaimplementowane na poziomie powłoki Bash, dzięki czemu można ich używać w dowolnym poleceniu. Powłoka sprawdza, ile plików zostało znalezionych i wywołuje polecenie dla każdego z nich.

wnioski

To wszystko. Teraz wiesz już wszystko, czego potrzebujesz, aby nie tylko poprawnie napisać ścieżkę do pliku linux, ale także wykonywać bardziej złożone czynności, takie jak wyszukiwanie plików lub nawigacja po katalogach za pomocą polecenia cd. Jeśli masz jakieś pytania, pytaj w komentarzach!

Powiązane posty:


Po przeczytaniu tego artykułu dowiesz się, co to jest grzmotnąć(standardowa powłoka linux), dowiedz się, jak obsługiwać standardowe polecenia: ls, cp, mv… zrozumieć przeznaczenie i-węzłów, twardych i dowiązania symboliczne i wiele więcej.

Ten samouczek jest przeznaczony dla tych, którzy są nowicjuszami w Linuksie i chcą przejrzeć lub poprawić swoje zrozumienie podstawowych pojęć Linuksa, takich jak kopiowanie i przenoszenie plików, tworzenie łączy, używanie standardowych poleceń Linuksa wraz z przekierowaniami i potokami. W tym artykule znajdziesz wiele przykładów wyjaśniających prezentowany materiał. Dla początkujących większość informacji będzie nowa, ale dla bardziej zaawansowanych użytkowników ten materiał może być doskonałym narzędziem do podsumowania posiadanej wiedzy i umiejętności.

Wprowadzenie do bash

Muszla

Jeśli używasz Linuksa, to wiesz, że po zalogowaniu zostaniesz przywitany przez znak zachęty interpretera poleceń. Na przykład to:

\$

Jeśli po zalogowaniu ładowana jest powłoka graficzna, to aby dostać się do interpretera poleceń, musisz uruchomić emulator terminala (gnome-terminal, xfce4-terminal, konsole, xterm, rxvt ...) lub przełączyć się na jeden z terminali wirtualnych przez pilny klawisz kontrolnyAltF1 lub klawisz kontrolnyAltF2 itp.

Monit powłoki na twoim komputerze może różnić się od tego, co pokazano w przykładzie. Może zawierać nazwę użytkownika, nazwę komputera i nazwę bieżącego katalogu roboczego. Ale pomimo tych wszystkich różnic program, który wyświetla ten monit, nazywa się „ muszla” (powłoka) i najprawdopodobniej twoja powłoka to program o nazwie grzmotnąć.

Prowadzisz bash?

Możesz sprawdzić, czy bash działa za pomocą następującego polecenia:

\$ echo \$SHELL/bin/bash

Jeśli pojawi się błąd w wyniku wykonania tego polecenia lub jego dane wyjściowe różnią się od tego w przykładzie, możliwe, że bash nie jest używany jako powłoka poleceń w twoim systemie. Mimo to większość materiałów będzie istotna, ale nadal zalecamy przejście na bash. Można to zrobić (jeśli w systemie jest zainstalowany bash) za pomocą polecenia:

\$ grzmotnąć

Co to jest bash

Bash (akronim dla „ b nasz- a zdobyć CII ell”) to standardowy interpreter poleceń w większości systemów Linux. Do jego obowiązków należy przetwarzanie i wykonywanie poleceń, za pomocą których użytkownik kontroluje komputer. Po zakończeniu pracy możesz zakończyć proces powłoki. Po naciśnięciu klawiszy klawisz kontrolnyD, polecenia Wyjście lub Wyloguj proces powłoki zostanie zakończony, a ekran ponownie poprosi o podanie nazwy użytkownika i hasła.

Korzystanie z „cd”

Zacznijmy używać bash do nawigacji w systemie plików. Aby rozpocząć, wpisz następujące polecenie:

$ Płyta CD /

Za pomocą tego polecenia powiedzieliśmy bashowi, że chcemy przejść do katalogu głównego - / . Wszystkie katalogi w systemie są zorganizowane w strukturę drzewa i / to jest jego początek (lub korzeń). Komenda Płyta CD służy do zmiany bieżącego katalogu roboczego.

Sposoby

Aby dowiedzieć się, gdzie w systemie plików ten moment jesteś w (bieżącym katalogu roboczym) wpisz:

\$ pwd /

W powyższym przykładzie / - argument polecenia Płyta CD- nazywa się sposób. To jest lokalizacja systemu plików, do której chcemy się przenieść. W tym przypadku / - ścieżka bezwzględna, co oznacza, że ​​ścieżka jest względna do katalogu głównego.

Ścieżki absolutne

Oto kilka przykładów ścieżek absolutnych

/dev /usr /usr/bin /usr/local/bin

Jak mogłeś zauważyć, wszystkie te ścieżki łączy fakt, że zaczynają się od / . Określanie ścieżki /usr/local/bin jako argumentu polecenia Płyta CD mówimy mu, aby przeszedł do katalogu głównego / , potem do katalogu usr, potem do lokalnego i bin. Ścieżki absolutne zawsze zaczynają się od /

Ścieżki względne

Drugi rodzaj ścieżek nazywa się względnymi. grzmotnąć, Komenda Płyta CD a inne polecenia liczą te ścieżki względem bieżącego katalogu. Względne ścieżki nigdy nie zaczynają się od / . Na przykład, jeśli jesteśmy w /usr

\$ cd /usr

Następnie możemy przejść do /usr/local/bin przy użyciu ścieżki względnej

\$ lokalna płyta CD/bin \$ pwd/usr/local/bin

Stosowanie ".."

Ścieżki względne mogą zawierać jeden lub więcej katalogów «..» . „..” wskazuje katalog nadrzędny naszego katalogu roboczego. Przykład:

\$ pwd/usr/local/bin\$ Płyta CD.. \$ pwd/usr/lokalny

Jak widać polecenie Płyta CD..„przenosi nas na wyższy poziom”.

Mogę dodać .. do ścieżki względnej. Spowoduje to przeniesienie do katalogu, który jest na tym samym poziomie, co ten, w którym się znajdujemy. Przykład:

\$ pwd/usr/lokalny\$ cd ../udostępnij \$ pwd/usr/share

Przykłady z wykorzystaniem ścieżek względnych

Ścieżki względne mogą być dość trudne. Oto kilka przykładów. Wynik wykonania poleceń nie jest wyświetlany, spróbuj określić, w którym katalogu się znajdziesz, używając basha.

\$ cd /bin \$ cd ../usr/share/zoneinfo \$ cd /usr/X11R6/bin \$ cd ../lib/X11 \$ cd /usr/bin \$ cd ../bin/../bin

Katalog roboczy "."

Zanim skończysz mówić o zespole Płyta CD, należy wspomnieć o kilku innych rzeczach. Po pierwsze, jest inny specjalny katalog «.» , który wskazuje na bieżący katalog. Ten katalog jest używany do uruchamiania plików wykonywalnych znajdujących się w bieżącym katalogu.

\$ ./myprog

W ostatnim przykładzie myprog to Plik wykonywalny znajduje się w bieżącym katalogu, który zostanie uruchomiony do wykonania.

cd i katalog domowy użytkownika

Aby przejść do katalogu domowego, wpisz

\$ Płyta CD

Bez argumentów cd przeniesie cię do twojego katalogu domowego. Dla superużytkownika katalogiem domowym jest zwykle /root, a dla zwykli użytkownicy- /dom/nazwa użytkownika/. Ale co, jeśli chcemy określić konkretny plik znajdujący się w katalogu domowym. Na przykład jako argument do programu „mój prog”? Możesz pisać:

\$ ./myprog /home/user/myfile.txt

Jednak korzystanie z bezwzględnych ścieżek plików nie zawsze jest wygodne. Tę samą operację można wykonać za pomocą ~ –tyldy:

\$ ./mójprog ~/mójplik.txt

~ to specjalna nazwa, która wskazuje na katalog domowy użytkownika w bash.

Katalogi domowe innych użytkowników

Ale co, jeśli musimy wskazać plik w katalogu domowym innego użytkownika? Aby to zrobić, po tyldzie musisz podać nazwę tego użytkownika. Na przykład, aby wskazać plik fredsfile.txt znajdujący się w katalogu domowym użytkownika fred:

\$ ./myprog ~fred/fredsfile.txt

Polecenia Linuksa

Wprowadzenie do ls

Prawdopodobnie znasz już drużynę ls, który wywołany bez argumentów wyświetla listę plików przechowywanych w katalogu roboczym:

\$ cd /usr \$ ls X11R6 doc i686-pc-linux-gnu lib man sbin ssl bin gentoo-x86 include libexec portage share tmp distfiles i686-linux info lokalne portage.old src

Jeśli określisz opcję -a, będziesz mógł zobaczyć wszystkie pliki, w tym ukryte (którego nazwy zaczynają się od kropki).

\$ ls-a. bin gentoo-x86 include libexec portage share tmp .. distfiles i686-linux info lokalne portage.old src X11R6 doc i686-pc-linux-gnu lib man sbin ssl

Szczegółowa lista katalogów

Po komendzie ls jako argument można podać jeden lub więcej plików lub katalogów. Jeśli podasz nazwę pliku, to polecenie ls wyświetli informacje tylko o tym pliku. A jeśli podasz nazwę katalogu, ls pokaże całą jego zawartość. Opcja „-l” polecenia ls może być bardzo przydatne, jeśli chcesz wiedzieć więcej niż tylko nazwy plików dokładna informacja o nich (uprawnienia do plików, nazwa właściciela, czas) Ostatnia zmiana plik i jego rozmiar).

Poniższy przykład pokazuje użycie opcji „-l” aby wyświetlić informacje o plikach przechowywanych w katalogu /usr

\$ ls -l / usr drwxr-xr-x 7 root root 168 Nov 24 14:02 X11R6 drwxr-xr-x 2 root root 14576 Dec 27 08:56 bin drwxr-xr-x 2 root root 8856 Dec 26 12:47 distfiles lrwxrwxrwx 1 root root 9 22 grudnia 20:57 doc -> share/doc drwxr-xr-x 62 root root 1856 27 grudnia 15:54 gentoo-x86 drwxr-xr-x 4 root root 152 12 grudnia 23:10 i686-linux drwxr-xr-x 4 root root 96 Lis 24 13:17 i686-pc-linux-gnu drwxr-xr-x 54 root root 5992 Gru 24 22:30 include lrwxrwxrwx 1 root root 10 Dec 22 20:57 info -> share/info drwxr-xr -x 28 root root 13552 Dec 26 00:31 lib drwxr-xr-x 3 root root 72 Nov 25 00:34 libexec drwxr-xr-x 8 root root 240 Dec 22 20:57 local lrwxrwxrwx 1 root root 9 Dec 22 20 :57 man -> share/man lrwxrwxrwx 1 root root 11 grudnia 8 07:59 portage -> gentoo-x86/ drwxr-xr-x 60 root root 1864 8 grudnia 07:55 portage.old drwxr-xr-x 3 root root 3096 22 grudnia 20:57 sbin drwxr-xr-x 46 root root 1144 24 grudnia 15:32 udostępnij drwxr-xr-x 8 root root 25 ssl lrwxrwxrwx 1 root root 10 22 grudnia 20:57 tmp -> ../var/tmp

Pierwsza kolumna zawiera informacje o uprawnieniach dla każdego pliku na liście. (Nieco później wyjaśnię, która litera oznacza co). Następna kolumna pokazuje liczbę linków do każdego elementu listy. Trzecia i czwarta kolumna to odpowiednio właściciel i grupa pliku. Piąta kolumna to rozmiar. Szósty to czas ostatniej modyfikacji pliku ('czas ostatniej modyfikacji' lub mtime). Ostatnia kolumna to nazwa pliku lub katalogu (jeśli jest to link, to po znaku ‘ –> ‘ to nazwa obiektu, do którego się odnosi).

Jak przeglądać tylko katalogi

Czasami istnieje potrzeba przeglądania informacji tylko o katalogach, a nie o całej ich zawartości. Opcja pomoże w tym zadaniu. '-D', który mówi poleceniu, aby wyświetlało tylko informacje o katalogach. Przykład:

\$ ls -dl /usr /usr/bin /usr/X11R6/bin ../share drwxr-xr-x 4 root root 96 18 grudnia 18:17 ../share drwxr-xr-x 17 root root 576 24 grudnia 09:03 /usr /X11R6/bin drwxr-xr-x 2 root root 14576 27 grudnia 08 :56 /usr/bin

Lista rekurencyjna i informacje o i-węźle

Akcja opcji '-R' działanie przeciwne '-D'. Pozwala na rekurencyjne wyświetlanie informacji o plikach w katalogu. Najpierw wyświetlana jest zawartość katalogu najwyższego poziomu, następnie kolejno zawartość wszystkich podkatalogów i tak dalej. Wyjście tego polecenia może być dość duże, więc nie podajemy jego przykładu, ale możesz spróbować samodzielnie, wpisując wiersz poleceńls -R' lub ' ls-RL‘.

I wreszcie opcja '-i' używany do wyprowadzania i-węzłów każdego obiektu systemu plików.

\$ ls -i / usr 1409 314258 X11R6 i686-linux libexec 43090 13394 sbin 1417 1513 bin i686-pc-linux-gnu 5120 udział lokalny 13408 8316 pliki dystrybucyjne 1517 zawiera 776 man src 23779 43 1386 doc portage info 93892 36737 70744 ssl 1585 gentoo- 784 tmp

Czym są i-węzły?

Każdy obiekt systemu plików (plik, katalog ...) ma swój unikalny numer, zwany i-węzeł(numer i-węzła). Ta informacja może wydawać się nieistotna, ale zrozumienie funkcji i-węzłów pomoże ci zrozumieć wiele operacji na systemie plików. Na przykład spójrzmy na «.» I «..» jak linki obecne w każdym katalogu. Aby zrozumieć, czym jest katalog «..» , znajdź i-węzeł katalogu /use/local

\$ ls -id /usr/local 5120 /usr/lokalny

Jak widać, i-węzeł katalogu /usr/local to 5120. Zobaczmy teraz, jaki i-węzeł ma katalog /usr/local/bin/..:

\$ ls -id /usr/local/bin/.. 5120 /usr/lokalny/bin/..

Okazuje się, że i-węzły katalogów /usr/local i /usr/local/bin/.. są takie same! Oznacza to, że dwie nazwy odnoszą się do i-węzła 5120: /usr/local i /usr/local/bin/.. To znaczy, są to dwie różne nazwy dla tego samego katalogu. Każdy i-węzeł wskazuje określoną lokalizację na dysku.

Z każdym i-węzłem może być powiązanych wiele nazw obiektów systemu plików. Liczba „synonimów” pliku (obiekty systemu plików odnoszące się do jednego i-węzła) pokazuje liczbę w drugiej kolumnie danych wyjściowych polecenia „ ls-l‘.

\$ ls -dl /usr/local drwxr-xr-x 8 root root 240 22 grudnia 20:57 /usr/local

W tym przykładzie widać (druga kolumna), że do katalogu /usr/local odwołuje się 8 różnych obiektów systemu plików. Oto ich imiona:

/usr/lokalny /usr/lokalny/. /usr/local/bin/.. /usr/local/games/.. /usr/local/lib/.. /usr/local/sbin/.. /usr/local/share/.. /usr/local/ nauka/..

mkdir

Rzućmy okiem na polecenie mkdir. Służy do tworzenia nowych katalogów. Poniższy przykład demonstruje tworzenie trzech nowych katalogów (tic, tac, toe) w katalogu /tmp

\$ cd /tmp $ mkdir kółko i krzyżyk

Domyślne polecenie mkdir nie można utworzyć zagnieżdżonej struktury katalogów. Dlatego jeśli potrzebujesz utworzyć kilka katalogów zagnieżdżonych ( wspaniały), wtedy będziesz musiał wywołać to polecenie trzy razy po kolei:

\$ mkdir wygrał/der/pełny mkdir: nie można utworzyć katalogu "won/der/ful": Brak takiego pliku lub katalogu \$ mkdir wygrał \$ mkdir wygrał/der \$ mkdir wygrał/der/pełny

Możesz uprościć tę operację, dodając opcję '-P' do polecenia mkdir. Ta opcja umożliwia utworzenie zagnieżdżonej struktury katalogów:

\$ mkdir -p łatwe/jako/pie

Aby dowiedzieć się więcej o możliwościach tego narzędzia, przeczytaj pomoc wywoływaną przez polecenie mężczyzna mkdir. Pomoc jest dostępna dla prawie wszystkich poleceń w tym podręczniku (na przykład mężczyzna jest), oprócz Płyta CD, dlatego jest wbudowany w bash (dla takich poleceń pomoc nazywa się tak: CD z pomocą)

dotykać

Przejdźmy do nauki poleceń cp I mv, używany do kopiowania, zmiany nazwy i przenoszenia plików i katalogów. Ale wcześniej utwórzmy pusty plik w katalogu /tmp za pomocą polecenia dotykać:

\$ cd /tmp \$ dotknij kopiuj

Komenda dotykać aktualizuje czas ostatniego dostępu do pliku (szósta kolumna wyjścia polecenia) ls-l), jeśli już istnieje, lub tworzy nowy pusty plik, jeśli jeszcze nie istnieje. Po tej operacji powinniśmy mieć pusty plik /tmp/kopiuj.

Echo

Teraz, gdy mamy pusty plik, napiszmy do niego ciąg tekstowy za pomocą polecenia Echo, który wypisuje przekazany do niego argument na standardowe wyjście (w naszym przypadku terminal tekstowy).

\$ echo "pierwszy plik" pierwszy plik

Aby zapisać ciąg do naszego pliku, przekierowujemy do niego wyjście polecenia Echo:

\$ echo "pierwszy plik" > kopiuj

Podpisać > (większe) nakazuje powłoce przekierowanie wyjścia polecenia po lewej stronie do nazwy pliku po prawej stronie. Jeśli plik o tej samej nazwie nie istnieje, zostanie utworzony automatycznie. A jeśli taki plik już istnieje, to zostanie nadpisany (cała jego zawartość zostanie usunięta przed zapisaniem naszej linii). Komenda 'czy-l' pokaże, że rozmiar naszego pliku wynosi teraz 10 bajtów - dziewięć bajtów zajmuje słowo 'firstfile', a jeden bajt to znak nowego wiersza.

\$ ls -l kopiuj-rw-r--r-- 1 root root 10 grudnia 28 14:13 copyme

kot i cp

Aby wyświetlić zawartość pliku na terminalu, użyj polecenia Kot:

\$ kot kopia pierwszy plik

Teraz możemy zacząć analizować podstawową funkcjonalność polecenia cp. To polecenie przyjmuje dwa argumenty. Pierwsza to nazwa już istniejącego pliku ('copyme'), druga to nazwa nowej kopii, którą chcemy wykonać ('copyme').

\$ cp copyme skopiowane

Możemy się upewnić, że nowa kopia plik ma inny numer i-węzła (oznacza to, że otrzymaliśmy naprawdę nowy oddzielny plik, a nie tylko link do starego)

\$ ls -i kopiuję skopiowany 648284 kopia

mv

Teraz zastosujmy polecenie mv zmienić nazwę pliku ("copiedme" -> "movedme"). Numer i-węzła po tej operacji nie zmienia się, zmienia się tylko nazwa pliku.

\$ mv skopiował-mnie-przeniósł-mnie \$ ls - przeniosłem się 648284 przeniósł mnie

Numer i-węzła nie zmienia się, chyba że plik o zmienionej nazwie pozostaje w tym samym systemie plików, co plik oryginalny. W dalszej części tego samouczka przyjrzymy się bliżej rozmieszczeniu systemów plików.

Komenda mv pozwala nie tylko zmieniać nazwy plików, ale także je przenosić. Na przykład, aby przenieść plik /var/tmp/mojplik.txt do katalogu /dom/użytkownik musisz wydać polecenie:

\$ mv /var/tmp/mójplik.txt /home/użytkownik

Plik zostanie przeniesiony do katalogu domowego użytkownika użytkownik nawet jeśli znajduje się w innym systemie plików (w tym przypadku plik zostanie skopiowany do nowej lokalizacji, a oryginał zostanie usunięty). Jak można się domyślić, przeniesienie pliku do innego systemu plików zmienia jego i-węzeł. Dzieje się tak, ponieważ każdy system plików ma własny zestaw i-węzłów.

Należy zauważyć, że istnieje możliwość, że nowy przypisany numer i-węzła może być taki sam jak stary, ale jest bardzo mały.

Aby przenieść kilka plików jednocześnie do jednego katalogu, musisz napisać:

\$ mv /var/tmp/mójplik1.txt /var/tmp/mójplik2.txt /home/użytkownik \$ mv -t /home/user /var/tmp/mójplik1.txt /var/tmp/mójplik2.txt

Jeśli dodasz opcję „-v”, na ekranie zostanie wyświetlony raport z wykonanej operacji:

\$ mv -vt /home/user /var/tmp/mójplik1.txt /var/tmp/mójplik2.txt"/var/tmp/mójplik1.txt" -> "/home/user/mójplik1.txt" "/var/tmp/mójplik2.txt" -> "/home/użytkownik/mójplik2.txt"

Ostatnio opisywałem polecenia do poruszania się po katalogach w terminalu Linux. Postanowiłem więc kontynuować opowieść o komendach w konsoli. Więc ruchy wydają się być uporządkowane. Teraz chcę bardziej szczegółowo zastanowić się, jakie ścieżki do katalogów znajdują się w konsoli.

Przyjrzyjmy się najpierw najbardziej znanej wszystkim ścieżce do naszych plików i katalogów, czyli ścieżce bezwzględnej. Otwórz terminal i wydaj polecenie, które wypisuje pełną ścieżkę do twojego katalogu domowego. Mówiłem o tym zespole niedawno, tutaj. Wchodzić pwd:


:~$ pwd
/dom/dante


Jak widzisz to polecenie konsoli wyświetla pełną ścieżkę, zaczynając od katalogu głównego. Właśnie ostatnio opisałem taki ruch po katalogach, ten ruch ścieżką absolutną. Ale to nie wszystkie możliwości poruszania się po kategoriach naszego systemu operacyjnego. W system operacyjny Linux, nadal istnieje możliwość korzystania ze ścieżek względnych.

Ścieżki względne w konsoli liczą kategorie względem kategorii, w której się znajdujesz. Mogą być używane z ".." dwie kropki przed folderem, do którego chcemy przejść. Chodźmy gdzieś w naszym systemie operacyjnym. Na przykład w folderze usr i sprawdź jego zawartość za pomocą polecenia ls.

[e-mail chroniony]:~$ cd /usr
[e-mail chroniony]:/usr$ls

[e-mail chroniony]:/usr$

Tutaj widzimy listę dostępnych katalogów. Przejdźmy teraz do katalogu ” dzielić».

[e-mail chroniony]:~$ cd /usr/share


Więc teraz jesteśmy w kategorii /usr/share jak widzimy. Przejdźmy teraz do kategorii, która jest na tym samym poziomie, co kategoria, w której jesteśmy. Na przykład w kategorii lokalny”. Można to zrobić z taką ścieżką bezwzględną.

[e-mail chroniony]:~$ cd /usr/local

[e-mail chroniony]:/usr/share$pwd
/usr/share
[e-mail chroniony]:/usr/share$


Jak widzisz, wyświetliłem dla Ciebie w konsoli pełną ścieżkę do miejsca, w którym się znajdujesz. Wiemy, że katalog " lokalny' jest na tym samym poziomie co katalog ' dzielić” i możemy użyć takiego polecenia.

[e-mail chroniony]:/usr/share$ cd ../local
[e-mail chroniony]:/usr/lokalny$


Jak widać, polecenie zapytania stało się znacznie prostsze. Ale dzieje się tak tylko wtedy, gdy pamiętasz katalogi, które są na tym samym poziomie, co twój katalog roboczy, a ja nie zawsze pamiętam inne katalogi w konsoli.

Aby przejść do następnego katalogu, wystarczy w konsoli wpisać komendę związaną z katalogiem roboczym. W tym celu użyj zamiast ".." dwa punkty "." o jeden punkt i przeniesiesz się względem katalogu w konsoli, w którym aktualnie się znajdujesz. Wróćmy do katalogu /usr i spójrz jeszcze raz na to, co tam jest.

[e-mail chroniony]:/usr/local$ cd /usr
[e-mail chroniony]:/usr$ls
gry bin obejmują lib local sbin share src
[e-mail chroniony]:/usr$


Przejdźmy teraz do katalogu ” dzielić» względem katalogu, w którym się teraz znajdujemy. Aby to zrobić, wejdź w konsoli

[e-mail chroniony]:/usr$ cd ./local
[e-mail chroniony]:/usr/lokalny$


Jak widać, używanie ścieżek względnych może znacznie zredukować polecenia wprowadzane w konsoli. Linux.

Podobał Ci się artykuł? Podziel się z przyjaciółmi!
Czy ten artykuł był pomocny?
TAk
Nie
Dziękuję za opinię!
Coś poszło nie tak i Twój głos nie został policzony.
Dzięki. Twoja wiadomość została wysłana
Znalazłeś błąd w tekście?
Wybierz, kliknij Ctrl+Enter a my to naprawimy!