Kuidas eemaldada ridasid Linuxi terminali kasutades faili keskelt

Kuidas eemaldada ridasid Linuxi terminali kasutades faili keskelt
Kuidas eemaldada ridasid Linuxi terminali kasutades faili keskelt

Video: Kuidas eemaldada ridasid Linuxi terminali kasutades faili keskelt

Video: Kuidas eemaldada ridasid Linuxi terminali kasutades faili keskelt
Video: How To Make Money With YouTube Shorts By Using Simple TEMPLATES To Create Videos! - YouTube 2024, Mai
Anonim
Kui haldate oma servereid, on üks neist asjadest, mida peate osaliselt regulaarselt tegema, on faili keskelt ekstraktid. Võib-olla on see logifail või peate lisama ühe tabeli oma MySQL-i varufaili keskelt, nagu ma tegin.
Kui haldate oma servereid, on üks neist asjadest, mida peate osaliselt regulaarselt tegema, on faili keskelt ekstraktid. Võib-olla on see logifail või peate lisama ühe tabeli oma MySQL-i varufaili keskelt, nagu ma tegin.

Rea numbrite välja selgitamiseks tegi töö lihtne grep -n-käsk (-n argument väljastab reanumbrid). See muutis hõlpsasti kindlaks, mida ma väljavõtmiseks vaja oli.

grep -n wp_posts howtogeekdb010114.bak | more

Tulemused midagi sellist, mis näitab väljundi vasakus servas reanumbreid. Kõik toru paigaldamine "rohkem" tagab, et näete esimest rida, kus seda ei kerata. Nüüd on teil rida numbri alustamiseks ja tõenäoliselt see, mis lõppeb.

4160:-- Table structure for table `wp_posts` 4163:DROP TABLE IF EXISTS `wp_posts`; 4166:CREATE TABLE `wp_posts` ( 4203:-- Dumping data for table `wp_posts` 4206:LOCK TABLES `wp_posts` WRITE; 4207:/*!40000 ALTER TABLE `wp_posts` DISABLE KEYS */; 4208:INSERT INTO `wp_posts` VALUES (1,2,'2006-09-11 05:07:23','2006-09-11

Muidugi võite lihtsalt kiirendada grep-i väljundi teise faili, näiteks selline:

grep keyword filename.txt > outputfile

Minu puhul ei tahtnud see tööd teha, sest ma ei saanud mingil põhjusel varundatud versiooni importida. Niisiis leidsin, et sed kasutatakse joonte ekstraheerimiseks teistmoodi, ja see meetod töötas.

sed -n '4160,4209p' howtogeekdb0101140201.bak > outputfile

Põhimõtteliselt on süntaks selline, kindlasti kasutage -n-argumenti ja lisage teise rea numbri järel "p".

sed -n 'FIRSTLINENUMBER, LASTLINENUMBERp' filename > outputfilename

Mõned muud võimalused, mille abil saate faili keskel välja tõmmata teatud read? Võite kasutada käsuga "head" + -numbri argumendiga, et lihtsalt lugeda faili esimest x-rida, ja seejärel kasutada nende ridade ekstraktimiseks saba. Mitte parim võimalus, palju lisakulusid. Lihtsam võimalus? Võite kasutada jagatud käsku, et muuta fail mitmeks failiks otse soovitud rea numbril ja seejärel ekstraheerida ridasid peaga või sabaga.

Või võite lihtsalt kasutada sed.

Soovitan: