NFsec Logo

Przyśpieszanie polecenia: ls

10/05/2019 w CmdLineFu Możliwość komentowania Przyśpieszanie polecenia: ls została wyłączona

W

poprzedniej części – dzięki zmiennej środowiskowej udało nam się przyśpieszyć działanie polecenia grep. Dzisiaj zajmiemy się poleceniem: ls. Jeśli polecenie to zajmuje dłuższy czas dla wylistowania bardzo dużej liczby plików – szczególnie jeśli są one umieszczone na sklastrowanych systemach plików typu Lustre możemy sprawdzić, czy ustawienie zmiennej dla niewyświetlania kolorów podczas listowania przyśpieszy operację:

export LS_COLORS='ex=00:su=00:sg=00:ca=00:'

Czyli prosimy ls o niekolorowanie na listingu plików z bitem setuid/setgid, flagą wykonywalności lub możliwościami opartymi na plikach. Analogicznie możemy przyśpieszyć w określonych warunkach (zależy po jakiej treści sortujemy) sortowanie bardzo dużych plików poprzez ustawienie:

export LC_COLLATE=C
export LANG=C

Tylko musimy liczyć się z faktem, że zmieni się zachowanie sortowania, ponieważ program sort uwzględnia te zmienne przy decydowaniu o jego kolejności. Np. LC_COLLATE o wartości en_US.UTF-8 spowoduje, że małe litery zostaną posortowane przed wielkimi literami.

Więcej informacji: When setting an environment variable gives you a 40x speedup

Graficzna reprezentacja drzewka podkatalogów

04/09/2012 w CmdLineFu Możliwość komentowania Graficzna reprezentacja drzewka podkatalogów została wyłączona

Graficzne drzewko dla podkatalogów za pomocą sed:

ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/   /' -e 's/-/|/'