Жаңы жыл келе жатат, мен мындан ары олуттуу иш жөнүндө ойлонгум келбейт.
Майрамга карата ар ким бир нерсени жасалгалоого аракет кылууда: үй, кеңсе, жумуш орду... Келгиле да бир нерсени кооздойлу! Мисалы, буйрук сабы. Кандайдыр бир деңгээлде буйрук сабы да жумуш орду болуп саналат.
Кээ бир бөлүштүрүүдө ал мурунтан эле "декорацияланган":

Башкаларында ал боз жана көрүнбөйт:

Жана биз, мисалы, мындай кыла алабыз:

Албетте, бардык маркерлер ар кандай даамы жана түстөрү бар. Эгер мындай боёо сизге жабышчаак жана ылайыксыз болуп көрүнсө, анда бул көз караш жашоого толук укуктуу экенин билиңиз. Жана ошондой эле бир аз жаңы жылдык маанай кошууну кааласаңыз, Cloud4Yден жаңы жылдык кыска макаланы окуп чыгыңыз.
Биринчиден, мен терминалдын чыгышы кантип "түстүү" экенин түшүндүрөм. Бул качуу ырааттуулугун колдонуу менен ишке ашырылат. Же тагыраак айтканда, ANSI/VT100 терминалынын башкаруу кодунун ырааттуулугу. Бул автоматтык түрдө терминалдык эмуляторуңуз бул стандартты колдошу керек дегенди билдирет, антпесе Жаңы жылдык керемет болбойт. Ооба, $SHELL сиздин башыңыз деп эсептелет.
Бул буйруктар качуу ырааттуулугу деп аталат, анткени алардын ар биринин башында ASCII "качуу" символу бар. Көптөгөн башкаруу ырааттуулугу бар жана алар, мисалы, терминалдык орнотууларды көрсөтүүгө, курсордун дисплейин жана кыймылын көзөмөлдөөгө, шрифтти өзгөртүүгө, текстти жок кылууга жана жашырууга мүмкүндүк берет. Биз ар кандай мүмкүнчүлүктөрдүн ичинен бирин тандап алабыз - тексттин жана фондун түсүн өзгөртүү.
Код ырааттуулугун аткарыңыз *ESC*[{attr1};...;{attrn}m
Символ катары качуу анын сегиздик формасы колдонулат, б.а 33. Атрибуттарга келсек, бул жерде мүмкүн болгон баалуулуктардын кыскача тизмеси:
0 Бардык атрибуттарды баштапкы абалга келтирүү
1 Жарык (көбөйгөн жарыктык)
2 Dim
4 Астын сызыңыз
5 Blink
7 Тескери
8 Жашырылган (текстти жашыруу)
Алдыңкы түстөр (калем түсү, текст бул түстө көрсөтүлөт):
30 Кара
31 Кызыл
32 Жашыл
33 Сары
34 Көк
35 Кызгылт (кызыл)
36 Көгүлтүр (көк)
37 Ак
Фондук түстөр (кагаздын түсү же фондун түсү):
40 Кара
41 Кызыл
42 Жашыл
43 Сары
44 Көк
45 Кызгылт (кызыл)
46 Көгүлтүр (көк)
47 Ак
Эгерде сиз азыр терминалда буйрук берсеңиз: echo 33[0;31mнекоторый текст 33[0m’
... анда сиз болжолдуу түрдө жыйынтыкта монохромдуу gobbledygook аласыз:

Неге? Анткени echo командасынын алдыңкы мүмкүнчүлүктөрүн колдонуу зарыл болчу. Бул бир ачкыч кошуу үчүн жетиштүү болуп саналат: echo -e ‘ 33[0;31mнекоторый текст 33[0m’
Чыгуу эми туура көрүнөт:
![]()
Биз терминалга чыгуунун түсүн иргедик. Эми буйрук тилкесин кантип түскө боёсо болорун карап көрөлү.
Бул PS1 өзгөрмөсүн өзгөртүү аркылуу ишке ашырылат. Өзгөрмө буйрук сабынын суроосуна жооп берет. Анын сырткы көрүнүшүн, анын ичинде качуу ырааттуулугун колдонуу менен да өзгөртүүгө болот. Бирок бир аз айырма бар: ырааттуулукту символдон баштоо керек "[" жана " белгиси менен аяктайт]”, болбосо ал терминалга чыгарылат.
Бардык мүмкүн болгон буйрук ырааттуулугу bash колдонмосунда майда-чүйдөсүнө чейин сүрөттөлгөн, ошондуктан мен окурмандарды буйрук сабында эмнени көрүүнү каалаарын өздөрү тандап алууга чакырам. Мисал катары, мен PS1 өзгөрмө үчүн өзүмдүн маанисин берем:
[ 33[34;1m]t[ 33[0m],[ 33[32m]u@l@h[ 33[0m]:[ 33[33m]W[ 33[0m],[ 33
[31m]![ 33[0m]$n
Мен бул коркунучтуу сыйкырды чечмелейм:
[33[34;1м] — ачык көк (экинчи атрибут) шрифт түсүн күйгүзүү
t – учурдагы убакытты HH: MM: SS форматында көрсөтүү
[33[0м] – шрифт түсүнүн жөндөөлөрүн баштапкы абалга келтирүү
, - жөн гана үтүр (күтүүсүз, туурабы?)
[33[32м] — жашыл шрифт түсүн күйгүзүү
u@l@h – “@” белгиси менен бөлүнгөн колдонуучунун атын, терминалдык түзүлүштүн номерин жана кыска хосттун атын көрсөтүү
[33[0м] — шрифт түсүнүн орнотууларын кайра коюңуз
: - жөн эле жоон чекит (капысынан!)
[33[33м] — сары шрифт түсүн күйгүзүү
W – учурдагы каталогдун атын көрсөтүү
[33[0м] — шрифт түсүнүн орнотууларын кайра коюңуз
, - дагы бир үтүр (ким ойлогон!)
[33[31м] — кызыл шрифт түсүн күйгүзүү
! — терминалдагы команданын номерин көрсөтүү
[33[0м] - шрифт түсүнүн жөндөөлөрүн кайра коюуну унутпаңыз
$ — тамыр үчүн “#” жана калгандар үчүн “$” басып чыгарыңыз
n - сап которуу. Эмне үчүн? Ошентип, буйрук буйрук сабынын аягында эмес, терезенин сол четинен башталат.
Кайда өзгөрмө кайра аныктоо керек? Муну жасоо үчүн эң логикалык жер ~/.bashrc.
Чакыруунун сырткы көрүнүшү сиздин фантазияңыз менен гана чектелет. Негизи, жогоруда сүрөттөлгөн куралдарды колдонуп, жаңы жылдык дарак түрүндө буйрук сабын жасоого эч нерсе тоскоол болбойт. Ырас, мындай чакыруу абдан түйшүктүү болот жана жумуш, албетте, ыңгайлуу болуп калбайт. Рождество даракты жөн гана буйрук сабынын үстүндө көрсөтүүгө болот (биз дагы деле ~/.bashrc түзөтүшүбүз керек). Баргыла! Жана көңүлүңүз үчүн рахмат.

Блогдон дагы эмнени окуй аласыз?
→
→
→
→
→
Биздин жазылуу Кийинки макаланы өткөрүп жибербеш үчүн -канал! Биз жумасына эки жолудан ашык эмес жана бизнес боюнча гана жазабыз. Ошондой эле Cloud4Y корпоративдик булут провайдери “FZ-152 Cloud кадимки баада” акциясын ишке киргизгенин эскертебиз. Сиз кайрылсаңыз болот .
Source: www.habr.com
