Скрипт чист?

барномаи саҳнавӣ

Веб пур аз истилоҳот аст, ки метавонад барои мутахассисони ғайритехникӣ то андозае печида бошад. Баъзе аз ин истилоҳҳо метавонанд коди сарчашма бошанд, скриптҳо ё сенария, порчаҳо ва ғ. Хуб, аз нигоҳи коди сарчашма, ин ҳама матн ё иттилооте мебошад, ки бо истифода аз забони барномасозӣ ва эҳтироми синтаксиси муайян барои ташаккули алгоритм ё вазифаи мушаххасе, ки барномаро ташкил медиҳад.

Аз ин рӯ, коди сарчашма истилоҳи то андозае умумӣ мебошад ва васеъ, тавонистааст ба истилоҳҳои дигар низ дохил шавад, зеро пора пораи коди сарчашмаест, ки дар маҷмӯъ он қадар мураккаб намешавад. Масалан, вақте ки мо худро ба тарроҳии веб мебахшем ё бояд ба вебсайти худ баннере гузорем, одатан провайдерҳои таблиғотӣ ба монанди Google Adsense ё Amazon Affiliates ба мо порчае бо коди HTML медиҳанд, то битавонем онро дар сайти мо гузорем. Аз ин рӯ, ин як барномаи мукаммал нест, балки қисмҳои хурди такроран истифодашаванда мебошад.

Забони тафсиршуда ва забони тартибдодашуда:

Тафсир карда шудааст ва тартиб дода шудааст

Агар шумо дар ҳайрат бошед скрипт ё сенария чистШумо бояд донед, ки дар барномарезӣ ин истилоҳ ба коди сарчашма, ки дар ягон намуди тафсир навишта шудааст (қариб ҳамеша) истифода мешавад. Ва фарқияти забонҳои барномасозии анъанавии ҷамъшуда чист? Хуб, ба фарқ аз инҳо, коди сарчашма як маротиба тартиб дода намешавад ва ба дуӣ табдил дода намешавад, балки барои тарҷумон ба ҳайси миёнарав лозим аст ва ҳар дафъае, ки барнома иҷро шавад, тарҷумон бояд рамзро барои мошин фаҳмад, то фаҳмад . Яъне, қадамҳои ҷамъбастшуда инҳоянд:

CentOS 7
Мақолаи марбут:
CentOS 7 дастури насбкунӣ қадам ба қадам

  1. Рамзи сарчашма нависед аз барномае, ки бо истифодаи баъзе забонҳои барномасозӣ барои тартиб додани C, BASIC, C ++, Ada, ALGOL, D, COBOL, GO, Fortran, G, Lisp, Pascal, Swift, Visual Basic ва ғайра. Рамзро дар ҳама гуна муҳаррирони матнӣ ё бо истифода аз муҳити мукаммалтари рушд ё IDE навиштан мумкин аст.
  2. Мо рамзро тартиб медиҳем сарчашма бо истифода аз баъзе тартибдиҳанда, ба монанди GNU GCC. Бо ин мо метавонем он фармонҳоро ба забони сатҳи баланд табдил диҳем, ки онро танҳо барномасозон ва тартибдиҳандагон ба забони мошинӣ ё дуӣ, ки аз ҷониби CPU фаҳмо ва иҷрошавандаанд, мефаҳманд.
  3. El биниро иҷро кардан мумкин аст чанд боре ки ба мо лозим аст бидуни гузаштани қадамҳои қаблӣ. Дар асл, аксар фурӯшандагони нармафзор ба мо бинариро мустақиман мефиристанд, то дар компютери мо кор кунем. Ин системаи амалиётӣ хоҳад буд, ки равандҳои барои ин зарурро, syscalls ва ғайра идора мекунад.

Аз тарафи дигар, скриптҳо ин марҳилаҳоро риоя намекунанд ва забонҳои тафсиршуда истифода мешаванд. Ин ҷо зиёд аст забонҳои тафсиршуда, ба монанди тарҷумони Bash, ки дар GNU / Linux ва дигар Unix бештар истифода хоҳад шуд, инчунин забонҳои маъруф ба монанди Perl, Python, Ruby, JavaScript ва ғайра. Бо онҳо шумо метавонед рамзеро, ки скриптро ташкил медиҳад, нависед, ки ҷуз файли фармонӣ ё коркарди партия нахоҳад буд. Аён аст, ки вобаста аз забони истифодашуда, синтаксис фарқ хоҳад кард. Дар сурати бо забони тафсирӣ, фармоиш ба чунин тағйир хоҳад ёфт:

  1. Мо скрипт ё коди сарчашма менависем бо истифода аз ҳама гуна забони барномасозӣ. Мо инчунин метавонем IDE ё танҳо муҳаррири матниро истифода барем.
  2. Дар ин ҳолат, он тартиб дода намешавад, аммо мустақиман иҷро карда мешавад бо ёрии тарҷумон. Яъне, агар мо Bash -ро истифода барем, ба мо лозим аст, ки дар система насб карда шавад, то битавонем скрипти моро иҷро кунем. Агар мо скрипти Python -ро истифода барем, ба мо тарҷумони Python насб кардан лозим аст ва ғ.
  3. Ҳангоми мо сенарияро иҷро мекунем, Ин тарҷумонест, ки калимаҳо ё забони дар он мавҷудбударо шарҳ медиҳад (аз ин рӯ номаш), яъне ин дастурҳо бевосита ба системаи оператсионӣ ва CPU намегузаранд, зеро онҳоро бе ёрии миёнарав намешиносад. ё тарҷумон, ки тарҷумон аст.

Инро гуфта, мо мебинем, ки дар ин ё он ҳолат вуҷуд дорад афзалият ва камбудиҳо. Дар мавриди файлҳои тартибдодашуда, онҳо ба тартиб дар вақти корӣ ниёз надоранд, аз ин рӯ, пас аз бори аввал тартиб додан, мо метавонем бинариро ба қадри зарурӣ бидуни сарфи манбаъҳо дар он иҷро кунем. Ин дар скриптҳо вуҷуд надорад, ки бояд барои тарҷумон захираҳо ҷудо кунанд, аз ин рӯ, дар маҷмӯъ он сусттар хоҳад шуд.

Сохтани аввалин скрипти мо дар Linux:

Нишони Bash

Дар мисоли мо мо забони барномасозии шахсии Башро истифода мебарем ва аз ин рӯ тарҷумони мо Баш хоҳад буд. Пеш аз ҳама мо бояд донем, ки бисёр файлҳои скрипт сарлавҳаҳо доранд мувофиқи тарҷумони истифодашуда ҳамчун shebang маъруф аст. Масалан, дар Linux мо тарҷумонҳои гуногунро пайдо карда метавонем, дар ҳолати Баш, шибанг #! / Bin / bash аст, аммо дар ҳама ҳолатҳои дигар он бинарӣ хоҳад буд, ки дар ин ҳолат ба тарҷумон ё ниҳонӣ ишора мекунад. Инчунин, дар мавриди Unix ва Linux, файли скрипт одатан васеъшавии .sh дорад.

Linux Bootable USB Pendrive
Мақолаи марбут:
Чӣ гуна эҷод кардани USB пурборшаванда аз терминал дар ҳама гуна тақсимот

Дар скрипт мо метавонем фармонҳои тарҷумон, операндҳо, доимӣ ва ғайраҳоро истифода барем. Масалан, мо метавонем эҷод кунем скрипти оддӣ ки дар системаи мо нусхаҳои эҳтиётӣ бардорем ва бо санаи эҷоди файл бо номи backup.sh бо муҳаррири матни дӯстдоштаамон сабт созем. Мазмуни он хоҳад буд:

<div>

<pre><span class="com">#<span class="simbol">!</span>/bin/bash
</span></pre>
<pre>tar cvf /backup/copia<span class="simbol">.</span>tar /home/usuario</pre>
<pre>date <span class="simbol">></span> /backup/log_copia</pre>
</div>

Масалан, дар мисоли дар боло овардашуда шумо нусхаи эҳтиётии феҳристи / home / user-ро эҷод мекунед ва онро ба tarball бо номи copy.tar бастабандӣ карда, баъд менависед сабти сана. Барои иҷрои он, мо бояд ба он иҷозатҳои иҷро диҳем, масалан:

chmod +x backup.sh

./backup.sh

Мисоли оддӣ Ман фикр мекунам, ки барои аксари наваскарон чӣ скрипт аст. Ин як саволи хеле такроршавандаи вақтҳои охир аст ...


Мазмуни мақола ба принсипҳои мо риоя мекунад ахлоқи таҳрирӣ. Барои гузориш додани хато клик кунед ин ҷо.

3 шарҳ, аз они шумо

Назари худро бинависед

Суроғаи почтаи электронии шумо нест, нашр карда мешавад. Майдонҳои талаб карда мешавад, бо ишора *

*

*

  1. Масъул барои маълумот: AB Internet Networks 2008 SL
  2. Мақсади маълумот: Назорати СПАМ, идоракунии шарҳҳо.
  3. Қонунӣ: Розигии шумо
  4. Иртиботи маълумот: Маълумот ба шахсони сеюм расонида намешавад, ба истиснои ӯҳдадориҳои қонунӣ.
  5. Нигоҳдории маълумот: Пойгоҳи додаҳо аз ҷониби Occentus Networks (ИА) ҷойгир карда шудааст
  6. Ҳуқуқҳо: Ҳар лаҳза шумо метавонед маълумоти худро маҳдуд, барқарор ва нест кунед.

  1.   Н. Диго

    Чӣ тавр desktop.ini -ро тағир диҳам
    Салом

  2.   Антонио Диго

    Хуб, шукр, ки шумо инро ба таври оддӣ шарҳ додед. Ман ҳамаашро возеҳу равшан медонам ... танҳо ман бояд акнун чизеро ёбам, ки "bash" ,, "snippets", syscalls, ва ғайра ва ғ., Барои ҳама чиз ҳама чиз равшан аст. Танҳо як чизи хурд, чизи дигар; Агар ба ман тирезае расад, ки ба ман се вариант медиҳад (бекор кардан ва ду варианти дигар, ман дар хотир надорам) дар бораи скрипт, ман одатан бояд чӣ кор кунам? Азбаски ман дар ёд надорам, ки ягон чизро паст кардан лозим аст, то тирезаи гуфтшуда берун ояд. Лутфан ба як чизи ноҳамвор фаҳмонед

  3.   Себастян Моралес Диго

    Ин ба ман хеле кӯмак кард, аммо рамзи мисол хеле печида аст, зеро ман аксари тамғакоғазҳоро намедонам, кош ҳар чизе, ки шумо дар код гузоштед ва ҳамин тавр онро хуб мефаҳмидед, ман низ шубҳа доштам, ки он файли .sh?