Poradnik komenda dd czyli nagrywamy plik .iso na pendrive w linuxie
Spisu treści:
- Linux
find
składnię poleceń - Znajdź pliki według nazwy
- Znajdź pliki według rozszerzenia
- Znajdź pliki według typu
- Znajdź pliki według rozmiaru
- Znajdź pliki według daty modyfikacji
- Znajdź pliki według uprawnień
- Znajdź pliki według właściciela
- Znajdź i usuń pliki
- Wniosek
Polecenie
find
jest jednym z najpotężniejszych narzędzi w arsenale administratorów systemu Linux. Wyszukuje pliki i katalogi w hierarchii katalogów na podstawie wyrażenia podanego przez użytkownika i może wykonać określone przez użytkownika działanie na każdym dopasowanym pliku.
Za pomocą polecenia
find
można wyszukiwać pliki i katalogi na podstawie ich uprawnień, typu, daty, własności, rozmiaru i innych. Można go również używać w połączeniu z innymi narzędziami, takimi jak
grep
lub
sed
.
Linux
find
składnię poleceń
Ogólna składnia polecenia
find
jest następująca:
find
- Atrybut
options
kontroluje sposób traktowania dowiązań symbolicznych, opcji debugowania i metody optymalizacji. Atrybutpath…
określa katalog początkowy lub katalogi, w których find przeszuka pliki. Atrybutexpression
składa się z opcji, wzorców wyszukiwania i akcje rozdzielone przez operatorów.
Aby wyszukiwać pliki w katalogu, użytkownik wywołujący polecenie
find
musi mieć uprawnienia do odczytu tego katalogu.
Rzućmy okiem na następujący przykład:
find -L /var/www -name "*.js"
- Opcja
-L
(opcje) informuje komendęfind
aby podążała za dowiązaniami symbolicznymi./var/www
Var/var/www
(ścieżka…) określa katalog, który będzie przeszukiwany. (Wyrażenie)-name "*.js
mówi, aby wyszukać pliki kończące się na.js
(pliki JavaScript).
Znajdź pliki według nazwy
Wyszukiwanie plików według nazwy jest prawdopodobnie najczęstszym zastosowaniem polecenia
find
. Aby znaleźć plik według jego nazwy, użyj opcji
-name
po nazwie pliku, którego szukasz.
Na przykład, aby wyszukać plik o nazwie
document.pdf
w katalogu
/home/linuxize
, użyj następującego polecenia:
find /home/linuxize -type f -name document.pdf
Aby uruchomić wyszukiwanie bez rozróżniania wielkości liter, zmień opcję
-name
pomocą opcji
-iname
:
find /home/linuxize -type f -iname document.pdf
Powyższe polecenie będzie pasować do „Document.pdf”, „DOCUMENT.pdf”..etc.
Znajdź pliki według rozszerzenia
Wyszukiwanie plików według rozszerzenia jest takie samo, jak wyszukiwanie plików według nazwy. Na przykład, aby znaleźć wszystkie pliki z
.log.gz
w katalogu
/var/log/nginx
, możesz użyć:
find /var/log/nginx -type f -name '*.log.gz'
Ważne jest, aby wspomnieć, że gdy używasz znaku wieloznacznego, musisz albo zacytować wzór, albo uciec z symbolu gwiazdki
*
ukośnikiem odwrotnym
\
aby nie został on zinterpretowany przez powłokę.
Aby znaleźć wszystkie pliki, które nie pasują do wyrażenia regularnego
*.log.gz
, możesz użyć opcji
*.log.gz
. Na przykład, aby znaleźć wszystkie pliki, które nie kończą się na
*.log.gz
, należy użyć:
find /var/log/nginx -type f -not -name '*.log.gz'
Znajdź pliki według typu
Czasami może być konieczne wyszukiwanie określonych typów plików, takich jak normalne pliki, katalogi lub dowiązania symboliczne. W Linuksie wszystko jest plikiem.
Aby wyszukać pliki na podstawie ich typu, użyj opcji
-type
i jednego z następujących deskryptorów, aby określić typ pliku:
-
f
: zwykły plikd
: katalogl
: dowiązanie symbolicznec
: urządzenia znakoweb
: urządzenia blokowep
: nazwany potok (FIFO)s
: gniazdo
Na przykład, aby znaleźć wszystkie katalogi w bieżącym katalogu roboczym, użyj:
find. -type d
Typowym przykładem może być rekurencyjna zmiana uprawnień do plików strony internetowej na
644
i uprawnień do katalogu na
755
za pomocą komendy
chmod
:
find /var/www/my_website -type d -exec chmod 0755 {} ;
find /var/www/my_website -type f -exec chmod 0644 {} ;
Znajdź pliki według rozmiaru
Aby znaleźć pliki na podstawie rozmiaru pliku, przekaż parametr
-size
wraz z kryteriami rozmiaru. Możesz użyć następujących sufiksów, aby określić rozmiar pliku:
-
b
: 512-bajtowe bloki (domyślnie)c
: bajtyw
: słowa dwubajtowek
: KilobajtyM
: MegabajtyG
: Gigabajty
Następujące polecenie znajdzie wszystkie pliki o dokładnie
1024
bajtach w katalogu
/tmp
:
find /tmp -type f -size 1024c
Polecenie
find
umożliwia także wyszukiwanie plików, które są większe lub mniejsze niż określony rozmiar.
W poniższym przykładzie szukamy wszystkich plików mniejszych niż
1MB
w bieżącym katalogu roboczym. Zwróć uwagę na symbol minus przed wartością rozmiaru:
find. -type f -size -1M
find. -type f -size +1M
Możesz nawet wyszukiwać pliki w zakresie rozmiarów. Następujące polecenie znajdzie wszystkie pliki o
2MB
od
1
do
2MB
:
find. -type f -size +1M -size 21M
Znajdź pliki według daty modyfikacji
Polecenie
find
może także wyszukiwać pliki na podstawie ich ostatniej modyfikacji, dostępu lub zmiany czasu.
Tak samo jak przy wyszukiwaniu według rozmiaru, użyj symboli plus i minus dla „większego niż” lub „mniejszego niż”.
Powiedzmy, że kilka dni temu zmodyfikowałeś jeden z plików konfiguracyjnych dovecot, ale zapomniałeś, który z nich. Możesz łatwo filtrować wszystkie pliki w katalogu
/etc/dovecot/conf.d
który kończy się na
.conf
i został zmodyfikowany w ciągu ostatnich pięciu dni za pomocą:
find /etc/dovecot/conf.d -name "*.conf" -mtime 5
Oto kolejny przykład filtrowania plików na podstawie daty modyfikacji przy użyciu opcji
-daystart
. Poniższe polecenie wyświetli listę wszystkich plików w katalogu
/home
które zostały zmodyfikowane
30
lub więcej dni temu:
find /home -mtime +30 -daystart
Znajdź pliki według uprawnień
Opcja
-perm
umożliwia wyszukiwanie plików na podstawie uprawnień do plików.
Na przykład, aby znaleźć wszystkie pliki z uprawnieniami dokładnie
775
w katalogu
/var/www/html
, należy użyć:
find /var/www/html -perm 644
Możesz poprzedzić tryb numeryczny znakiem minus
-
lub ukośnikiem
/
.
Gdy slash
/
jest używany jako prefiks, to co najmniej jedna kategoria (użytkownik, grupa lub inne) musi mieć ustawione co najmniej odpowiednie bity, aby plik pasował.
Rozważ następujące przykładowe polecenie:
find. -perm /444
Powyższe polecenie dopasuje wszystkie pliki z uprawnieniami do odczytu ustawionymi dla użytkownika, grupy lub innych osób.
Jeśli jako prefiks zastosowano minus
-
to aby plik pasował co najmniej określone bity muszą być ustawione. Następujące polecenie wyszuka pliki, które mają uprawnienia do odczytu i zapisu dla właściciela i grupy i są czytelne dla innych użytkowników:
Znajdź pliki według właściciela
Aby znaleźć pliki należące do określonego użytkownika lub grupy, użyj opcji
-user
i
-group
.
Na przykład, aby wyszukać wszystkie pliki i katalogi będące własnością użytkownika
linuxize
, uruchomiłbyś:
find / -user linuxize
Oto przykład z prawdziwego świata. Załóżmy, że chcesz znaleźć wszystkie pliki należące do użytkownika
www-data
i zmienić własność dopasowanych plików z
www-data
na
nginx
:
find / -user www-data -type f -exec chown nginx {} ;
Znajdź i usuń pliki
Aby usunąć wszystkie pasujące pliki,
-delete
opcję
-delete
na końcu wyrażenia dopasowania.
Upewnij się, że korzystasz z tej opcji tylko wtedy, gdy masz pewność, że wynik pasuje do plików, które chcesz usunąć. Zawsze dobrze jest wydrukować dopasowane pliki przed użyciem opcji
-delete
.
Na przykład, aby usunąć wszystkie pliki z
.temp
z
/var/log/
którego byś użył:
find /var/log/ -name `*.temp` -delete
-delete
opcją
-delete
należy zachować szczególną ostrożność. Wiersz polecenia Znajdź jest oceniany jako wyrażenie i jeśli najpierw dodasz opcję
-delete
, polecenie usunie wszystko poniżej określonych punktów początkowych.
Jeśli chodzi o katalogi,
find
może usunąć tylko puste katalogi takie same jak
rmdir
.
Wniosek
Pokazaliśmy, jak używać polecenia
find
z różnymi opcjami i kryteriami.
Ten artykuł powinien dać ci podstawową wiedzę na temat lokalizowania plików w systemach Linux. Możesz także odwiedzić stronę podręcznika
find
i przeczytać o wszystkich innych potężnych opcjach polecenia
find
.
Użyj wiersza polecenia, aby nagrać pliki ISO w systemie Windows 10
Dowiedz się, jak nagrać obrazy ISO na dysku CD lub DVD za pomocą wiersza polecenia w systemie Windows 10/8/7. Spowoduje to wyświetlenie programu Windows Disc Image Burner lub isoburn.exe.
Jak utworzyć bazę danych mysql w systemie Linux za pomocą wiersza polecenia
W tym samouczku wyjaśniono, jak używać wiersza polecenia do tworzenia baz danych MySQL lub MariaDB.
Jak usunąć bazę danych MySQL w systemie Linux za pomocą wiersza polecenia
W tym samouczku opisano, jak usunąć (lub upuścić) bazę danych MySQL lub MariaDB za pomocą wiersza polecenia.