Kā izmantot pievienošanās komandu operētājsistēmā Linux

Fatmawati Achmad Zaenuri/Shutterstock
Ja vēlaties sapludināt datus no diviem teksta failiem, saskaņojot kopējo lauku, varat izmantot Linux |_+_| komandu. Tas jūsu statiskajiem datu failiem piešķir dinamismu. Mēs jums parādīsim, kā to izmantot.
Datu saskaņošana starp failiem
Dati ir karalis. Tajā darbojas gan korporācijas, gan uzņēmumi, gan mājsaimniecības. Taču dati, kas glabājas dažādos failos un ko apkopojuši dažādi cilvēki, ir sāpīgi. Papildus tam, ka ir jāzina, kurus failus atvērt, lai atrastu vajadzīgo informāciju, failu izkārtojums un formāts, iespējams, var atšķirties.
Jums ir arī jārisina administratīvās galvassāpes par to, kuri faili ir jāatjaunina, kuri ir jādublē, kuri ir mantoti un kurus var arhivēt.
Turklāt, ja jums ir nepieciešams konsolidēt savus datus vai veikt kādu analīzi par visu datu kopu, jums ir papildu problēma. Kā racionalizēt datus dažādos failos, pirms varat ar tiem darīt nepieciešamo? Kā tuvojaties datu sagatavošanas fāzei?
Labās ziņas ir tādas, ja failiem ir vismaz viens kopīgs datu elements — Linux |_+_| komanda var izvilkt no purva.
Datu faili
Visi dati, ko izmantosim, lai demonstrētu |_+_| izmantošanu komanda ir izdomāta, sākot ar šādiem diviem failiem:
join
join
Šis ir |_+_| saturs:
join
Reklāma Mums ir numurētu rindu komplekts, un katrā rindā ir visa šāda informācija:
- & rsaquo; Kiberpirmdiena 2021: labākie tehnoloģiju piedāvājumi
- & rsaquo; Kiberpirmdiena 2021: labākie Apple piedāvājumi
- › Funkcijas un formulas programmā Microsoft Excel: kāda ir atšķirība?
- › 5 vietnes, kas katram Linux lietotājam ir jāiekļauj grāmatzīmēs
- › Kā atrast savu Spotify iesaiņojumu 2021. gadam
- › Datora mape ir 40: kā Xerox Star izveidoja darbvirsmu
Šis ir |_+_| saturs:
file-1.txt
Katra rinda |_+_| satur šādu informāciju:
|_+_| komanda darbojas ar laukiem, kas šajā kontekstā nozīmē teksta sadaļu, ko ieskauj atstarpes, rindas sākums vai rindas beigas. Par |_+_| lai saskaņotu rindas starp diviem failiem, katrā rindā ir jābūt kopējam laukam.
Tāpēc mēs varam saskaņot lauku tikai tad, ja tas parādās abos failos. IP adrese parādās tikai vienā failā, tāpēc tas nav labi. Pirmais vārds parādās tikai vienā failā, tāpēc arī to nevaram izmantot. Uzvārds ir abos failos, taču tā būtu slikta izvēle, jo dažādiem cilvēkiem ir vienāds uzvārds.
Jūs nevarat arī saistīt datus ar vīriešu un sieviešu ierakstiem, jo tie ir pārāk neskaidri. Arī Ņujorkas reģioni un dolāra vērtības parādās tikai vienā failā.
Tomēr mēs varam izmantot e-pasta adresi, jo tā ir abos failos, un katrs no tiem ir individuāls. Ātra failu apskate arī apstiprina, ka katras rindas atbilst vienai un tai pašai personai, tāpēc mēs varam izmantot rindu numurus kā mūsu lauku, lai tie atbilstu (vēlāk izmantosim citu lauku).
ReklāmaŅemiet vērā, ka abos failos ir atšķirīgs lauku skaits, un tas ir labi — mēs varam noteikt |_+_| kuru lauku izmantot no katra faila.
Tomēr uzmanieties no tādiem laukiem kā Ņujorkas reģioni; ar atstarpi atdalītā failā katrs vārds reģiona nosaukumā izskatās kā lauks. Tā kā dažiem reģioniem ir divu vai trīs vārdu nosaukumi, vienā failā faktiski ir atšķirīgs lauku skaits. Tas ir pareizi, ja vien jūs atbilstat laukiem, kas parādās rindā pirms Ņujorkas reģioniem.
Pievienošanās komanda
Pirmkārt, ir jāsakārto lauks, kuram plānojat atbilstību. Abos failos ir augoši skaitļi, tāpēc mēs atbilstam šiem kritērijiem. Pēc noklusējuma |_+_| izmanto pirmo lauku failā, ko mēs vēlamies. Vēl viena saprātīga noklusējuma vērtība ir |_+_| sagaida, ka lauku atdalītāji ir atstarpes. Atkal, mums tas ir izdevies, lai mēs varētu turpināt un iedarbināt |_+_|.
Tā kā mēs izmantojam visus noklusējuma iestatījumus, mūsu komanda ir vienkārša:
file-2.txt
|_+_| uzskata failus par pirmo failu un otro failu atbilstoši secībai, kādā tie ir norādīti komandrindā.
Izvade ir šāda:
file-2.txt
Izvade tiek formatēta šādi: Vispirms tiek izdrukāts lauks, kurā tika saskaņotas rindas, pēc tam pārējie lauki no pirmā faila un pēc tam lauki no otrā faila bez atbilstības lauka.
Nešķirotie lauki
Izmēģināsim kaut ko tādu, par ko mēs zinām, ka tas nedarbosies. Mēs liksim rindas vienā failā nevietā, tāpēc |_+_| nevarēs pareizi apstrādāt failu. |_+_| saturs ir tādi paši kā |_+_|, bet astotā rinda atrodas starp piekto un sesto rindiņu.
Šis ir |_+_| saturs:
join
Reklāma Mēs ierakstām šādu komandu, lai mēģinātu pievienoties |_+_|uz |_+_|:
join
|_+_| ziņo, ka septītā rinda |_+_| nav kārtībā, tāpēc tas netiek apstrādāts. Septītā rinda ir tā, kas sākas ar skaitli seši, kam pareizi sakārtotā sarakstā jābūt pirms astoņiem. Sestā rindiņa failā (kas sākas ar 8 Odell) bija pēdējā apstrādātā, tāpēc mēs redzam tās izvadi.
Varat izmantot |_+_| opciju, ja vēlaties redzēt, vai |_+_| ir apmierināts ar failu kārtošanas secību — sapludināšana netiks mēģināta.
Lai to izdarītu, mēs ierakstām:
join
|_+_| jau iepriekš norāda, ka radīsies problēma ar faila |_+_| septīto rindiņu.
Faili ar trūkstošām rindām
Laukā |_+_| pēdējā rindiņa ir noņemta, tāpēc nav astotās rindas. Saturs ir šāds:
join
Reklāma Mēs ierakstām šādu un pārsteidzošā kārtā |_+_| nesūdzas un apstrādā visas iespējamās rindas:
join
Izvadā ir norādītas septiņas apvienotās rindas.
|_+_| (drukāšana nav savienojama) opcija norāda |_+_| lai izdrukātu arī tās rindas, kuras nevarēja saskaņot.
Šeit mēs ierakstām šādu komandu, lai pateiktu |_+_| lai izdrukātu rindas no pirmā faila, kuras nevar saskaņot ar otrā faila rindām:
join
Septiņas rindas ir saskaņotas, un astotā rinda no pirmā faila tiek izdrukāta, nesaskaņota. Nav apvienotas informācijas, jo |_+_| nesaturēja astoto rindiņu, kurai to varētu saskaņot. Tomēr vismaz tas joprojām parādās izvadā, lai jūs zinātu, ka tam nav atbilstības |_+_|.
Mēs ierakstām šādu |_+_| (apspiest savienotās līnijas), lai atklātu visas rindas, kurām nav atbilstības:
join
Mēs redzam, ka astotā rinda ir vienīgā, kurai nav atbilstības otrajā failā.
Atbilstība citiem laukiem
Saskaņosim divus jaunus failus laukā, kas nav noklusējuma lauks (1. lauks). Tālāk ir norādīts faila-7.txt saturs:
join
Tālāk ir norādīts faila-8.txt saturs:
file-3.txt
Reklāma Vienīgais saprātīgais lauks, ko izmantot, lai pievienotos, ir e-pasta adrese, kas ir pirmais lauks pirmajā failā un lauks otrais otrajā. Lai to izdarītu, mēs varam izmantot |_+_| (fails viens lauks) un |_+_| (faila divi lauki) opcijas. Mēs tiem sekosim ar skaitli, kas norāda, kurš katra faila lauks ir jāizmanto, lai pievienotos.
Mēs ierakstām šo, lai pateiktu |_+_| lai izmantotu pirmo lauku pirmajā failā un otro failu otrajā:
file-2.txt
Faili tiek apvienoti e-pasta adresē, kas tiek parādīta kā katras izvades rindas pirmais lauks.
Izmantojot dažādus lauku atdalītājus
Ko darīt, ja jums ir faili ar laukiem, kas ir atdalīti ar kaut ko citu, nevis ar atstarpi?
Šie divi faili ir atdalīti ar komatu — vienīgā atstarpe ir starp vietu nosaukumiem, kas sastāv no vairākiem vārdiem:
file-3.txt
file-3.txt
Mēs varam izmantot |_+_| (atdalīšanas rakstzīme), lai pateiktu |_+_| kuru rakstzīmi izmantot kā lauku atdalītāju. Šajā gadījumā tas ir komats, tāpēc mēs ierakstām šādu komandu:
file-1.txt
Visas līnijas ir saskaņotas, un vietu nosaukumos ir saglabātas atstarpes.
Burtu reģistra ignorēšana
Cits fails, |_+_|, ir gandrīz identisks failam |_+_|. Vienīgā atšķirība ir tā, ka dažām e-pasta adresēm ir lielais burts, kā parādīts tālāk:
join
Kad pievienojāmies |_+_| un |_+_|, tas darbojās lieliski. Redzēsim, kas notiks ar |_+_| un |_+_|.
Mēs ierakstām šādu komandu:
file-3.txt
Mēs saskaņojām tikai sešas rindas. Lielo un mazo burtu atšķirības neļāva apvienot pārējās divas e-pasta adreses.
ReklāmaTomēr mēs varam izmantot |_+_| (ignorēt reģistru) iespēja piespiest |_+_| lai ignorētu šīs atšķirības un saskaņotu laukus, kuros ir viens un tas pats teksts, neatkarīgi no reģistra.
Mēs ierakstām šādu komandu:
--check-order
Visas astoņas rindas ir saskaņotas un veiksmīgi savienotas.
Sajauc un savieno
Programmā |_+_| jums ir spēcīgs sabiedrotais, kad cīnāties ar neērtu datu sagatavošanu. Iespējams, jums ir jāanalizē dati vai arī jūs mēģināt tos pārveidot, lai veiktu importēšanu citā sistēmā.
Neatkarīgi no situācijas jūs priecāsities, ka jums ir |_+_| tavā stūrītī!
SAISTĪTI: Labākie Linux klēpjdatori izstrādātājiem un entuziastiem
LASĪT TĀLĀK
Deivs Makejs pirmo reizi izmantoja datorus, kad modē bija perforētā papīra lente, un kopš tā laika viņš nodarbojas ar programmēšanu. Pēc vairāk nekā 30 IT nozarē nostrādātiem gadiem viņš tagad ir pilnas slodzes tehnoloģiju žurnālists. Savas karjeras laikā viņš ir strādājis par ārštata programmētāju, starptautiskas programmatūras izstrādes komandas vadītāju, IT pakalpojumu projektu vadītāju un pēdējā laikā par datu aizsardzības speciālistu. Viņa raksti ir publicēti vietnē howtogeek.com, cloudsavvyit.com, itenterpriser.com un opensource.com. Deivs ir Linux evaņģēlists un atvērtā koda aizstāvis.
Lasīt pilnu biogrāfiju