Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi
+1 oy
54 gösterim
Selamlar,

Benim elimde biraz büyük (3 gb) bir dosya var ve bu dosya içinde istediğim karakterin hangi satırlarda olduğunu bulmak istiyorum. Amacım hatalı satırları bulmak. Karakter ise \r karakteri.

cat ve grep kullanabiliyorum kombinasyonunu kullanabiliyorum ama non-readble karakter olduğu için bir sonuç vermiyor.

Nasıl bulabileceğim konusunda yardım eder misiniz?
Unix/Linux kategorisinde (3.1k puan) sordu

1 cevap

+1 oy
 
En İyi Cevap

Uzun aramalar sonucu birkaç sonuç buldum. Unix kullanımı veya cygwin kullanımı durumunda aşağıdaki komutlardan bir veya birkaçını kullanabilirsiniz.

Dosyada karakter bulmak için

od - komutu bir dosya içindeki herbir byte tek tek ekranda görmenize yarıyor. Ama üzerinde grep ile benim istediğim sonucu alamadım. Belki de ben beceremedim. Ama kullanışlı olduğu gerçek. Karakter, octal, hex bilgileri olarak görebiliyorsunuz.

cat- çok yaygın kullandığımız bir komut ama non-readable dediğimiz karakterleri göstermiyor. O işlem için parametresi varmış.

grep- filtrelemek için kullanıyoruz zaten. -n dersek aradığımız karakter hangi satırda onu görebiliyoruz. satır numarası dönüyor. 

gelelim kullandığıma 

cat -e -v -t dosyaadi | grep -n '^M'   bu komut dosyada \r geçen bütün satırları veriyor. bunu da > deyip başka bir dosyaya atabiliyoruz zaten. sonuç cat -e -v -t dosyaadi | grep -n '^M'  > sonuc.txt

şimdi başka bir sorun çıktı. bu karakterleri nasıl sileceğim.

 tr -d '\r' < DOSYA > kenan

tr- komutu da bir dosya içindeki istediğiniz bir karakteri diğer istediğinizle değiştirmeye veya silmeye yarıyor. -d ile sildim. temiz bir dosya elde ettim.

İhtiyacı olan arkadaşlar için güzel olabilir.

(3.1k puan) cevapladı
seçti

İlgili sorular

0 oy
1 cevap 23 gösterim
23 gösterim 23 Haziran 2017 Unix/Linux kategorisinde tolga (1.6k puan) sordu
0 oy
1 cevap 17 gösterim
17 gösterim 17 Şubat 2017 Unix/Linux kategorisinde kenan (3.1k puan) sordu
0 oy
1 cevap 13 gösterim
0 oy
1 cevap 28 gösterim
28 gösterim 2 Kasım 2016 .Net kategorisinde Kerim (159 puan) sordu
0 oy
1 cevap 17 gösterim
...