He Alakeho E Hoʻomaka I Ka HOPE - Nā Kuleana a me Nā Huikau

Hōʻike

Welcome i ka hapakolu o ka "Hoʻomākaukau Hoʻomaka I BASH". Inā ua halaʻoe i nāʻatikalaʻelua i hala iho nei, laila paha e makemakeʻoe eʻike i ke kumu eʻokoʻa ai kēia kulekele i nā papa alakaʻi kākau BASH.

Kuhiʻia kēia kulekele e kekahi novice piha i ka BASH a no ka mea e aʻo aiʻoe i ka mea heluhelu e like me kaʻu aʻo. ʻOiai wau he mea kūpaʻa i ka BASH, ua hele mai au mai kahi hoʻomohala polokalamu polokalamu ma hope o ka nui o nā mea aʻu i kākau ai no ka pūnaewele Windows.

Hiki iāʻoe keʻike i nā alakaʻi muaʻelua e ke kipaʻana:

Ināʻoe hou i ka palapala kākau BASH makemake wau e heluhelu i nā alakaʻi muaʻelua ma mua o ka holoʻana me kēia.

Ma kēia kulekele e hōʻike wau i ka hoʻohanaʻana i nā'ōlelo conditional e ho'āʻo ai i ka hoʻokomoʻana o ka mea hoʻohana a me ka hoʻoholoʻana i ka hanaʻana o kahi palapala.

E hoʻouka i ka rsstail

No ka hahaiʻana i kēia alakaʻi, ponoʻoe e hoʻouka i kahi palapala laina kauoha i kapaʻia ka rsstail i hoʻohanaʻia e heluhelu i nā hānai RSS .

Ināʻoe e hoʻohana nei i kahi hoʻopuka kākoʻo Debian / Ubuntu / Mint e like me kēia:

sudo apt-e hoʻokomo i kahi hōʻailona

No Fedora / CentOS a pēlā e hoʻokomo i kēia mau mea:

yum e hoʻokomo i kahi kiko

No ka openSUSE kākau i kēia mau mea:

zypper hoʻokoe i kahi hōʻailona

ʻO ka'ōlelo IF

E wehe i kahi pani a hana i kahi faila i kapaʻia rssget.sh ma ke kāomiʻana i kēia mau mea:

sudo nano rssget.sh

Ma loko o ka hoʻoponopono hoʻoponopono e hoʻokomo i kēia mau hua'ōlelo:

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

E mālama i ka pūnaewele ma o kaomiʻana iā CTRL a meʻO a ma waho e kaomiʻana iā CTRL a me X.

E holo i ka hōʻailona ma o ka hanaʻana i kēia mau mea:

hi shssget.sh

E hoʻihoʻi ka hōʻailona i ka papa inoa o nā inoa mai ka mākaukau ma Linux.about.com.

ʻAʻole ia he hōʻailona maikaʻi loa no ka mea e loaʻa iā ia nā inoa mai kahi hānai RSS wale nō e mālama i ka hoʻomanaʻo i ke ala i ka Linux.about.com ka hānai RSS.

E wehe i ka hōʻano rssget.sh i nano hou a hoʻonā i ka faila e nānā e like me kēia:

#! / bin / bash

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

E holo hou i ka palapala hou ma o ka hanaʻana i kēia mau mea:

w shssget.sh verbose

I kēia manawa, hoʻi mai ka hānai RSS me ka inoa, ka loulou a me ka weheweheʻana.

E kāleka i ka hōʻokoʻa ma kahi o ke kikowaena:

Hōʻikeʻia ka #! / Bin / bash ma nā palapala a mākou e kākau nei. Ke nānā pono nei ka laina aʻe i ka helu hoʻokomo mua i hāʻawiʻia e ka mea hoʻohana a hoʻohālike i ka hua'ōlelo "verbose". Inā pili ka helu hoʻokomo a me ka hua'ōlelo "verbose" i nā laina ma waena o ka manawa a me kaʻoi .

ʻO ka papahana i'ōleloʻia ma luna nei he maopopo loa. He aha kāu e hana ai ināʻaʻoleʻoe e hāʻawi i kahi helu hoʻokomo? ʻO ka paneʻana, loaʻaʻoe i kahi kuhi ma nā laina o ka meaʻoihana i manaʻoʻoleʻia.

ʻO kekahi hewa nui'ē aʻe ināʻaʻoleʻoe e hoʻolako i ka hua'ōlelo "verbose" ināʻaʻohe mea e loaʻa. Ke kūpono ināʻaʻoleʻoe e hoʻolako i ka hua'ōlelo verbose hōʻoia e hoʻihoʻi i ka papa inoa o nā inoa.

E hoʻohana hou i nano e hoʻoponopono i ka kōnae rssget.sh a hoʻololi i ke code penei:

#! / bin / bash

inā [$ 1 = "verbose"]
alaila
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi

E mālama i ka faila a e holo i ke kaomiʻana i kēia mau mea:

w shssget.sh verbose

E hōʻikeʻia kahi papa inoa, nā wehewehe a me nā loulou. E holo hou e like me kēia:

Nā papa inoa sh rssget.sh

I kēia manawa e hōʻike waleʻia kahi inoa inoa.

ʻO ka hapa hou o ka hōʻailona ma ka laina 4 a hoʻokomo i kahi'ōlelo'ē aʻe . ʻO ka hōʻailona hōʻoia e'ōlelo nei ināʻo ka helu muaʻo ka hua'ōlelo "verbose" ka loaʻaʻana o nā kuhikuhi, nā loulou a me nā pelekane no ka hānai RSS akā ināʻo ka helu mua he mea'ē aʻe, e loaʻa wale kahi papa inoa.

Ua piʻi aʻe ka hōʻoia akā ua hewa naʻe. Ināʻoleʻoe e komo i kahi koho, e loaʻa mau paha i kahi hewa. ʻOiai inā e hoʻolakoʻoe i kahi koho, e'ōlelo waleʻoeʻaʻole makemakeʻoe i ka verboseʻaʻole ia makemakeʻoe e makemake i nā kiʻi wale nō. Hiki paha iāʻoe ke wili wale i ka verbose no ka hana a iʻole paha i kapalapala i nā nūnū he meaʻole ia.

Ma mua o mākou e ho'āʻo a wehe i kēia mau pilikia, makemake wau e hōʻike iāʻoe i kekahi kauoha e hele me ka'ōlelo IF.

E hoʻoponopono i kāu palapala script rssget.sh e nānā e like me kēia:

#! / bin / bash

inā [$ 1 = "nā mea a pau"]
alaila
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "wehewehe"]
alaila
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi

Ua hoʻoholo wau e hoʻolei i ka hua'ōlelo verbose a hoʻololi iā ia me nā mea a pau. ʻAʻole kēlā ka hapa nui. ʻO ka palapala ma luna nei e hōʻike i ka elif he mea pōkole e'ōlelo ELSE IF.

I kēia manawa ua hanaʻia ka moʻolelo. Inā holoʻoe i ka sh rssget.sh a laila loaʻa iāʻoe nāʻike, nā loulou a me nā kiʻi. Inā ma kahi o ka hoʻopiʻi waleʻana i ka rwget.sh hōʻikeʻana , e loaʻa iāʻoe nā inoa a me nāʻike. Inā hāʻawiʻoe i kekahi hua'ōlelo'ē aʻe, e loaʻa iāʻoe kahi papa inoa inoa.

Hōʻike kēia i kahi ala e piʻi koke mai me ka papa inoa o nā'ōlelo kūlana. ʻO kekahiʻaoʻao'ē aʻe o ka ELIF e hoʻohana i nā mea iʻikeʻia he mau'ōleloʻolelo IF hōʻoia.

Eia kekahi hiʻohiʻona e hōʻike ana i kaʻikeʻana o nā'ōlelo i hoʻokauʻia e IF:

#! / bin / bash

inā [$ 2 = "aboutdotcom"]
alaila
inā [$ 1 = "nā mea a pau"]
alaila
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "wehewehe"]
alaila
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
ʻokoʻa
inā [$ 1 = "nā mea a pau"]
alaila
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
elif [$ 1 = "wehewehe"]
alaila
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
fi

Manaʻoʻoe e kākau i nā mea a pau inā makemakeʻoe a kope paha a pasi i loko o kāu kōnae rssget.sh.

Hōʻike ka papahana ma luna nei i kahi helu lua kahi e koho ai iāʻoe e pili ana i "about.com" aiʻole "lxer.com" kahi hānai RSS.

No ka holoʻana, e kākauʻoe i kēia mau mea:

klwss.sh nā mea āpau a pau

aiʻole

w shssget.sh paukū lxer

Hiki iāʻoe ke hoʻololi i nā mea a pau me nā kiʻi a iʻole nā ​​inoa no ka hāʻawiʻana i nā kiko'ī a iʻole nā ​​pelekane wale nō.

ʻO ka mea i hōʻikeʻia ma luna nei inā inā pili ka lua o ka pāʻani a laila e nānā i ka lua ināʻikeʻia ka mea hoʻokahi mai ka hōkuhi mua ma mua ināʻikeʻia ka heluʻelua a nānā i loko inā'ōlelo hou e hoʻoholo ai inā e hōʻike i nā kiʻi, nā wehewehe ole nā ​​mea a pau.

Ua hāʻawi pololeiʻia kēlā palapala e like me kahi hiʻohiʻona o ka'ōlelo IF i hoʻokumuʻia a he nui nā mea i hewaʻole i kēlā hōʻikeʻana e laweʻia kekahi mea hou e wehewehe i nā mea a pau. ʻO ka kumu nui,ʻaʻole hiki ke pale.

E noʻonoʻoʻoe e makemake e hoʻonui i kahi hānai RSS e like me Linux Linux a Linux a i kēia lā? E lilo ka palapala i mea nui a ināʻoe i manaʻo e makemakeʻoe i ka'ōlelo o loko IF e hoʻololi, ponoʻoe e hoʻololi i nā wahi he nui.

ʻOiai kahi manawa a me kahi no kahi IF i hoʻokumuʻia e hoʻohana ponoʻia. Loaʻa i kahi ala e hoʻopau hou ai i kāu palapala helu iʻoleʻoe e makemake i kaʻike i hoʻokauʻia ma IF. E hele au i kēia kumuhana ma kahi mea e hiki mai ana.

E nānā hou i ka hoʻonohonohoʻana i ke kūlana o nā poʻe e komo ana i nā kaʻina o ka duff. No ka laʻana ma ka hōʻiko ma luna nei inā komo kahi mea i kahi mea'ē aʻe ma mua o "aboutdotcom"ʻo ia ka 2nd parameter a laila puka mai ka papa inoa o nā mea mai ka hānai RSS mai LXER me ka nānāʻole inā paha e hoʻokomo ka mea hoʻohana i ka lxer aʻaʻoleʻole.

Eia kekahi, ināʻaʻole komo ka mea hoʻohana i "nā mea a pau" aiʻole "wehewehe"ʻo ia ka papa inoa o nā inoa i hiki aʻaʻole paha i ka mea i hoʻohanaʻia e ka mea hoʻohana.

E nānā i ka hōʻano hou (a iʻole kope a pasi i loko o kāu kōnae rssget.sh.

#! / bin / bash

inā [$ 2 = "aboutdotcom"] || [$ 2 = "lxer"]
alaila
inā [$ 1 = "nā mea a pau"] || [$ 1 = "wehewehe"] || [$ 1 = "poʻo inoa"]
alaila
inā [$ 2 = "aboutdotcom"]
alaila

inā [$ 1 = "nā mea a pau"]
alaila
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "wehewehe"]
alaila
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
ʻokoʻa
inā [$ 1 = "nā mea a pau"]
alaila
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
elif [$ 1 = "wehewehe"]
alaila
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
fi
fi
fi

ʻO ka mea mua e nānāʻia, aia ka nui o ka hōʻoiaʻana i kēia manawa a hiki keʻike wikiwiki i ka hopena o nā'ōlelo IF i hoʻokūkūʻia.

ʻO ka bit iʻoi aku ma kēia hōʻali,ʻo ka'ōlelo IF paha || ka helu THEN mahele ma ka laina 2 a me ka laina 4.

ʻO ka || kūʻia no OR. No laila ke aho inā [$ 2 = "aboutdotcom"] || [$ 2 = "lxer"] e nānā i keʻano o ka heluʻelua me "aboutdotcom" aiʻole "lxer". Ināʻaʻole kēlā manawa, ua piha ka'ōlelo IF no ka meaʻaʻoheʻokoʻa no kaʻike waho IF.

E like me ke laina 4 ke laina inā [$ 1 = "nā mea a pau"] || [$ 1 = "wehewehe"] || [$ 1 = "poʻo inoa"] e nānā inā paha ua like ka 1st parameter me ka "a pau" a iʻole "wehewehe" aiʻole "poʻo inoa".

I kēia manawa inā hoʻohanaʻia ka mea hoʻohana sh rssget.sh kīʻaha kīʻahaʻole i hoʻihoʻiʻia akā ma mua o ka loaʻaʻana o ka papa inoa o nā inoa mai LXER.

ʻO kahiʻaoʻao o || ʻo & &. Ke kū nei kaʻona a me AND.

E hoʻonui wau i ka palapala e like me ka moeʻuhane akā e hana ana i kaʻike nui a pau e hōʻoia i ka mea hoʻohana i 2 mau palena.

#! / bin / bash

inā [$ #eeq 2]
alaila

inā [$ 2 = "aboutdotcom"] || [$ 2 = "lxer"]
alaila
inā [$ 1 = "nā mea a pau"] || [$ 1 = "wehewehe"] || [$ 1 = "poʻo inoa"]
alaila
inā [$ 2 = "aboutdotcom"]
alaila

inā [$ 1 = "nā mea a pau"]
alaila
rsstail -d -l -u http://z.about.com/6/o/m/linux_p2.xml;
elif [$ 1 = "wehewehe"]
alaila
rsstail -d -u http://z.about.com/6/o/m/linux_p2.xml;

ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
ʻokoʻa
inā [$ 1 = "nā mea a pau"]
alaila
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
elif [$ 1 = "wehewehe"]
alaila
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
ʻokoʻa
rsstail -u http://z.about.com/6/o/m/linux_p2.xml;
fi
fi
fi
fi
fi

ʻO kahi wale nō iʻoi aku i loko o kēlā hō'ā'ōlelo, kahi'ōlelo'ē aʻe o ka IF e like me kēia: inā [$ # -eq 2] . Inā heluheluʻoe i kaʻatikala e pili ana i nā palena o ka hoʻokomoʻana eʻikeʻoe e $ a hoʻi ka helu o ka helu o nā palena'āina. ʻO kaʻahu ke kū hoʻokahi. Keʻike nei ka'ōlelo IF i ka mea hoʻohana i komo iʻelua mau palena a ināʻaʻole lākou i puka wale mai me ka hanaʻole i kekahi mea. (ʻAʻoleʻoi aku ka pilina).

Uaʻike wau e loaʻa nui ana kēia aʻo. ʻAʻole he nui aku nā mea e uhi i kēia hebedoma akā makemake wau e kōkua i ka hoʻomaluʻana i ka hōkeo ma mua o ka pauʻana.

ʻO ka'ōlelo hope loa e pono aiʻoe e aʻo e pili ana i nā kūlana kūpono ke kumukūʻai CASE.

#! / bin / bash


inā [$ #eeq 2]
alaila
hihia $ 2 i loko
alanakola)
hihia $ 1 i loko
nā mea a pau)
rsstail -d -l -u z.about.com/6/o/m/linux_p2.xml
;
hōʻike)
rsstail -d -u z.about.com/6/o/m/linux_p2.xml
;
inoa)
rsstail -u z.about.com/6/o/m/linux.about.com/6/o/m/linux_p2.xml
;
esac
;
lxer)
hihia $ 1 i loko
nā mea a pau)
rsstail -d -l -u http://lxer.com/module/newswire/headlines.rss
;
hōʻike)
rsstail -d -u http://lxer.com/module/newswire/headlines.rss
;
inoa)
rsstail -u http://lxer.com/module/newswire/headlines.rss
;
esac
;
esac
fi

ʻO ka'ōlelo hoʻopiʻi kahi kākau kākau kiʻekiʻeʻo IF ELSE IF ELSE IF ELSE IF.

Eia kekahi laʻana

Inā hua = ka maiʻa
A lailaʻo kēia
ELSE IF hua = alani
A lailaʻo kēia
ELSE IF hua = nā hua waina
A lailaʻo kēia
END IF

hiki ke hoʻololi hou penei:

nā hua'ōlelo i loko
bananas)
e hana i kēia
;
o nā ala)
e hana i kēia
;
nā hua waina)
e hana i kēia
;
esac

ʻO ka mea mua loa ma hope o ka hihia,ʻo ia ka mea āu e hoʻohālike ai (ʻo ia hoʻi ka hua). A laila, kēlā me kēia mea i mua o nā pākeke,ʻo ia ka mea āu e hoʻohālike nei me ia a inā e like me nā laina i hala aʻe nei; e holo. Ua hoʻopauʻia kekahi hoʻopiʻi hihia me ka hoʻopiʻi hope (ʻo ia ke kumu i hope).

Ma ka palapala rssget.sh hōʻoia ka'ōlelo hoʻopiʻi i kekahi o iaʻano hōʻeuʻewa weliweli me ka maikaʻiʻole.

I mea e hoʻomaikaʻi pono ai i ka palapala e pono ai wau e hoʻokomo iāʻoe i nāʻikepili.

E nānā i kēia code:

#! / bin / bash

lxer = "lxer.com/module/newswire/headlines.rss"
aboutdotcom = "z.about.com/6/o/m/linux_p2.xml"
hōʻike = ""
url = ""

inā [$ # -lt 2] || [$ # -gt 2]
alaila
e hoʻopiʻi hou "hoʻohana: rssget.sh [hoʻolana | hōʻike | title] [aboutdotcom | lxer]";
puka;
fi

hihia $ 1 i loko
nā mea a pau)
hōʻike = "- d -l -u"
;
hōʻike)
hōʻike = "- d -u"
;
inoa)
hōʻike = "- u"
;
esac

hihia $ 2 i loko
alanakola)
url = $ aboutdotcom;
;
lxer)
url = $ lxer;
;
esac
rsstail $ hōʻike $ url;

Ua weheweheʻia kahi'ilili i ka hāʻawiʻana iā ia i ka inoa a laila hāʻawi i kahi waiwai iā ia. Ma ka helu ma luna nei, he mau mea likeʻole nā ​​mea i heluʻia:

lxer = "lxer.com/module/newswire/headlines.rss"
aboutdotcom = "z.about.com/6/o/m/linux_p2.xml"
hōʻike = ""
url = ""

Hoʻomaopopo houʻia ka hōʻailona ma o ka hoʻohanaʻana i nā kānana. No kēlā me kēiaʻano, mālama ponoʻia kēlā me kēia pāʻokoʻa a no lailaʻaʻole i loaʻa nā'ōlelo IF i hoʻohuiʻia.

Ua hoʻonohonohoʻia ka laulā hōʻike e pili ana i kāu kohoʻana i nā mea a pau, ka wehewehe a me ka inoa a me ka helu url i hoʻonohonohoʻia i ka nui o ka hoʻololi aboutdotcom a iʻole ka waiwai o ka helu lxer e pili ana inā kohoʻoe aboutdotcom a iʻole lxer.

ʻO ka kauoha rsstail i kēia manawa wale nō e hoʻohana i ka waiwai o ka hōʻike a me url e holo pololei.

ʻOiai ka hoʻonohonohoʻana o nāʻikepili ma ka hāʻawiʻana iā lākou i inoa, pono e hoʻohana i ia mau mea e kau i kahi hōʻailona ma mua o lākou. I nā hua'ōlelo'ē aʻe,'ololi = nā hoʻohālikelike hoʻololi i hoʻololiʻia i kahi kumukūʻai ma muli o ka hāʻawiʻana o $ variable i nā mea o ka helu.

Eia ka papa hope hope loa no kēia kumu aʻo.

#! / bin / bash

lxer = "lxer.com/module/newswire/headlines.rss"
aboutdotcom = "z.about.com/6/o/m/linux_p2.xml"
loiloihoihoi = "http://feeds.feedburner.com/everydaylinuxuser/WLlg"
linuxtoday = "http://feedproxy.google.com/linuxtoday/linux"
hoʻohana hoʻohana = "hoʻohana: rssget.sh [hoʻokaʻawale | kiʻi | title] [lxer | aboutdotcom | dailylinuxuser | linuxtoday]"
hōʻike = ""
url = ""

inā [$ # -lt 2] || [$ # -gt 2]
alaila
e hoʻopiʻi hou i $;
puka;
fi

hihia $ 1 i loko
nā mea a pau)
hōʻike = "- d -l -u"
;
hōʻike)
hōʻike = "- d -u"
;
inoa)
hōʻike = "- u"
;
*)
e hoʻopiʻi hou i $;
puka;
;
esac

hihia $ 2 i loko
alanakola)
url = $ aboutdotcom;
;
lxer)
url = $ lxer;
;
linextoday)
url = $ linuxtoday;
;
helenahoihoihoi)
url = $ dailylinuxuser;
;
*)
e hoʻopiʻi hou i $;
puka;
esac

rsstail $ hōʻike $ url;

Hōʻike ka papahana ma luna nei i nā mea hānai RSS a aia kekahi mahele hoʻohana e haʻi ana i ka mea hoʻohana pehea e hoʻohana ai i ka hōʻailona ināʻaʻole lākou e komo i nā heluʻelua a iʻole lākou e komo i nā koho kūponoʻole no nā loli.

Hōʻuluʻulu

He mea leka kēia a he hiki paha ke hele lōʻihi loa. Ma ke aʻo hou e hōʻike aku wau iāʻoe i nā koho hoʻohālike no nā'ōlelo kūikawā a me ka nui o ka'ōlelo e pili ana i nāʻano loli.

Aia kekahi mau mea'ē aʻe e hiki ke hana no ka hoʻonuiʻana i ka papahana i'ōleloʻia ma luna nei a e uhiʻia kēia i nā alakaʻi ma hope nei aʻo mākou eʻimi ana i nā puka'ōpiopio, a me nā'ōlelo maʻamau.

E nānā i ka pehea e (Scroll down past categories to see a list of articles) section of l inux.about.com no ka huliʻana i nā kulekele maikaʻi aʻe mai ka hoʻoukaʻana o Windows a me Ubuntu i ka hoʻokumuʻana i kahi mīkini mama ma nā pahu GNOME .