Jak przeglądać katalog główny w Linuksie mint?

1

Muszę przeglądać katalog główny w Linuksie mint z polecenia.

próbowałem

sudo cd /root

Mówi, że nie znaleziono polecenia sudo cd.

cd /root

mówi odmowa pozwolenia.

Muszę także wymienić pliki zaczynające się od „abc” w katalogu głównym. Podczas wyświetlania plików nie mogę zawierać podkatalogów katalogu / root.

Czy ktoś może pomóc?

techfun
źródło
3
Po pierwsze, nie możesz użyć sudo z cd. jeśli potrzebujesz znaku zachęty roota, albo uruchom powłokę jako root, albo uruchom sudo -i uruchomić serię poleceń jako root. po drugie, katalog główny to /, nie / root. lub jeszcze lepiej, użyj sudo ls .... /root aby uruchomić polecenie listy jako root.
Frank Thomas

Odpowiedzi:

3

Po pierwsze, katalog główny to /, nie /root. /root jest katalogiem domowym root użytkownik. Również nie potrzebujesz sudo aby wyświetlić jego zawartość. Po prostu zrób:

ls /

Aby wyświetlić listę wszystkich plików (i katalogów) od abc, chcesz

ls /abc*

Aby przejść do katalogu głównego, po prostu uruchom cd /.


Komenda ls /abc* traktuje pliki i foldery inaczej. The glob jest rozwijany przez powłokę (bash) do wszystkich plików i folderów rozpoczynających się od abc. ls wyświetli listę zawartość wszystkich katalogów, które mu dajesz. Na przykład:

$ ls -l
total 4
-rw-r--r-- 1 terdon terdon    0 Jan 23 20:25 dfile.txt
drwxr-xr-x 2 terdon terdon 4096 Jan 23 20:25 dir1
$ ls dir1
-rw-r--r-- 1 terdon terdon 0 Jan 23 20:25 file2.txt

Mam więc katalog o nazwie dir1 i plik o nazwie dfile.txt. Katalog zawiera inny plik, file1.txt. Teraz, jeśli ucieknę ls d*, wyświetli plik dfile.txt i zawartości katalogu dir1:

$ ls d*
dfile.txt

dir1:
file2.txt

Jeśli nie chcesz ls aby wyświetlić zawartość katalogów, uruchom ją za pomocą -d opcja. Jak wyjaśniono w man ls:

   -d, --directory
          list  directory entries instead of contents, and do not derefer‐
          ence symbolic links

Na przykład:

$ ls -d d*
dfile.txt  dir1

Aby wyświetlić listę wszystkich plików i katalogów zaczynających się od abc w / bez wyświetlania zawartości katalogu, uruchom to:

$ ls -d /abc*

Alternatywnie, jeśli chcesz tylko pliki, użyj find:

$ find / -maxdepth 1 -type f -name "abc*"

Z man find:

   -maxdepth levels
          Descend at most levels (a non-negative integer) levels of direc‐
          tories below the command line arguments. 
   -name pattern
          Base of  file  name  (the  path  with  the  leading  directories
          removed)  matches  shell  pattern  pattern.
   -type c
          File is of type c:

          d      directory
          f      regular file
terdon
źródło
@techfun zobacz zaktualizowaną odpowiedź.
terdon
3

Katalog główny (cała struktura katalogów) to „/”, a nie „/ root”.

Jeśli zrobisz

sudo cd /

Uruchomisz podpowłokę, która zmieni katalog na / następnie wyjdź. Nadal jesteś tam, gdzie byłeś.

Możesz eksplorować „/” po prostu zmieniając go

cd / 

i będziesz mógł odczytać pliki, do których ma prawo Twój użytkownik lub grupa. Lepiej niż robić to jako superużytkownik ... bardzo niebezpieczny.

Serdecznie radzę ci rozejrzeć się tutaj: http://www.tutorialspoint.com/unix/unix-getting-started.htm

Rmano
źródło