Files.md 5.8 KB

Работа с файлами и папками в linux

В отличии от windows, в linux нет дисков C, D, E.. Есть только корень файловой системы /, в котором создаются папки и файлы, а также к любой пустой папке можно подключить другой диск. И после подключения этого диска, его содержимое можно будет посмотреть например в директории /run/media/disk (Это только пример. реальное расположение диска можно узнать, введя команду lsblk).

Папка пользователя называется домашней папкой, и обычно находится в /home/user_name. Например папкой пользователя kaya613 будет /home/kaya613/. Также, вместо пути к домашней папке можно использовать ~

Чтобы посмотреть файлы и папки, находящиеся в текущей папке, можно воспользоваться командой ls.

$ ls
 Desktop   Documents   Downloads  'вв с похмелья.jpg'

Чтобы также увидеть скрытые файлы и папки (в linux все файлы, имя которых начинается с точки, являются скрытыми), воспользуемся командой ls с коротким аргументом -a

$ ls -a
 .    .bash_logout    .bashrc   Desktop     Downloads	 .oh-my-zsh-cache   .viminfo		  .zcompdump-stripwire-5.8   .zshrc
 ..   .bash_profile   .cache    Documents   .oh-my-zsh	 .screenrc	    .zcompdump-siie-5.8   .zsh_history		    'вв с похмелья.jpg'

А чтобы увидеть подробную информацию о файлах и папках, можно использовать короткий аргумент -l

$ ls -l
итого 548
drwxr-xr-x 2 kaya613 users   4096 авг 27 09:56  Desktop
drwxr-xr-x 2 kaya613 users   4096 авг 27 09:56  Documents
drwxr-xr-x 2 kaya613 users   4096 авг 27 09:57  Downloads
-rwxr-xr-x 1 kaya613 users 544891 авг 27 09:57 'вв с похмелья.jpg'

Также, короткие аргументы можно комбинировать

$ ls -la
итого 692
drwx------  8 kaya613 users   4096 авг 27 10:04  .
drwxr-xr-x  6 root root    4096 авг 27 09:55  ..
-rw-r--r--  1 kaya613 users     21 мая 22 15:29  .bash_logout
-rw-r--r--  1 kaya613 users     57 мая 22 15:29  .bash_profile
-rw-r--r--  1 kaya613 users    141 мая 22 15:29  .bashrc
drwx------  3 kaya613 users   4096 июн 17 11:38  .cache
drwxr-xr-x  2 kaya613 users   4096 авг 27 09:56  Desktop
drwxr-xr-x  2 kaya613 users   4096 авг 27 09:56  Documents
drwxr-xr-x  2 kaya613 users   4096 авг 27 09:57  Downloads
drwxr-xr-x 10 kaya613 users   4096 июн 17 11:39  .oh-my-zsh
drwxr-xr-x  2 kaya613 users   4096 июн 17 11:39  .oh-my-zsh-cache
-rw-r--r--  1 kaya613 users   3729 фев  6  2020  .screenrc
-rw-------  1 kaya613 users  10456 июн 17 11:48  .viminfo
-rw-r--r--  1 kaya613 users  43333 авг 27 09:56  .zcompdump-siie-5.8
-rw-r--r--  1 kaya613 users  43302 июн 17 11:39  .zcompdump-stripwire-5.8
-rw-------  1 kaya613 users    735 авг 27 10:04  .zsh_history
-rw-r--r--  1 kaya613 users   3611 июн 17 11:39  .zshrc
-rwxr-xr-x  1 kaya613 users 544891 авг 27 09:57 'вв с похмелья.jpg'

Ещё после команды ls можно написать путь к папке, содержимое которой мы хотим посмотреть

$ ls -lh ../../usr
итого 508K
drwxr-xr-x   6 root root 132K авг 26 17:18 bin
drwxr-xr-x 488 root root  40K авг 26 17:18 include
drwxr-xr-x 244 root root 248K авг 26 17:18 lib
drwxr-xr-x  31 root root  40K авг 25 06:54 lib32
lrwxrwxrwx   1 root root    3 авг 21 14:19 lib64 -> lib
drwxr-xr-x  11 root root 4,0K июл 18  2019 local
lrwxrwxrwx   1 root root    3 авг 21 14:19 sbin -> bin
drwxr-xr-x 288 root root  20K авг 26 17:18 share
drwxr-xr-x   6 root root 4,0K авг 25 06:54 src
drwxr-xr-x   3 root root 4,0K июл 31 20:24 var

Здесь, аргумент h переводит размер файлов в более понятный формат. .. в пути означает, что мы хотим подняться на папку выше. Например если мы будем находиться в /home/kaya613/, то путь .. будет означать /home/.
В предыдущей команде можно было использовать путь /usr, и получился бы тот же результат.

В подробном выводе ls, первый символ означает тип объекта:

  • -- файл
  • d- папка
  • l- ссылка

Чтобы узнать, в какой папке мы находимся, можно использовать команду pwd

$ pwd
/home/kaya613

Для создания папок используется команда mkdir

$ mkdir notafile

Для удаления папки со всем её содержимым, используется команда rm -rf

$ rm -rf notafile

Можно создать папку, и сразу внутри неё ещё одну папку. В таком случае, нужно будет добавить аргумент p

$ mkdir -p notafile/dir

Создание пустого файла или обновление времени редактирования файла

$ touch filename

Для удаления файла используется команда rm

$ rm .zhistory

cp, mv, less, cut