Kodomo

Пользователь

Практикум №3

Команда ls – одна из наиболее часто используемых команд в Bash. Её функция заключается в выведении информации о файлах в рассматриваемой директории. Синтаксис ls выглядит следующим образом:

ls [OPTION]... [FILE]...

Для более четкого определения формата вывода информации о содержимом директории пользователь может воспользоваться опциями. В статье будут рассмотрены некоторые из них: -h, -S и -r.

Описание опции –h

Опция -h (другой вариант: --human-readable – читаемое человеком) позволяет при использовании вместе с опциями -s или -l указать размер в "человекопонятном виде", то есть в блоках – единицах измерения, наиболее удобных для прочтения человеком c округлением в меньшую сторону с точностью до одного знака после разделителя, если значение от 1 до 9.9 включительно, и с точностью до целого, если значение 10 и больше. К примеру, если размер файла составляет 1030 байт, размер будет выведен как 1K (1 килобайт), а если 6081450 байт - то как 5.8M (5.8 мегабайт).

Без указания опции -h размер указывается в байтах и без подписи размерности, а суммарный размер содержимого директории – в блоках, но без указания размерности:

sevartem@kodomo:~$ ls /folder -l 
total 313
-rw-r--r--. 1 username year-24  948 Sep 26 09:47 file_1.sh
-rw-r--r--. 1 username year-24 319788 Sep 26 09:52 file_5.pdb
sevartem@kodomo:~$

При указании опции -h размерность (если размер файла выше 1 килобайта, иначе без подписи) подписывается рядом с величиной и имеет тот вид, с которым размер файла будет наиболее удобным для понимания (например, написать 313K (то есть 313 килобайт) вместо 319788 (то есть 319788 байт):

sevartem@kodomo:~$ ls /folder -l -h
total 313K
-rw-r--r--. 1 username year-24  948 Sep 26 09:47 file_1.sh
-rw-r--r--. 1 username year-24 313K Sep 26 09:52 file_5.pdb
sevartem@kodomo:~$


Описание опции –S

Опция -S сортирует выводимые файлы и папки по убыванию их размера. Если несколько файлов или папок имеют одинаковый размер, они сортируются в алфавитном порядке.

Без указания опции -S (для наглядности введены опции -h и -s) файлы выводятся в алфавитном порядке:

sevartem@kodomo:~$ ls -h -s /folder
0 an_empty_folder  170M BEspy.pdf  22K COPY_letter.txt  2.5T homework  22K letter.txt  170M matan  5.2K virus.exe
sevartem@kodomo:~$

При указании опции -S файлы и папки выводятся по убыванию размера:

sevartem@kodomo:~$ ls -h -s -S /folder
2.5T homework  170M BEspy.pdf  170M matan  22K COPY_letter.txt  22K letter.txt  5.2K virus.exe  0 an_empty_folder
sevartem@kodomo:~$

Примечания:

1. homework, matan и an_empty_folder – папки с файлами (или без файлов).

2. Приведен выдуманный пример, поскольку примеры с реальными директориями не были бы достаточно наглядными и не отражали бы все особенности опции -S.


Описание опции -R

Опция -R рекурсивно проверяет и демонстрирует содержимое всех каталогов, являющихся подкаталогом выбранной папки

Без опции -R команда ls выводит содержимое только рассматриваемой папки

sevartem@kodomo:~$ ls ~
dead.letter  Desktop  Downloads  mail  public_html  temp  term1  test
sevartem@kodomo:~$

С опцией -R команда ls выводит содержимое всех подкаталогов текущей папки, причем перед выводом содержимого на предыдущей строке выводится расположение рассматриваемого каталога:

sevartem@kodomo:~$ ls -R ~
/home/students/y24/sevartem:
dead.letter  Desktop  Downloads  mail  public_html  temp  term1  test

/home/students/y24/sevartem/Desktop:

/home/students/y24/sevartem/Downloads:
2_5453984149473878580.pdf

/home/students/y24/sevartem/mail:

/home/students/y24/sevartem/public_html:

/home/students/y24/sevartem/temp:
sevartem

/home/students/y24/sevartem/term1:
credits  genome  pr3  pr4  pr5  pr6  pr7

/home/students/y24/sevartem/term1/credits:
aminoacid_description.txt  count_rRNA.sh.save.1  file_3.png                                     out_C.txt
aminoacid_formula.png      cw6.txt               file_4.png                                     pr5.out
count_hypotheticals.sh     errors.txt            file_5.pdb                                     pr5.sh
count_rRNA.sh              file_1.sh             GCF_004001325.1_ASM400132v1_feature_table.txt  sevastyanov_photo.jpg
count_rRNA.sh.save         file_2.fasta          lines.out                                      strange_files

/home/students/y24/sevartem/term1/credits/strange_files:
'aa*'      'bssk*f'   'efsk*z'   'ge*llhv'  'jze*k'    'ogstim*'  'r*wg'     's*m'      'ta*zxl'   'wa*b'     'ylv*kjn'
'a*ajw'    'bve*knx'  'eooc*'    'gna*ix'   'la*c'     'ovnfu*g'  'r*z'      'sp*'      'tesjto*'  'wgr*'     'yrh*'
'ad*pb'    'csgw*i'   'er*'      'grg*hl'   'lex*s'    'pdgabi*'  'sc*ml'    'sph*ko'   'trom*a'   'wha*'     'zvd*t'
'afosh*'   'dr*'      'ey*a'     'hmja*'    'lfvnbd*'  'pgedcw*'  'sh*bgpd'  'sp*lph'   'trry*o'   'whyer*z'
'ak*gszg'  'dsch*ee'  'ez*'      'hrw*wx'   'moa*'     'pgwr*'    'sipg*w'   'ssem*ux'  'v*b'      'wsob*'
'aumcch*'  'ea*ufgc'  'fbr*y'    'ifivjd*'  'msek*f'   'prw*b'    'si*smw'   'svm*o'    'vb*'      'wuls*'
'awsb*f'   'e*aylzo'  'fiwa*k'   'imtr*'    'mxa*mb'   'rbwz*re'  'skmybg*'  'sw*f'     'vp*rzot'  'xak*'
'ayh*'     'ec*er'    'fmel*da'  'jetdc*g'  'nwekmn*'  'r*f'      's*lebhg'  'syk*rcp'  'v*yp'     'xs*fcj'
'bep*gvr'  'ed*'      'fsas*'    'jkss*'    'oepeo*'   'rp*o'     'slz*'     'szv*'     'vzy*i'    'ye*sodl'

/home/students/y24/sevartem/term1/genome:
GCF_004001325.1_ASM400132v1_cds_from_genomic.fna  GCF_004001325.1_ASM400132v1_genomic.fna
GCF_004001325.1_ASM400132v1_feature_table.txt

/home/students/y24/sevartem/term1/pr3:

/home/students/y24/sevartem/term1/pr4:
text.txt

/home/students/y24/sevartem/term1/pr5:
coll.txt  cols.tsv  FT  rows.tsv

/home/students/y24/sevartem/term1/pr6:
COPY_feature_table.txt  pr5.sh  pwd.sh

/home/students/y24/sevartem/term1/pr7:
cds.csv

/home/students/y24/sevartem/test:
man_ls.txt  sevartem
sevartem@kodomo:~$

Users/sevartem/pr3 (последним исправлял пользователь sevartem 2024-11-04 08:52:50)