Програмирање шкољака је забавно. Али такав је и Питхон. Људи са позадином Ц, или што је најважније људи који користе Виндовс не слажу се. Људи често више воле да користе графички интерфејс него интерфејс командне линије. Али то је тако потпуно погрешно. Графички кориснички интерфејс намењен је људима који мисле да софтвер ради оно што у његовом опису пише да чини. Али то није увек случај. Нарочито у случају прозора програмирања шкољки у којима су вируси и малварес створили пустош који има величину Торнада. Дакле, људи који користе интерфејс командне линије обично се слажу да је оно што раде исправно, а ја се слажем са њима да су у праву.

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

Поред тога, писање програма на Ц или Јава би у ствари било много горе него коришћење софтвера заснованог на графичком корисничком интерфејсу у Виндовсима. Овде не псујем Ц ни Јава, само што нису погодни за свакодневну употребу. Овде се одликују скриптни језици као што су Схелл програмирање и Питхон језици. Дакле, данас смо овде у рату који је погоднији за мање и веће апликације. Или је то што заправо можемо обојицу спојити заједно и направити нешто ново и боље од њих двоје. Погледајмо дубље оба и видимо где нас води.

Басх Схелл Сцриптинг

Схелл Сцриптинг је заиста сјајан. Овде можете скоро да радите већину својих послова у само једној линији кода. На пример, узмите овај део кода: -

$ тоуцх филе.ткт | ецхо -е 'хелло \ н Ново \ н Свет \ н Здраво \ н Здраво' >> филе.ткт | цат филе.ткт | врста | уник | вц -л

Дакле, као што видите, овде се дешава много сценарија о гранатама, али шта се тачно дешава? Прво '| 'позната је као цев. Користи се за пренос резултата једне датотеке у другу. Синтакса „додир“ користи се за креирање било које датотеке, а синтакса еха користи се за испис било које изјаве. Двоструке десне бочне стрелице '>>' користе се за додавање излаза у било коју датотеку или програм. синтакса 'цат' користи се за читање садржаја датотеке. Сорт се користи за сортирање свега по реду, а 'уник' се користи за уклањање дупликата из сортирања. 'Вц' се користи за бројање линија, а -л је само застава за испис. Дакле, све ове ланчане наредбе чине следеће.

  1. Најпре се креира датотека са датотеком имена са екстензијом ткт да бисте је обавестили о текстуалној датотеци.
  2. Друго, ецхо -е се користи за испис више речи у датотеци филе.ткт, а 'коса н' или '\ н' се користи за унос нове линије или прелазак на следећи ред.
  3. Након уношења стрингова у датотеку, датотека се чита, разврстава по редоследу и преноси у уник синтаксу да би се уклонили постојећи дупликати, што је у нашем случају 'здраво'.
  4. Коначно, исписујемо број редака помоћу 'вц-л' за бројање и исписујемо на екрану терминала.

Иако је горе наведено само једна линија кода, може се закомпликовати када се убаци више услова. Стога су скрипте шкољке добре, али не могу се стално користити за нове послове. Понекад желите да ствари буду једноставније, једноставне попут графичког корисничког интерфејса. Схелл скрипте су заправо веома добре за покретање серијских скрипти и обављање опетованих послова, али истовремено имају и неке недостатке: -

  1. Скрипте Схелл-а обично постају изузетно компликоване како постају велике.
  2. Поновно коришћење скрипти готово да и нема. Оно што овде мислим је да је басх скрипте изузетно тешко уметнути у Ц или друге Јава кодове.
  3. Напредне функције као што је рашчлањивање ХТМЛ-а нису лако доступне за басх.

Међутим, ту је Питхон за спас и најприкладнија замена за исти. Али да ли је сценариј Басх Схелл-а потпуно заменљив? Хајде да погледамо.

Препоручени курсеви

  • Онлине обука за сертификацију у Ј2ЕЕ свеобухватној
  • Стручна обука за Р програмирање
  • Обука за онлине сертификацију у Го програмирању
  • Тренинг о Хаскелл програму

Питхон Схелл Сцриптинг

Питхон је подразумевано инсталиран на скоро свим Линук и УНИКС системима. Понекад дистрибуција може имати старију верзију, али може се надоградити једноставном командом. Програмирање Питхон Схелл-а много је лакше разумљиво и чистије за писање чак и за почетнике. Такође, Питхон по дефаулту има стил Реад Евал Принт Лооп који помаже у испробавању нових кодова у тумачу. Али само коришћење питхона може бити мало тешко без помоћи скрипта басх схелл-а. Поред тога, у претходном програму са једном линијом користили смо синтаксу 'уник' за уклањање дупликата, али није нам показало шта су дупликати. Дакле, хајде да напишемо питхон програм да уради исто: -

#! / уср / бин / енв питхонимпорт сис # увоз системских модула за рад са директоријским датотекама __наме__ == "__маин __": # Почиње са празним речником овде. Што се назива наредба # Сви тастери у овом речнику се појављују као име и одређене вредности за њих # биће колико ће се пута појавити одређено име.ордер = () # сис.стдин је објект који се користи за датотеке. Све оне функције на које се примењују

# датотечни објект се такође може користити за сис.стдин.

за поруџбину у сис.стдин.реадлинес ():

ордер = ордер.стрип ()

ако је у налогу:

налога (налог) + = 1

друго:

налога (налог) = 1

за поруџбину, рачунајте у ордер.итеритемс ():

сис.стдоут.врите ("% д \ т% с \ н"% (броји, редослед))

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

$ цат филе.ткт | питхон ордер.пи

Слично томе, можемо то решити и користећи синтаксу сортирања: -

$ цат филе.ткт | питхон ордер.пи | сортирати -рн

Питхон Схелл вс Басх Схелл Програмирање скрипта

Сада смо видели како можемо да комбинујемо скрипте питхон-а и схелл-а како бисмо створили ланац команди и извршили их заједно. Сада, идемо корак даље и видећемо да ли Питхон може потпуно заменити Басх Схелл-а.

Када говоримо о програмирању басх схелл-а, у смислу перформанси, басх тотално превазилази срање из питхона. Али ако га упоредите са типовима података и осталим напредним стварима, басх нема много компатибилности. Вријеме покретања скрипте басх схелл-а је 2, 8 мили секунди, док је вријеме питхона 11, 1 мили секунди. Да будем искренији, басх је језик опште намене попут Питхона, али обоје имају своје снаге и слабости. Програмирање Басх схелл-а подразумевани је терминал у већини Линук дистрибуција и зато ће увек бити бржи у погледу перформанси. Али да ли то значи да може потпуно заменити Питхон? Јок. Када се бавите великим програмима, Басх ће се и даље компликовати док Питхон то не чини. Колико ја знам, Питхон се може користити и као објектно оријентисан језик. Ако сте тек почетник, можда можда ни не знате разлику између то двоје. Питхон је најелегантнији сценаристички језик, чак и више од Руби и Перл. Програмирање Басх схелл-а са друге стране је заправо веома изврсно у преношењу резултата једне наредбе у другу.

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

Руковање датотекама и развој веб апликација

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

Дакле, ако знате правилно програмирање басх схелл-а, онда знате и да су променљиве и обими басха изузетно ограничени. Питхон је с друге стране више скриптни језик него програмски језик. Ако Басх називамо програмским језиком, то је више као рећи Питхон објектно оријентисан програмски језик шкољке. Са питхоном се може бавити на објектно оријентисан начин, али то никада неће бити чисто објектно оријентисано попут Ц или Јава. Слично томе, Басх је скриптни језик; боље је користити као нешто што је потребно за брзу обраду датотека, а не за писање великих програма у њих. Такође, иако је Питхон скриптни језик за шкољку, он заправо тргује унутар своје љуске. На пример, премештање целе датотеке која се налази на Десктоп-у у неки други случајни директориј преко Басх љуске отишло би овако:

$ цд Десктоп $ мв * рандомДирецтори

Али с друге стране, радити исту ствар на питхону мало је сложеније. Иде овако: -

импорт ос, глоб за фнаме у глоб.глоб ('*'): ос.ренаме (фнаме, 'рандомдирецтори')

Међутим, у најбољем случају на овај начин је могуће учинити најкомпактнијом:

импорт ос, глоб (ос.ренаме (фнаме, 'рандомдирецтори') за фнаме у глоб.глоб ('*'))

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

Басх унутра Питхона?

Да, добро сте прочитали. До сада смо читали о томе како можемо увести Питхон скрипте у Схелл. Али такође можемо да уведемо Схелл Сцриптс у скрипте питхона. Узмимо за пример: - Укуцајте „апт-гет упдате“ у љусци питхона? Очигледно ћете добити неку грешку као што је неважећа синтакса. Дакле, ствар је у томе што ако желите да користите басх кодове попут 'лс, цд, мв' или било шта друго у питхону, мораћете да увезете ОС модул. Сада, учините једно, копирајте следећи код и залепите га у Схелл оф питхон и проверите како делује: -

$ питхон >>> из ос импорт * >>> система ('судо апт-гет упдате')

А сада то успева … да. Ово је још један начин како успоставити Питхон и Басх скрипте да раде заједно. Поред тога, постоји још један питхон модул који је посебно изграђен за рад са басхом. Овај модул је познат као пекпецт. Пекпецт је питхон модул који се користи за мријештење дечијих процеса, контролу и враћање резултата према захтеву дечијег процеса. Пекпецт модул има изузетно једноставно сучеље за увоз потребних модула и подређених процеса унутар њега и њихово извршавање у складу с тим. Потребно је само да се пип инсталира у њихов систем да би се инсталирао пекпецт, а модул може бити инсталиран на следећи начин:

$ пип инсталација пекпецт

Верзији Пекпецт-а потребна је верзија питхона већа од 3.3 или тачније 2.7.

Заправо је много више за мешање питхона и басх-а и ништа не делује боље од мешавине скрипта Питхон-а и Басх-а. Ова мешавина чини скрипту брзу због Басх-а и укључивши напредне функције због Питхона. О пекпецт-у и његовој документацији можете прочитати на хттпс://пекпецт.реадтхедоцс.орг/онлине.

Препоручени чланци

Ево неколико чланака који ће вам помоћи да сазнате више детаља о Басх Сцриптинг-у и Питхон-у, зато само прођите кроз линк.

  1. Питхон вс ЈаваСцрипт-вредне разлике
  2. 25 најбољих питања и одговора за најневероватнији Питхон интервју
  3. Питхон вс ЈаваСцрипт разлике
  4. Р Програмирање вс Питхон
  5. ПХП Руковање датотекама

Категорија: