Эски буйрук сабынын куралдарына 5 заманбап альтернатива Linux

Эски буйрук сабынын куралдары менен катар заманбап альтернативаларды колдонуу менен, сиз көбүрөөк көңүл ача аласыз, ал тургай өндүрүмдүүлүгүңүздү жакшыртсаңыз болот.

Эски буйрук сабынын куралдарына 5 заманбап альтернатива Linux

Күнүмдүк жумушта Linux Unixте биз көптөгөн буйрук сабынын куралдарын колдонобуз — мисалы, дисктин колдонулушун жана системалык ресурстарды көзөмөлдөө үчүн du. Бул куралдардын айрымдары көптөн бери бар. Мисалы, top 1984-жылы пайда болгон, ал эми du биринчи чыгарылышы 1971-жылга таандык.

Жылдар бою бул инструменттер модернизацияланган жана ар кандай системаларга көчүрүлгөн, бирок жалпысынан алар биринчи версияларынан алыс болгон жок, алардын сырткы көрүнүшү жана колдонууга ыңгайлуулугу да көп деле өзгөргөн жок.

Булар көптөгөн система администраторлору үчүн маанилүү болгон эң сонун куралдар. Бирок, коомчулук кошумча артыкчылыктарды сунуш кылган альтернативдүү куралдарды иштеп чыкты. Айрымдары жөн гана заманбап, жагымдуу интерфейске ээ, ал эми башкалары колдонууну бир топ жакшыртат. Бул котормодо биз стандарттуу буйрук сабынын куралдарына беш альтернативаны талкуулайбыз. Linux.

1. ncdu vs du

NCurses Disk Usage (ncdu) du менен окшош, бирок каргыш китепканасына негизделген интерактивдүү интерфейси бар. ncdu сиздин диск мейкиндигинин көбүн ээлеген каталог түзүмүн көрсөтөт.

ncdu дискти талдап, андан кийин эң көп колдонулган каталогдор же файлдар боюнча сорттолгон натыйжаларды көрсөтөт, мисалы:

ncdu 1.14.2 ~ Use the arrow keys to navigate, press ? for help
--- /home/rgerardi ------------------------------------------------------------
   96.7 GiB [##########] /libvirt
   33.9 GiB [###       ] /.crc
    7.0 GiB [          ] /Projects
.   4.7 GiB [          ] /Downloads
.   3.9 GiB [          ] /.local
    2.5 GiB [          ] /.minishift
    2.4 GiB [          ] /.vagrant.d
.   1.9 GiB [          ] /.config
.   1.8 GiB [          ] /.cache
    1.7 GiB [          ] /Videos
    1.1 GiB [          ] /go
  692.6 MiB [          ] /Documents
. 591.5 MiB [          ] /tmp
  139.2 MiB [          ] /.var
  104.4 MiB [          ] /.oh-my-zsh
   82.0 MiB [          ] /scripts
   55.8 MiB [          ] /.mozilla
   54.6 MiB [          ] /.kube
   41.8 MiB [          ] /.vim
   31.5 MiB [          ] /.ansible
   31.3 MiB [          ] /.gem
   26.5 MiB [          ] /.VIM_UNDO_FILES
   15.3 MiB [          ] /Personal
    2.6 MiB [          ]  .ansible_module_generated
    1.4 MiB [          ] /backgrounds
  944.0 KiB [          ] /Pictures
  644.0 KiB [          ]  .zsh_history
  536.0 KiB [          ] /.ansible_async
 Total disk usage: 159.4 GiB  Apparent size: 280.8 GiB  Items: 561540

Сиз жебе баскычтарын колдонуп, жазуулар боюнча чабыттасаңыз болот. Эгерде сиз Enter баскычын бассаңыз, ncdu тандалган каталогдун мазмунун көрсөтөт:

--- /home/rgerardi/libvirt ----------------------------------------------------
                         /..
   91.3 GiB [##########] /images
    5.3 GiB [          ] /media

Бул куралды, мисалы, кайсы файлдар дискте эң көп орун ээлеп жатканын аныктоо үчүн колдоно аласыз. Сол жебе баскычын басуу менен мурунку каталогго өтсөңүз болот. ncdu менен сиз d баскычын басуу менен файлдарды жок кыла аласыз. Ал жок кылуудан мурун ырастоону сурайт. Эгерде сиз баалуу файлдардын кокустан жоголуп кетүүсүнө жол бербөө үчүн өчүрүү функциясын өчүргүңүз келсе, окуу үчүн гана кирүү режимин иштетүү үчүн -r параметрин колдонуңуз: ncdu -r.

ncdu көптөгөн платформалар жана дистрибуциялар үчүн жеткиликтүү. LinuxМисалы, сиз аны расмий репозиторийлерден түз Fedora'га орнотуу үчүн dnf колдоно аласыз:

$ sudo dnf install ncdu

2. htop vs top

htop жогоруга окшош интерактивдүү процессти көрүүчү, бирок ал колдонуучунун жагымдуу тажрыйбасын камсыз кылат. Демейки боюнча, htop жогорудагыдай эле маалыматты көрсөтөт, бирок визуалдык жана түстүүраак.

Демейки боюнча htop төмөнкүдөй көрүнөт:

Эски буйрук сабынын куралдарына 5 заманбап альтернатива Linux
Жогорудан айырмаланып:

Эски буйрук сабынын куралдарына 5 заманбап альтернатива Linux
Кошумчалай кетсек, htop үстү жагында тутум жөнүндө жалпы маалымат жана ылдый жагында функция баскычтары аркылуу буйруктарды иштетүү үчүн панелди көрсөтөт. Сиз аны конфигурациялоо экранын ачуу үчүн F2 баскычын басып конфигурациялай аласыз. Жөндөөлөрдөн түстөрдү өзгөртө аласыз, көрсөткүчтөрдү кошуп же алып салсаңыз, же жалпы көрүү панелинин дисплей параметрлерин өзгөртө аласыз.

Топтун эң акыркы версияларынын жөндөөлөрүн өзгөртүү менен окшош колдонууга жетүүгө мүмкүн болсо да, htop ыңгайлуу демейки конфигурацияларды камсыз кылат, бул аны практикалык жана колдонууну жеңилдетет.

3. tldr vs man

tldr буйрук сабы куралы буйруктар жөнүндө жөнөкөйлөштүрүлгөн жардам маалыматын, көбүнчө мисалдарды көрсөтөт. Ал коомчулук тарабынан иштелип чыккан tldr баракчалары долбоору.

Айта кетчү нерсе, tldr адамды алмаштыруу эмес. Бул дагы эле канондук жана эң кеңири адам барагын чыгаруу куралы. Бирок, кээ бир учурларда адам ашыкча болот. Буйрук жөнүндө толук маалыматтын кереги жок болгондо, сиз жөн гана анын негизги колдонулуштарын эстегенге аракет кылып жатасыз. Мисалы, curl буйругунун адам барагы дээрлик 3000 сапты камтыйт. Curl үчүн tldr барагынын узундугу 40 сапты түзөт. Анын фрагменти мындай көрүнөт:


$ tldr curl

# curl
  Transfers data from or to a server.
  Supports most protocols, including HTTP, FTP, and POP3.
  More information: <https://curl.haxx.se>.

- Download the contents of an URL to a file:

  curl http://example.com -o filename

- Download a file, saving the output under the filename indicated by the URL:

  curl -O http://example.com/filename

- Download a file, following [L]ocation redirects, and automatically [C]ontinuing (resuming) a previous file transfer:

  curl -O -L -C - http://example.com/filename

- Send form-encoded data (POST request of type `application/x-www-form-urlencoded`):

  curl -d 'name=bob' http://example.com/form                                                                                            
- Send a request with an extra header, using a custom HTTP method:

  curl -H 'X-My-Header: 123' -X PUT http://example.com                                                                                  
- Send data in JSON format, specifying the appropriate content-type header:

  curl -d '{"name":"bob"}' -H 'Content-Type: application/json' http://example.com/users/1234

... TRUNCATED OUTPUT

TLDR "өтө узун" дегенди билдирет; окуган жок": башкача айтканда, кээ бир тексттер ашыкча сөздүктөн улам эске алынбай калган. Аты бул куралга ылайыктуу, анткени адам баракчалары пайдалуу болгону менен кээде өтө узун болушу мүмкүн.

Fedora үчүн tldr Python тилинде жазылган. Сиз dnf менеджери аркылуу орното аласыз. Эреже катары, курал иштеши үчүн интернетке кирүүнү талап кылат. Бирок Fedora's Python кардары бул баракчаларды жүктөп алууга жана оффлайн режиминде кирүү үчүн кэште болууга мүмкүндүк берет.

4.jq vs sed/grep

jq - бул буйрук сабы үчүн JSON процессору. Ал sed же grepге окшош, бирок JSON маалыматтары менен иштөө үчүн атайын иштелип чыккан. Эгер сиз JSONди күнүмдүк тапшырмаларда колдонгон иштеп чыгуучу же системалык администратор болсоңуз, бул сиз үчүн курал.

grep жана sed сыяктуу стандарттык текстти иштетүү куралдарынан jq'дун негизги артыкчылыгы - бул JSON берилиштер структурасын түшүнүп, бир сөз айкашында татаал сурамдарды түзүүгө мүмкүндүк берет.

Мисалы, сиз бул JSON файлында контейнер аталыштарын табууга аракет кылып жатасыз:

{
  "apiVersion": "v1",
  "kind": "Pod",
  "metadata": {
    "labels": {
      "app": "myapp"
    },
    "name": "myapp",
    "namespace": "project1"
  },
  "spec": {
    "containers": [
      {
        "command": [
          "sleep",
          "3000"
        ],
        "image": "busybox",
        "imagePullPolicy": "IfNotPresent",
        "name": "busybox"
      },
      {
        "name": "nginx",
        "image": "nginx",
        "resources": {},
        "imagePullPolicy": "IfNotPresent"
      }
    ],
    "restartPolicy": "Never"
  }
}

Саптын атын табуу үчүн grepти иштетиңиз:

$ grep name k8s-pod.json
        "name": "myapp",
        "namespace": "project1"
                "name": "busybox"
                "name": "nginx",

grep аты сөздү камтыган бардык саптарды кайтарды. Сиз аны чектөө үчүн grepге дагы бир нече варианттарды кошуп, контейнер аталыштарын табуу үчүн кадимки туюнтма манипуляциясын колдонсоңуз болот.

jq аркылуу бир эле натыйжаны алуу үчүн, жөн гана жаз:

$ jq '.spec.containers[].name' k8s-pod.json
"busybox"
"nginx"

Бул буйрук сизге эки контейнердин атын берет. Эгерде сиз экинчи контейнердин атын гана издеп жатсаңыз, сөз айкашына массив элементинин индексин кошуңуз:

$ jq '.spec.containers[1].name' k8s-pod.json
"nginx"

jq маалымат түзүмү жөнүндө билгендиктен, файл форматы бир аз өзгөрсө дагы, ошол эле натыйжаларды берет. grep жана sed бул учурда туура иштебей калышы мүмкүн.

jq көптөгөн функцияларга ээ, бирок аларды сүрөттөш үчүн дагы бир макала керек. Көбүрөөк маалымат алуу үчүн кайрылыңыз долбоор барагы jq же tldr.

5. fd vs find

fd find утилитасына жөнөкөйлөштүрүлгөн альтернатива болуп саналат. Fd аны толугу менен алмаштырууга арналган эмес: ал демейки боюнча орнотулган эң кеңири таралган орнотууларга ээ, файлдар менен иштөөнүн жалпы ыкмасын аныктайт.

Мисалы, Git репозиторий каталогунан файлдарды издеп жатканда, fd автоматтык түрдө жашыруун файлдарды жана подкаталогдорду, анын ичинде .git каталогун чыгарат, ошондой эле .gitignore файлындагы коймо таңбаларды этибарга албайт. Жалпысынан алганда, биринчи аракетте көбүрөөк ылайыктуу натыйжаларды кайтарып, издөөлөрдү тездетет.

Демейки боюнча, fd түстүү чыгаруу менен учурдагы каталогдо регистрге сезимтал издөөнү аткарат. Табуу буйругун колдонуу менен ошол эле издөө буйрук сабына кошумча параметрлерди киргизүүнү талап кылат. Мисалы, учурдагы каталогдогу бардык .md (же .MD) файлдарын табуу үчүн, сиз төмөнкүдөй табуу буйругун жазасыз:

$ find . -iname "*.md"

fd үчүн мындай көрүнөт:

$ fd .md

Бирок, кээ бир учурларда, fd кошумча опцияларды да талап кылат: мисалы, эгер сиз жашыруун файлдарды жана каталогдорду кошкуңуз келсе, анда -H опциясын колдонушуңуз керек, бирок бул издөө учурунда талап кылынбайт.

fd көптөгөн дистрибуциялар үчүн жеткиликтүү. LinuxFedora'да сиз аны мындайча орното аласыз:

$ sudo dnf install fd-find

Эч нерседен баш тартуунун кереги жок

Жаңы буйрук сабынын куралдарын колдоносузбу? LinuxЖе сиз эскилерин гана колдоносузбу? Бирок, кыязы, сизде айкалыш бар, туурабы? Тажрыйбаңыз менен комментарийлерде бөлүшүңүз.

жарнама катары

Биздин көптөгөн кардарларыбыз артыкчылыктарды баалашкан эпикалык серверлер!
бул AMD EPYC процессорлору менен виртуалдык серверлер, CPU негизги жыштыгы 3.4 ГГц чейин. Максималдуу конфигурация сизге жарылууга мүмкүндүк берет - 128 CPU өзөгү, 512 ГБ оперативдүү эстутум, 4000 ГБ NVMe. Заказ берүүгө шашылыңыз!

Эски буйрук сабынын куралдарына 5 заманбап альтернатива Linux

Source: www.habr.com

DDoS коргоосу, VPS VDS серверлери бар сайттар үчүн ишенимдүү хостинг сатып алыңыз 🔥 DDoS коргоосу, VPS VDS серверлери бар ишенимдүү веб-сайт хостингин сатып алыңыз | ProHoster