Tataiso ea ba qalang ho BASH - maemo le mefuta-futa

Selelekela

Amoheloa karolong ea boraro ea "Tataiso ea Bashing ho BASH". Haeba u hlolotsoe lihlooho tse peli tse fetileng joale u tla batla ho tseba hore na ke eng e etsang hore tataiso ena e fapane le litaelo tse ling tsa BASH.

Tsamaiso ena e ngotsoe ke mohlophisi ea feletseng ho BASH 'me e le' mali eo u ithutang eona ha ke ithuta. Le hoja ke le motlatsi oa BASH Ke tsoa sethaleng sa nts'etso-pele ea software le hoja boholo ba lintho tseo ke li ngotseng e bile bakeng sa sethaleng sa Windows.

U ka bona libuka tse peli tsa pele ka ho etela:

Haeba u le ncha ho BASH scripting Ke khothaletsa ho bala libuka tse peli tsa pele pele u tsoelapele le ena.

Ka tataiso ena ke tla be ke totobatsa mokhoa oa ho sebelisa lipolelo tse nang le maemo a ho leka tlhahiso ea motlatsi le ho laola hore na script e sebetsa joang.

Kenya parastail

E le hore u latele tataiso ena u tla hloka ho kenya molaetsa oa molaetsa oa taelo o bitsoang rsstail o sebelisetsoang ho bala RSS fepa .

Haeba u sebelisa mokhoa oa ho aba oa Debian / Ubuntu / Mint o latelang:

sudo apt-get kenya rsstail

Bakeng sa Fedora / CentOS joalo-joalo, etsa mofuta o latelang:

Yum kenya rsstail

Bakeng sa ho bula SETSE mofuta o latelang:

kenella rsstail

Mantsoe ana a IF

Bula sephetho mme o bopa file e bitsoang rssget.sh ka ho ngola tse latelang:

sudo nano rssget.sh

Ka har'a mohlophisi oa nano kenngoa lengolong le latelang:

#! / bin / bash
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;

Boloka faele ka ho hatella CTRL le O ebe o tsoa ka ho hatella CTRL le X.

Sebelisa script ka ho thathamisa se latelang:

sh rssget.sh

Script e tla khutlisetsa lethathamo la litlotla ho tloha feeling ea RSS ea linux.about.com.

Ha se script e sebetsang ka ho fetisisa hobane e mpa e fumana litlotla ho tsoa feong e 'ngoe ea RSS empa e boloka ho tlameha ho hopola mokhoa oa ho fepa ho RSS feed ea Linux.about.com.

Bulela script ea rssget.sh nano hape 'me u fetole faele ho sheba ka tsela e latelang:

#! / bin / bash

haeba [$ 1 = "verbose"]
joale
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
fi

Sebelisa script hape ka ho thathamisa se latelang:

sh rssget.sh verbose

Lekhetlong lena fepa ea RSS e khutla ka sehlooho, link le tlhaloso.

A re ke re sekaseke lengolo ka boitsebiso bo itseng:

The #! / Bin / bash e hlaha mongolong o mong le o mong oo re o ngotseng. Mokha o latelang o shebile parameter ea pele ea ho kenya e fanoang ke motlatsi mme ae bapisa le lentsoe "verbose". Haeba parameter ea polelo le lentsoe "verbose" li bapisa methati pakeng tsa nako le fi li matha.

Ho hlakile hore sesebelisoa se ka holimo se fosahetse. Ho etsahala'ng haeba u sa fane ka parameter ea tlhahiso ho hang? Karabo ke hore u fumana phoso haufi le melaetsa ea moetsi oa mochine ea sa lebelloang.

Phoso e 'ngoe e kholo ke hore haeba u sa fane ka lentsoe "verbose" ha ho letho le etsahalang ho hang. Molemo haeba u sa fane ka lentsoe verbose script e tla khutlisa lethathamo la litlotla.

Sebelisa nano hape ho fetola faele ea rssget.sh le ho fetola khoutu ka tsela e latelang:

#! / bin / bash

haeba [$ 1 = "verbose"]
joale
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi

Pholosa faele mme ue tsamaise ka ho thathamisa se latelang:

sh rssget.sh verbose

Lenane la litlotla, litlhaloso le li-link li tla hlaha. Hona joale e mathe hape ka tsela e latelang:

sh rssget.sh lihlooho

Hona joale lethathamo la litlotla le hlaha.

Karolo e eketsehileng ea script e le mocheng oa 4 mme o kenyelletsa polelo e 'ngoe . Ha e le hantle script hona joale e re haeba parameter ea pele ke lentsoe "verbose" fumana tlhaloso, lihlopha le litlotla bakeng sa fepa ea RSS empa haeba parameter ea pele ke ntho e 'ngoe feela e fumane lethathamo la litlotla.

Script e ntlafalitse hanyane empa e ntse e fosahetse. Haeba u hlōleha ho kena parameter u ntse u tla fumana phoso. Esita le haeba u fana ka parameter, feela ka hore u sa batle verbose ha ho bolele hore u batla litlotla feela. E ka 'na eaba u se u e-na le phoso ea verbose ka mohlala kapa u ka' na ua tšoara maeba ao ho seng joalo a se nang thuso.

Pele re leka ho hlakola lintlha tsena ke batla ho u bontša taelo e 'ngoe hape e tsamaeang le polelo ea IF.

Fetola script ea rssget.sh ho sheba ka tsela e latelang:

#! / bin / bash

haeba [$ 1 = "kaofela"]
joale
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "tlhaloso"]
joale
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi

Ke ile ka etsa qeto ea ho tlosa lentsoe verbose ebe ke e nkela sebaka kaofela. Eo hase karolo ea bohlokoa. Mongolo o ka holimo o kenyelletsa elif e leng tsela e khutšoanyane ea ho re MOLEMO HAE.

Hona joale script e sebetsa ka tsela e latelang. Haeba o matha shssss.sh tsohle o fumana litlhaloso, li-link le litlotla. Haeba ho e-na le hoo u qeta tlhaloso ea shsssget.sh u tla fumana litlotla le litlhaloso. Haeba u fana ka lentsoe leha e le lefe u tla fumana lethathamo la litlotla.

Sena se kenyelletsa tsela ea ho tla ka potlako le lenane la lipolelo tse nang le maemo. Tsela e 'ngoe ea ho etsa ELIF ke ho sebelisa se tsejoang e le lipolelo tsa mahlahahlaha a IF.

Se latelang ke mohlala o bontšang kamoo lipolelo tsa IF li sebetsang kateng:

#! / bin / bash

haeba [$ 2 = "aboutdotcom"]
joale
haeba [$ 1 = "kaofela"]
joale
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "tlhaloso"]
joale
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
ho seng joalo
haeba [$ 1 = "kaofela"]
joale
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
elif [$ 1 = "tlhaloso"]
joale
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
fi

Ikutloe u lokolohile ho thaepa tsohle tseo u li ratang kapa u li kopise le ho li kenya ka har'a file ea rssget.sh.

Script e boletsoeng ka holimo e hlahisa parameter ea 2 e u lumellang hore u khethe "about.com" kapa "lxer.com" sehlahisoa sa RSS.

E le ho e tsamaisa o tlanya lintlha tse latelang:

sh rssget.sh tsohle aboutdotcom

kapa

sh rssget.sh tsohle lxer

Ka sebele u ka nkela tsohle ka litlhaloso kapa litlotla ho fana ka tlhaloso feela kapa litlotla feela.

Ha e le hantle khoutu e ka holimo e re haeba phapang ea bobeli ke aboutdotcom ebe o sheba bobeli haeba polelo e ts'oanang le e ngotsoeng pele ho feta haeba mochine oa bobeli e le lxer ebe o sheba sebopeho se ka hare hape ho etsa qeto ea hore na o tla bontša litlotla, litlhaloso kapa tsohle.

Lengolo leo le fanoa feela e le mohlala oa polelo ea IF ea sehlaha 'me ho na le lintho tse ngata tse fosahetseng ka lengolo leo ho tla nka sehlooho se seng ho ba hlalosa kaofela. Bothata bo ka sehloohong ke hore ha bo ts'oanehe.

Ak'u inahanele u batla ho eketsa lijo tse ling tsa RSS joaloka Daily Linux User kapa Linux Today? Script e ne e tla ba khōlō 'me haeba u entse qeto ea hore u batla hore polelo ea ka hare ea IF e fetohe u tla tlameha ho e fetola libakeng tse ngata.

Le hoja ho na le nako le sebaka sa IF e nang le sehlaha, se lokela ho sebelisoa hanyane ka hanyane. Ka tloaelo ho na le mokhoa oa ho etsisa khoutu ea hau e le hore u se ke ua hlola u e-na le lihlahisoa tsa linaha tsa 'mele. Ke tla tlisa taba ena sehloohong se tlang.

A re ke re shebang ho rarolla bothata ba batho ba kenang lipaleng tsa duff. Ka mohlala ho script e ka hodimo haeba moetsi a kenella ho hong ho fapana le "aboutdotcom" e le parameter ea 2 e ntan'o ba lethathamo la lihlooho tse hlahang ho fepa ea RSS ho tloha LXER ho sa tsotellehe hore na mosebedisi o kene lxer kapa che.

Ho phaella moo haeba mosebeletsi a sa kenye "tsohle" kapa "tlhaloso" e le parameter ea pele joale ho na le lenane la litlotla tse ka 'nang tsa e-ba seo seo motho a se batlang.

Sheba script e latelang (kapa kopitsa le e kenye ka har'a file ea rssget.sh.

#! / bin / bash

haeba [$ 2 = "aboutdotcom"] || [$ 2 = "lxer"]
joale
haeba [$ 1 = "tsohle"] || [$ 1 = "tlhaloso"] || [$ 1 = "sehlooho"]
joale
haeba [$ 2 = "aboutdotcom"]
joale

haeba [$ 1 = "kaofela"]
joale
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "tlhaloso"]
joale
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
ho seng joalo
haeba [$ 1 = "kaofela"]
joale
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
elif [$ 1 = "tlhaloso"]
joale
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
fi
fi
fi

Ntho ea pele eo u lokelang ho e ela hloko ke hore script e se e fumaneha hantle 'me u ka potlakela ho bona hore na ho tsoa taolong ho se hokae haeba lipolelo li ka ba teng.

Ntho e bohlokoa ho script ena ke polelo ea IF || polelo THEN karolo ea mola oa 2 le oa 4.

The || e emetse OR. Kahoo mohala haeba [$ 2 = "aboutdotcom"] || [$ 2 = "lxer"] e hlahloba hore na parameter ea 2 e lekane le "aboutdotcom" kapa "lxer". Haeba e se ka nako eo polelo ea IF e phethehile hobane ha ho na polelo e 'ngoe bakeng sa ka ntle ho IF.

Ka mokhoa o ts'oanang le molaong oa 4 moeli haeba [$ 1 = "tsohle"] || [$ 1 = "tlhaloso"] || [$ 1 = "tlotla"] e hlahloba hore na parameter ea pele e lekane le "tsohle" kapa "tlhaloso" kapa "tlotla".

Joale haeba mosebeletsi a sebelisa sh rssget.sh litapole tsa litapole ha ho letho le khutlisitsoeng empa pele ba ka fumana lenane la litlotla tse tsoang LXER.

Ntho e fapaneng ea || ke &&. Lefapha la && le emela AND.

Ke tla etsa hore script e shebahala eka ke ntho e bohloko empa e etsa tlhahlobo ea bohlokoa ho netefatsa hore mofani o fane ka lintlha tse 2.

#! / bin / bash

haeba [$ # -eq 2]
joale

haeba [$ 2 = "aboutdotcom"] || [$ 2 = "lxer"]
joale
haeba [$ 1 = "tsohle"] || [$ 1 = "tlhaloso"] || [$ 1 = "sehlooho"]
joale
haeba [$ 2 = "aboutdotcom"]
joale

haeba [$ 1 = "kaofela"]
joale
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "tlhaloso"]
joale
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
ho seng joalo
haeba [$ 1 = "kaofela"]
joale
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
elif [$ 1 = "tlhaloso"]
joale
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
ho seng joalo
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
fi
fi
fi
fi

Taba e le 'ngoe feela e ngotseng lengolong leo ke e' ngoe e ka ntle ea IF e latelang: haeba [$ # -eq 2] . Haeba u bala sehlooho se mabapi le litekanyetso tsa ho kenya u tla tseba hore $ # e khutlisetsa palo ea palo ea lipalo tsa ho kenya. The -eq emela e lekana. Ka hona, IF IF e hlahloba hore mosebeletsi o kentse lits'ebetso tse peli 'me haeba ba sa ka ba tsoa ntle le ho etsa letho. (Hase haholo-holo botsoalle).

Kea tseba hore tutorial ena e ntse e le khōlō haholo. Ha ho na lintho tse ling tse ngata tse lokelang ho koaheloa bekeng ena empa ke batla ho thusa ho hlakisa script pele re qeta.

Taelo ea ho qetela eo u hlokang ho ithuta ka lipolelo tse tiisitsoeng ke polelo ea CASE.

#! / bin / bash


haeba [$ # -eq 2]
joale
boemo ba $ 2
ho se hokae)
boemo ba $ 1 ho
kaofela)
rsstail -d -l -u z.about.com/6/o/m/linux_p2.xml
;;
tlhaloso)
rsstail -d -u z.about.com/6/o/m/linux_p2.xml
;;
sehlooho)
rsstail -u z.about.com/6/o/m/linux.about.com/6/o/m/linux_p2.xml
;;
esac
;;
lxer)
boemo ba $ 1 ho
kaofela)
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
;;
tlhaloso)
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
;;
sehlooho)
rsstail -u http://lxer.com/module/newswire/headlines.rss
;;
esac
;;
esac
fi

Tlhaloso ea nyeoe ke mokhoa o motle oa ho ngola HA E HLOKA HA E LE MOTHO ETSA HA E LE MOTHO.

Mohlala mohlala ona

HAEBA litholoana = libanana
Hona joale
ETSA HA HA Litholoana = li-oranges
Hona joale
HO HLOKA HA HAHA litholoana = morara
Hona joale
Qetellong HA

e ka ngoloa hape ka:

joalo ka litholoana
libanana)
etsa sena
;;
li-orang)
etsa sena
;;
morara)
etsa sena
;;
esac

Ha e le hantle ntho ea pele ka mor'a nyeoe ke ntho eo u tla e bapisa (ke hore litholoana). Joale ntho e 'ngoe le e' ngoe ka pel'a mabakete ke ntho eo u e bapisang khahlanong le eona le haeba e tšoana le mela e fetileng ;; e tla matha. Tlhaloso ea nyeoe e felisoa ka lehlakoreng le ka morao (le leng ka morao).

Tlalehong ea rssget.sh polelo ea nyeoe e tlosa tse ling tsa lihlaha tseo tse tšosang le hoja li sa li ntlafatse ka ho lekaneng.

Ho ntlafatsa ka ho feletseng script eo ke lokelang ho u tsebisa ho mefuta-futa.

Sheba khoutu e latelang:

#! / bin / bash

lxer = "lxer.com/module/newswire/headlines.rss"
aboutdotcom = "z.about.com/6/o/m/linux_p2.xml"
bontša = ""
url = ""

haeba [$ # -la 2] || [$ # -gt 2]
joale
echo "tshebediso: rssget.sh [all | description | title] [aboutdotcom | lxer]";
Etsoa;
fi

boemo ba $ 1 ho
kaofela)
bontša = "- d -l -u"
;;
tlhaloso)
bontša = "- d -u"
;;
sehlooho)
bontša = "- u"
;;
esac

boemo ba $ 2
ho se hokae)
url = $ aboutdotcom;
;;
lxer)
url = $ lxer;
;;
esac
rsstail $ e bontša $ url;

Mofuta o fapaneng o hlalosoa ka ho o fa lebitso le ho o fa bohlokoa. Mohlala o ka holimo ke tse latelang:

lxer = "lxer.com/module/newswire/headlines.rss"
aboutdotcom = "z.about.com/6/o/m/linux_p2.xml"
bontša = ""
url = ""

Script e laoloa hang-hang ka ho sebelisa mefuta-futa. Ka mohlala, parameter e ngoe le e 'ngoe e sebetsoa ka thoko, kahoo ha ho na lipolelo tsa IF tsa sehlaha.

Ponahalo e fapaneng joale e behiloe ho latela hore na o khethile tsohle, tlhaloso kapa sehlooho le phapang ea url e behiloe boleng ba mofuthu oa aboutdotcom kapa boleng ba ho fetoha ha lxer ho itšetlehile ka hore na u khethile aboutdotcom kapa lxer.

Taelo ea rsstail hona joale e tlameha ho sebelisa bohlokoa ba pontšo le url ho sebetsa hantle.

Le hoja mefuta-futa e behiloe feela ka ho ba fa lebitso, ho e sebelisa e le hore u behe letšoao la $ ka pel'a bona. Ka mantsoe a mang ho feto-fetoha = boleng bo beha se feto-fetohang ho boleng empa chelete e fetisisang ea chelete e fana ka 'na litaba tse fapaneng.

E latelang ke script ea ho qetela bakeng sa thupelo ena.

#! / bin / bash

lxer = "lxer.com/module/newswire/headlines.rss"
aboutdotcom = "z.about.com/6/o/m/linux_p2.xml"
dailydayuxuser = "http://feeds.feedburner.com/everydaylinuxuser/WLlg"
linuxtoday = "http://feedproxy.google.com/linuxtoday/linux"
tshebediso = "tshebediso: rssget.sh [all | description | title] [lxer | aboutdotcom | dailydaylinuxuser | linuxtoday]"
bontša = ""
url = ""

haeba [$ # -la 2] || [$ # -gt 2]
joale
echo $ tshebediso;
Etsoa;
fi

boemo ba $ 1 ho
kaofela)
bontša = "- d -l -u"
;;
tlhaloso)
bontša = "- d -u"
;;
sehlooho)
bontša = "- u"
;;
*)
echo $ tshebediso;
Etsoa;
;;
esac

boemo ba $ 2
ho se hokae)
url = $ aboutdotcom;
;;
lxer)
url = $ lxer;
;;
linuxtoday)
url = $ linuxtoday;
;;
letsatsi le leng le le leng)
url = $ letsatsi le leng le le leng;
;;
*)
echo $ tshebediso;
Etsoa;
esac

rsstail $ e bontša $ url;

Script e hlalositsoeng ka holimo e fana ka mangolo a mangata a RSS ebile ho na le sebopeho se sebelisoang se bolellang motsoalle mokhoa oa ho sebelisa script haeba ba sa khone ho kenya mefuta e 2 kapa ba kenya likhetho tse sa nepahalang bakeng sa mefuta-futa.

Kakaretso

Ena e bile sehlooho se hlaheletseng mme e ka 'na eaba se se se le hōle haholo. Ka tataiso e latelang ke tla u bontša likhetho tsohle tsa lipapiso bakeng sa lipolelo tsa IF le ho sa ntse ho e-na le lintho tse ling tse ngata tseo u lokelang ho li bua mabapi le mefuta-futa.

Hape ho na le lintho tse ling tse ka etsoang ho ntlafatsa se ngotsoeng ka holimo 'me sena se tla koaheloa libukeng tsa nakong e tlang ha re ntse re hlahloba lintlha, li- grep le lipolelo tse tloaelehileng.

Hlahloba How To (Scroll tlase ho feta lihlopha ho bona lethathamo la lihlooho) karolo ea l inux.about.com ho fumana lihlopha tse ling tsa bohlokoa ho tloha booting bo bobeli ba Windows le Ubuntu ho theha mochine oa sebele o sebelisang mabokose a GNOME .