Како користити команду лс за листање датотека и директоријума на Линук-у

Користимо Линук команду лс сваки дан без размишљања о томе. То је штета. Обратите пажњу и наћи ћете много корисних опција — укључујући и оне које бисте требали додати свом арсеналу командне линије.

лс наводи датотеке и директоријуме

Команда лс је вероватно прва команда са којом се већина Линук корисника сусреће. Они од нас који се мотају око командне линије користе је из дана у дан, а да о томе и не размишљају. То би могло објаснити зашто ова наредба има више него што већина корисника схвата. Ми наводимо датотеке са њим да видимо шта се налази у директоријуму. Датотеке наводимо у дугом формату када желимо да погледамо дозволе за датотеку. Осим тога, мало се узима у обзир.

Команда лс је једна од оних наредби са мноштвом опција. Можда је ово део проблема. Постоји толико много опција, како их прегледати да бисте пронашли оне корисне? А након што сте их пронашли, како их се сећате?

Корисне пермутације команде лс са њиховим низовима опција и параметара су савршени кандидати за псеудониме. У ствари, у већини дистрибуција, оно што сматрате командом „гола“ лс је заправо псеудоним. Између осталог, команда типе се може користити за показати основну дефиницију алијаса. Погледајмо дефиницију лс-а:

тип лс

Параметри –цолор=ауто се аутоматски укључују сваки пут када користите команду лс. То је оно што обезбеђује различите боје за различите типове датотека у листи.

Једноставне лс листе

Свако ко је провео неко време користећи Линук терминал зна да, подразумевано, лс наводи датотеке и директоријуме у тренутном директоријуму.

ls

Ако желите да се ваша листа производи у једној колони, користите опцију -1 (једна датотека по реду):

ls -1

Разговараћемо о том чудном имену датотеке на врху листе за минут.

Коришћење лс-а у различитим директоријумима

Да би лс навео датотеке у директоријуму који није тренутни директоријум, проследите путању до директоријума до лс у командној линији. Такође можете да проследите више од једног директоријума лс-у и да их наведете један за другим. Овде тражимо од лс-а да наведе датотеке у два директоријума, један који се зове „Помоћ“, а други „гц_хелп“.

ls Help gc_help

Када лс наведе садржај првог директоријума он наводи садржај другог. Штампа име сваког директоријума док их обрађује:

  Како користити цурл за преузимање датотека са Линук командне линије

Коришћење образаца датотека

Да бисте селективно навели скуп датотека, користите подударање шаблона. Знак питања „?“ представљаће било који појединачни знак, а звездица „*“ ће представљати било који низ знакова. Да бисте навели све датотеке или директоријуме који имају имена која почињу са „ип_“, користите овај формат:

ls ip_*

Да бисте навели датотеке које имају екстензије „.ц“, користите овај формат:

ls *.c

Такође можете користити лс са греп и користити греп могућности подударања шаблона. Хајде да потражимо све датотеке које имају стринг „_пин_“ у свом имену:

ls | grep _pin_

Ово је скоро исто као да користите лс самостално, са два џокер знака:

ls | grep _pin_
ls *_pin_*

Зашто скоро исто? Обратите пажњу на различите распореде. греп форсира излаз у једно име датотеке по формату линије.

Знакови који се не штампају

Могуће је да се нађете са именом датотеке које има а нештампајући или контролни карактер у свом називу датотеке. Обично се то може десити када проширите архиву коју сте преузели са веба или преузмете гит спремиште, а оригинални аутор је направио грешку при креирању датотеке, али је није приметио.

Наша чудна датотека је једна од ових:

Ако га погледамо у претраживачу датотека и притиснемо „Ф2“ да га преименујемо, знакови који се не штампају су представљени чудним симболом.

Можете користити опцију -б (есцапе) да бисте видели шта назив датотеке заправо садржи. Ова опција узрокује да лс користи излазне секвенце Ц програмски језик за представљање контролних ликова.

ls -b a*

Откривено је да је мистериозни знак знак новог реда, представљен у Ц као „н“.

Игнорисање датотека

Да бисте неке датотеке изоставили из листе, користите опцију –хиде. Претпоставимо да не желите да видите резервне „.бак“ датотеке на листи. Можете користити ову команду:

ls
ls --hide=*.bak

Датотеке „.бак“ нису укључене у другу листу.

Листа дугог формата

Опција -л (дуга листа) узрокује да лс пружи детаљне информације о свакој датотеци.

ls -l

Овде има много информација, па хајде да прођемо кроз њих.

Прва ствар коју лс приказује је укупна величина свих датотека на листи. Затим се свака датотека или директоријум приказује на линији за себе.

Први сет од десет слова и цртица су тип датотеке и дозволе власника, групе и друге датотеке.

Први знак представља тип датотеке. То ће бити један од:

–: Обична датотека.
б: Посебна датотека блока.
ц: Посебна датотека са знаковима.
д: Именик.
л: Симболична веза.
н: Мрежни фајл.
п: Именована цев.
с: Утичница.

Следећих девет знакова су три групе од по три знака који се приказују узастопно. Свака група од три представља дозволе за читање, писање и извршавање, тим редоследом. Ако је дозвола одобрена, биће присутно р, в или к. Ако дозвола није дата, приказује се цртица –.

  Како инсталирати Браве претраживач на Линук

Први скуп од три знака су дозволе за власника датотеке. Други сет од три дозволе је за чланове групе, а последњи сет од три дозволе је за остале.

Понекад је дозвола за извршење за власника представљена с. Ово је сетуид мало. Ако постоји, то значи да се датотека извршава са привилегијама власника датотеке, а не корисника који извршава датотеку.

Дозвола за извршење за групу такође може бити с. Ово је сетгид мало. Када се ово примени на датотеку, то значи да ће датотека бити извршена са привилегијама групе власника. Када се користи са директоријумом, све датотеке креиране у њему ће преузети групне дозволе из директоријума у ​​коме се креирају, а не од корисника који креира датотеку.

Дозвола за извршење за остале понекад може бити представљена т. Ово је лепљив бит. Обично се примењује на директоријуме. Ако је ово подешено, без обзира на привилегије писања и извршавања које су постављене за датотеке у директоријуму, само власник датотеке, власник директоријума или роот корисник могу преименовати или избрисати датотеке у директоријуму.

Уобичајена употреба лепљивог бита је на фасциклама као што је „/тмп“. Ово могу да пишу сви корисници на рачунару. Лепљиви бит у директоријуму осигурава да корисници — и процеси које су корисници покренули — могу само преименовати или избрисати своје привремене датотеке.

Можемо видети лепљиви бит у директоријуму „/тмп“. Обратите пажњу на употребу опције -д (директориј). Ово доводи до тога да лс извештава о детаљима директоријума. Без ове опције, лс ће известити о датотекама унутар директоријума.

ls -l -d /tmp

Број који следи иза дозвола је број тврдих веза до датотеке или директоријума. За датотеку, ово је обично један, али ако се направе друге чврсте везе, овај број ће се повећати. Директоријум обично има најмање две чврсте везе. Једна је веза до самог себе, а друга је њен унос у родитељски директоријум.

Следеће се приказује име власника и група. Након њих следе величина датотеке и датум последње измене датотеке. На крају се даје име датотеке.

Човјеку читљиве величине датотека

Имати величине датотека у бајтовима није увек згодно. Да бисте видели величине датотека у најприкладнијим јединицама (килобајти, мегабајти, итд.) користите опцију -х (читљиво за људе):

ls -l -h

Приказ скривених датотека

Да бисте видели скривене датотеке, користите опцију -а (све):

ls -l -a

Два уноса „.” и “..” представљају тренутни директоријум и родитељски директоријум, респективно. Фајл под називом „.басе_сеттингс“ је сада први пут видљив.

Изостављање . и .. из Огласа

Ако не желите да ваш унос буде претрпан знаком „. и „..” уносе, али желите да видите скривене датотеке, користите опцију -А (скоро све):

ls -l -A

Скривена датотека је и даље наведена, али „.“ и „..“ уноси су потиснути.

  Како инсталирати БСД Лумина на Линук

Рекурзивно навођење именика

Да би лс навео датотеке у свим поддиректоријумима, користите опцију -Р (рекурзивна).

ls -l -R

лс пролази кроз цело стабло директоријума испод почетног директоријума и наводи датотеке у сваком поддиректоријуму.

Приказ УИД-а и ГИД-а

Да бисте приказали ИД корисника и ИД групе уместо корисничког имена и имена групе, користите опцију -н (нумерички уид и гид).

ls -n

Сортирање листа

Можете сортирати листу према екстензији, величини датотеке или времену измене. Ове опције не морају да се користе са форматом дугачке листе, али обично има смисла то учинити. Ако сортирате по величини датотеке, има смисла видети величине датотека на листи. Када сортирате према типу екстензије, формат дугачке листе није толико важан.

Да бисте сортирали по екстензији, користите опцију -Кс (сортирај по проширењу).

ls -X -1

Директоријуми су први наведени (уопште нема екстензија), а затим остали следе по абецедном реду, према екстензијама.

Да бисте сортирали према величини датотеке, користите опцију -С (сортирај према величини датотеке).

ls -l -h -S

Редослед сортирања је од највећег до најмањег.

Да бисте сортирали листу према времену измене, користите опцију -т (сортирај према времену измене).

ls -l -t

Листа је сортирана по времену измене.

Ако је време измене датотеке унутар текуће године, приказане информације су месец, дан и време. Ако датум измене није био у текућој години, информације које се приказују су месец, дан и година.

Брз начин да добијете најновије и најстарије датотеке у директоријуму је да користите лс са командама хеад и таил.

Да бисте добили најновију датотеку или директоријум, користите ову команду:

ls -t | head -1

Да бисте добили најстарију датотеку или директоријум, користите ову команду:

ls -t | tail -1

За обрнути редослед сортирања

Да бисте обрнули било који од редоследа сортирања, користите опцију -р (обрнуто).

ls -l -h -S -r

Листа је сада поређана од најмање до највеће датотеке.

И има још тога

Погледајте ман страницу за лс, постоји много више опција. Неки од њих задовољавају помало нејасне случајеве употребе, али с времена на време биће вам драго што знате за њих.

Да ли треба да видите временске ознаке датотеке са максималном прецизношћу коју Линук може да пружи? Користите опцију са пуним радним временом:

ls --full-time

Можда желите да видите иноде број датотека? Користите опцију иноде:

ls -i

Да ли радите на монохроматском екрану и желите да уклоните сав ризик од збуњивања датотека за директоријуме и везе? Користите опцију класификовања и лс ће додати једну од ових на сваки унос на листи:

/: Именик.
@: Симболичка веза.
|: Именована цев.
=: Утичница.
*: Извршне датотеке

ls -F

Копајте мало. Открићете да је лс богата вена и наставићете да откривате драгуље.