Tekrar Merhaba, Demek ki çözmeye çalışmak için ısrarcı olmamak gerekiyormuş.
Gece onca zaman uğraştım ve olmadı. Şimdi ise 10 dk içinde çözüldü. CEVAP: sed komutundan sonra -E parametresi gerekiyormuş :) ÇÖZÜM: cat file.sql | grep -v "^ KEY \`" | sed *-E *"s/(PRIMARY KEY \(.*\))(.*)/\1/g" Selamlar, Nuri Akman Nuri Akman <nuriak...@gmail.com>, 8 Kas 2019 Cum, 03:42 tarihinde şunu yazdı: > Herkese Merhaba, > > *Elimde şöyle bir mysqldump sql dosyası var:* > PRIMARY KEY (`mykey`) > > *, KEY `field1` (`field`), KEY `field2` (`field2`)* > ) ENGINE=MyISAM AUTO_INCREMENT=92760 DEFAULT CHARSET=utf8; > > *Kırmızı bölümlerin silinerek şu hale gelmesini istiyorum:* > PRIMARY KEY (`mykey`) > ) ENGINE=MyISAM AUTO_INCREMENT=92760 DEFAULT CHARSET=utf8; > > Yazdığım komut şu: > cat file.sql|grep -v " KEY \`"|sed "s/^( PRIMARY KEY \(.*\)),$/\1/g"|less > > Uğraşmama rağmen bir türlü çözemedim... > > - grep -v ile " KEY `" ile başlayan satıları HARİÇ tutuyorum. > - Ancak " PRIMARY KEY (" diye başlayan satırın sonundaki VİRGÜLü > kaldıramıyorum... > > > *NEDEN Mİ LAZIM?* > Çok fazla satırı olan bir tablo bu ve bir sürü de indexli saha var. Hızlı > restore edebilmek için indexler olmadan restore etmek istiyorum. > > Selamlar, > Nuri Akman >
_______________________________________________ Linux-programlama mailing list Linux-programlama@liste.linux.org.tr https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php