Как просмотреть корневой каталог в Linux Mint?

1

Мне нужно просмотреть корневой каталог в Linux Mint из команды.

Я старался

sudo cd /root

Это говорит, что команда sudo cd не найдена.

cd /root

говорит, что разрешение отказано.

Также мне нужно перечислить файлы, начинающиеся с «abc» внутри корневого каталога. При перечислении файлов я не должен включать подкаталоги / root.

Кто-нибудь может помочь?

techfun
источник
3
Во-первых, вы не можете использовать sudo с cd, если вам нужна корневая подсказка, либо выполните оболочку от имени root, либо запустите sudo -i запустить серию команд от имени пользователя root. во-вторых, корневым каталогом является /, а не / root. или еще лучше, используйте sudo ls .... /root запустить вашу команду списка от имени root.
Frank Thomas

Ответы:

3

Прежде всего, корневой каталог /не /root, /root это домашний каталог root пользователь. Кроме того, вам не нужно sudo перечислить его содержимое. Просто делать:

ls /

Чтобы вывести список всех файлов (и каталогов), начинающихся с abc, ты хочешь

ls /abc*

Чтобы перейти в корневой каталог, просто запустите cd /,


Команда ls /abc* обрабатывает файлы и папки по-разному. шарик расширяется вашей оболочкой (bash) для всех файлов и папок, начиная с abc, ls перечислю содержание из любых каталогов вы даете это. Например:

$ 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

Итак, у меня есть каталог под названием dir1 и файл с именем dfile.txt, Каталог содержит другой файл, file1.txt, Теперь, если я бегу ls d*, он будет перечислять файл dfile.txt а также содержимое каталога dir1:

$ ls d*
dfile.txt

dir1:
file2.txt

Если не хочешь ls чтобы просмотреть содержимое каталогов, запустите его с -d вариант. Как объяснено в man ls:

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

Так, например:

$ ls -d d*
dfile.txt  dir1

Чтобы вывести список всех файлов и каталогов, начинающихся с abc в / без перечисления содержимого каталога, запустите это:

$ ls -d /abc*

В качестве альтернативы, если вы хотите только файлы, использовать find:

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

От 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
источник
@techfun см обновленный ответ.
terdon
3

Корневой каталог (вся структура каталогов) - «/», а не «/ root».

Если вы делаете

sudo cd /

Вы запустите подоболочку, которая изменит каталог на / затем выйдите. Вы все еще там, где вы были.

Вы можете изучить "/", просто перейдя на него

cd / 

и вы сможете читать файлы, на которые имеет право ваш пользователь или группа. Лучше, чем делать это как суперпользователь ... очень опасно.

Я бы сердечно посоветовал вам посмотреть здесь: http://www.tutorialspoint.com/unix/unix-getting-started.htm

Rmano
источник