A A A
logo2




Kopiowanie plików



Aby skopiować plik można użyć polecenia cp. Po spacji należy podać ścieżkę do pliku, a następnie ścieżkę do miejsca gdzie ma zostać skopiowany plik.

owi@laptop:~$ cp ./unix/nazwapliku1 ./

Plik nazwapliku1 z katalogu unix został skopiowany do bieżącego katalogu.


Na podobnej zasadzie działa polecenie mv. Nie kopiuje ono, ale przenosi plik z jednego miejsca na drugie.

owi@laptop:~$ mv ./unix/nazwapliku1 ./

Plik nazwapliku1 z katalogu unix został przeniesiony do bieżącego katalogu.




Wyświetlanie treści pliku stronami



Plik możemy wyświetlić stronami za pomocą polecenia more.

owi@laptop:~$ more /etc/passwd


UWAGA!
Polecenie more działa jedynie pod wybranymi systemami. Tę samą funkcję mogą też pełnić polecenia: pg lub less.




Wyświetlanie pierwszych oraz ostatnich linii pliku



Plik passwd zawiera bardzo wiele linii. Aby wyświetlić pierwsze 10 służy do tego polecenie head.

owi@laptop:~$ head /etc/passwd

Można także wyświetlić dowolną ilość początkowych linii w pliku. Należy użyć polecenia head -n liczba linii.

owi@laptop:~$ head -n15 /etc/passwd

Aby wyświetlić dowolną ilość linii od końca należy użyć polecenia tail.

owi@laptop:~$ tail -n4 /etc/passwd




Wyświetlanie liczby bajtów, słów i linii w pliku



Aby wyświetlić liczbę bajtów, słów i linii w plikach można użyć polecenia wc.

owi@laptop:~$ wc /etc/passwd

Często jednak przydatna jest komenda wc z parametrem -l. Używa się jej by wyświetlić jedynie liczbę linii.

owi@laptop:~$ wc -l /etc/passwd




Sortowanie zawartości pliku



Aby posortować zawartość pliku można użyć polecenia sort.

owi@laptop:~$ sort nazwapliku

Zawartość pliku zostanie posortowana oraz wyświetlona na standardowym wyjściu.



Wyświetlanie niepowtarzających się linii w pliku



Aby wyświetlić niepowtarzające się linie w pliku można użyć polecenia uniq.

owi@laptop:~$ uniq nazwapliku

Polecenie uniq pozwala wyświetlić unikatowe linie z pliku, ale tylko wtedy, gdy linie powtarzające się występują obok siebie. Plik musi być więc wcześniej posortowany!

UWAGA!
Aby najpierw posortować plik, a pózniej wyświetlić jedynie unikatowe linie można użyć potoków.




Wyświetlanie wybranych kolumn z pliku



Aby wyświetlić jedynie wybrane kolumny z pliku należy użyć polecenia cut. Parametr -f(liczba) służy do określenia, która kolumna ma zostać wyświetlona.

owi@laptop:~$ cut -f1 nazwapliku

W ten sposób na standardowym wyjściu zostanie wyświetlona tylko pierwsza kolumna z pliku. Czasami zdarza się, że kolumny w pliku są oddzielone nie spacjami, a innymi znakami. Tak jest w przypadku pliku passwd, gdzie kolumny oddziela znak ":". Aby wypisać tylko pierwszą kolumnę z pliku /etc/passwd należy użyć parametru -d"znak", gdzie znak oznacza symbol jakim oddzielone są kolumny.

owi@laptop:~$ cut -f1 -d":" /etc/passwd

Można wyświetlić więcej niż jedną kolumnę wystarczy tylko oddzielić numery kolumn przecinkami!

owi@laptop:~$ cut -f1,3 -d":" /etc/passwd



Łączenie plików kolumnami.



Aby połączyć dwa pliki i wypisać je na standardowym wyjściu można użyć polecenia paste. Można łączyć ze sobą więcej plików wystarczy dopisać nazwę kolejnego pliku.

owi@laptop:~$ paste plik1 plik2

Aby połączyć ze sobą dwa pliki i oddzielić kolumny znakiem innym niż spacja należy użyć parametru -d"znak". W miejsce znak wpisać symbol jakim mają być oddzielone kolumny.

owi@laptop:~$ paste plik1 plik2 -d"-"



Porównywanie plików



Aby porównać do siebie dwa pliki należy użyć polecenia cmp, a następnie podać nazwy plików, które mają zostać porównane.

owi@laptop:~$ cmp plik1 plik2

Jeżeli pliki niczym się nie różnią nic nie zostanie wypisane, a gdy będą jakieś różnice to zostanie wypisany numer linii w których pliki nie są takie same.


Porównać dwa pliki możemy także w inny sposób. Polecenie diff ma za zadanie wyświetlać, w których liniach pliki się różnią.

owi@laptop:~$ diff plik1 plik2

Podobnie jak przy użyciu komendy cmp, gdy nie będzie żadnych różnic nie zostanie nic wyświetlone, natomiast gdy będą jakieś różnice zostaną wyświetlone numery linii.



Autor: Aleksandra Przybyło
aleksandraprzybylo@gmail.com