28Jun
Kad jūs pārvaldāt savus serverus, viena no lietām, ko jūs galu galā vēlaties veikt daļēji regulāri, ir iegūt failus no faila vidus. Varbūt tas ir žurnāla fails, vai arī jums ir jāpievieno viena tabula no jūsu MySQL rezerves faila vidus, tāpat kā es.
Lai noskaidrotu līniju numurus, uzdevums izpildīja vienkāršu grep -n komandu( -n arguments izsniedz līnijas numurus).Tas padarīja to viegli saprast, kas man bija nepieciešams, lai iegūtu.
grep -n wp_posts howtogeekdb010114.bak |vairākRezultāti ir kaut kas līdzīgs šim, kas rāda līnijas numurus produkcijas kreisajā pusē.Visu cauruļvadu iekļaušana "vairāk" nodrošina, ka jūs varat redzēt pirmo rindiņu bez tās ritināšanas. Tagad jums ir rindas numurs, lai sāktu ar, un, iespējams, tas, kas beidzas ar.
4160: - tabulas struktūra tabulai `wp_posts` 4163: DROP TABLA, ja eksistē` wp_posts`;4166: CREATE TABLE `wp_posts`( 4203: - Datu dempings tabulai` wp_posts` 4206: LOCK TABLES `wp_posts` WRITE; 4207: / *! 40000 ALTER TABLE` wp_posts` DISABLED KEYS * /; 4208: INSERT INTO `wp_posts`VĒRTĪBAS( 1,2, '2006-09-11 05:07:23', '2006-09-11, 05:07:23', '2006-09-11Jūs, protams, varat vienkārši izvadīt no grep uz citu failu, piemēram:
grep keyword filename.txt> output fileManā gadījumā tas negribēja strādāt, jo kādu iemeslu dēļ es nevarēju importēt iegūto dublējumu. Tātad, es atklāju citu veidu, kā iegūt līnijas, izmantojot sed, un šī metode bija darbs
sed -n '4160,4209p' howtogeekdb0101140201.bak & gt; outputfileBūtībā sintakse ir tāda pati, pārliecinoties, ka izmantojat -n argumentu un pēc otrās rindas numura iekļauj p.
sed -n 'FIRSTLINENUMBER, LASTLINENUMBERp 'filename & gt; outputfilenameDažas citas iespējas, kā jūs varat izvilkt konkrētas rindas faila vidū? Jūs varētu izmantot "head""Komanda ar skaitļa argumentu, lai vienkārši izlasītu pirmās x rindiņas no faila, un pēc tam izmantojiet asti šo līniju izvilināšanai. Nav labākais variants, daudz pieskaitāmās izmaksas. Vienkāršāka iespēja? Jūs varat izmantot sadalīšanas komandu, lai failu pagrieztu vairākos failos tieši pie vajadzīgā rindas numura, un pēc tam izvelciet līnijas, izmantojot galvu vai asti.
Vai arī jūs varat vienkārši izmantot sed.