{"id":28061,"date":"2025-08-22T18:15:23","date_gmt":"2025-08-22T15:15:23","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/"},"modified":"2025-09-01T18:32:28","modified_gmt":"2025-09-01T15:32:28","slug":"bash-dosyanin-her-satirindaki-karakter-sayisini-sayma","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/","title":{"rendered":"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma"},"content":{"rendered":"<p># Bash ile Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma<\/p>\n<p>Bir metin dosyas\u0131ndaki her sat\u0131rdaki karakter say\u0131s\u0131n\u0131 h\u0131zl\u0131ca belirlemeniz gerekti\u011fini d\u00fc\u015f\u00fcn\u00fcn.  Binlerce sat\u0131rl\u0131k bir log dosyas\u0131nda hata analizi yap\u0131yor, veya \u015fiir koleksiyonunuzda en uzun sat\u0131r\u0131 bulmaya \u00e7al\u0131\u015f\u0131yor olabilirsiniz.  \u0130\u015fte tam bu noktada Bash&#8217;in g\u00fcc\u00fc devreye giriyor. Bu makalede, Bash komutlar\u0131n\u0131 kullanarak bir dosyan\u0131n her sat\u0131r\u0131ndaki karakter say\u0131s\u0131n\u0131 nas\u0131l sayaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m \u00f6\u011frenece\u011fiz.  Yeni ba\u015flayanlardan ileri d\u00fczey kullan\u0131c\u0131lara kadar herkes i\u00e7in pratik \u00e7\u00f6z\u00fcmler ve performans optimizasyon teknikleri sunaca\u011f\u0131z.<\/p>\n<p><strong>Bash ve Temel Komutlar: Ba\u015flang\u0131\u00e7 Noktam\u0131z<\/strong><\/p>\n<p>Bash, Linux ve macOS sistemlerinde kullan\u0131lan g\u00fc\u00e7l\u00fc bir komut sat\u0131r\u0131 yorumlay\u0131c\u0131s\u0131d\u0131r.  Metin i\u015fleme, dosya manip\u00fclasyonu ve sistem y\u00f6netimi gibi bir\u00e7ok g\u00f6revde kullan\u0131l\u0131r.  Bu makalede, <code class=\"language-\">awk<\/code>, <code class=\"language-\">wc<\/code> ve <code class=\"language-\">sed<\/code> gibi temel Bash ara\u00e7lar\u0131n\u0131 kullanaca\u011f\u0131z.  E\u011fer bu komutlarla daha \u00f6nce hi\u00e7 \u00e7al\u0131\u015fmad\u0131ysan\u0131z endi\u015felenmeyin; her ad\u0131mda detayl\u0131 a\u00e7\u0131klamalar yapaca\u011f\u0131z.  \u00d6rne\u011fin <code class=\"language-\">wc<\/code> (word count) komutu, sat\u0131r, kelime ve karakter say\u0131lar\u0131n\u0131 saymak i\u00e7in kullan\u0131l\u0131r. <code class=\"language-\">awk<\/code> ise metin dosyalar\u0131n\u0131 sat\u0131r sat\u0131r i\u015fleyip her sat\u0131ra \u00f6zel i\u015flemler yapmam\u0131z\u0131 sa\u011flar.  <code class=\"language-\">sed<\/code> ise metin ak\u0131\u015f\u0131nda d\u00fczenleme yapmam\u0131za olanak tan\u0131r.<\/p>\n<p><strong>Yeni Ba\u015flayanlar \u0130\u00e7in: \u0130lk Ad\u0131mlar\u0131m\u0131z<\/strong><\/p>\n<p><strong>Ad\u0131m 1: \u00d6rnek Dosya Olu\u015fturma<\/strong><\/p>\n<p>\u0130lk olarak, \u00fczerinde \u00e7al\u0131\u015faca\u011f\u0131m\u0131z bir \u00f6rnek dosya olu\u015ftural\u0131m.  A\u015fa\u011f\u0131daki komutlar ile &#8220;my_file.txt&#8221; ad\u0131nda bir dosya olu\u015fturup i\u00e7eri\u011fini belirliyoruz:<\/p>\n<pre class=\"language-bash\"><code>cat &gt; my_file.txt &lt;&lt; EOF\nBu ilk sat\u0131r.\n\u0130kinci sat\u0131r biraz daha uzun.\n\u00dc\u00e7\u00fcnc\u00fc sat\u0131r k\u0131sa.\nD\u00f6rd\u00fcnc\u00fc sat\u0131r, olduk\u00e7a uzun bir sat\u0131rd\u0131r.\nEOF<\/code><\/pre>\n<p><strong>Ad\u0131m 2: <code class=\"language-\">wc<\/code> Komutu ile Karakter Say\u0131m\u0131<\/strong><\/p>\n<p>En basit yakla\u015f\u0131m <code class=\"language-\">wc<\/code> komutunu kullanmakt\u0131r.  <code class=\"language-\">-m<\/code> se\u00e7ene\u011fi ile karakter say\u0131s\u0131n\u0131, <code class=\"language-\">-l<\/code> ile sat\u0131r say\u0131s\u0131n\u0131 alabiliriz.  Ancak <code class=\"language-\">wc -m my_file.txt<\/code> t\u00fcm dosyadaki toplam karakter say\u0131s\u0131n\u0131 verir. Biz sat\u0131r baz\u0131nda say\u0131 istiyoruz.<\/p>\n<pre class=\"language-bash\"><code>wc -l my_file.txt  # Sat\u0131r say\u0131s\u0131n\u0131 verir.<\/code><\/pre>\n<p><strong>Ad\u0131m 3: <code class=\"language-\">awk<\/code> ile Sat\u0131r Baz\u0131nda Karakter Say\u0131m\u0131<\/strong><\/p>\n<p><code class=\"language-\">awk<\/code> komutu ile her sat\u0131rdaki karakter say\u0131s\u0131n\u0131 ayr\u0131 ayr\u0131 elde edebiliriz.  A\u015fa\u011f\u0131daki komut her sat\u0131r\u0131 i\u015fler ve <code class=\"language-\">length()<\/code> fonksiyonu ile karakter say\u0131s\u0131n\u0131 yazd\u0131r\u0131r:<\/p>\n<pre class=\"language-bash\"><code>awk '{print length($0)}' my_file.txt<\/code><\/pre>\n<p>Bu komut, her sat\u0131r\u0131n uzunlu\u011funu yeni bir sat\u0131ra yazarak bize her sat\u0131rdaki karakter say\u0131s\u0131n\u0131 verir.<\/p>\n<p><strong>Orta Seviye: Ger\u00e7ek Hayat \u00d6rnekleri ve Optimizasyon \u0130pu\u00e7lar\u0131<\/strong><\/p>\n<p>\u015eimdi, ger\u00e7ek hayattan bir senaryoyu ele alal\u0131m:  Bir web sunucusunun log dosyas\u0131nda her sat\u0131rdaki karakter say\u0131s\u0131n\u0131 bulmak istiyoruz.  Log dosyas\u0131 b\u00fcy\u00fck olabilir, bu y\u00fczden performans\u0131 optimize etmeliyiz.<\/p>\n<p><strong>\u00d6rnek:<\/strong>  &#8220;access.log&#8221; adl\u0131 b\u00fcy\u00fck bir log dosyam\u0131z olsun.  Bu dosya her sat\u0131rda bir web istek kayd\u0131 tutuyor.<\/p>\n<pre class=\"language-bash\"><code>awk '{print length($0)}' access.log &gt; character_counts.txt<\/code><\/pre>\n<p>Bu komut,  <code class=\"language-\">access.log<\/code> dosyas\u0131ndaki her sat\u0131r\u0131n karakter say\u0131s\u0131n\u0131 <code class=\"language-\">character_counts.txt<\/code> dosyas\u0131na yazar.  B\u00fcy\u00fck dosyalar i\u00e7in, bu i\u015flem biraz zaman alabilir.  Performans\u0131 art\u0131rmak i\u00e7in, <code class=\"language-\">awk<\/code> komutunu <code class=\"language-\">xargs<\/code> ile birle\u015ftirerek paralel i\u015flem yapabiliriz (sisteminizin \u00e7ekirdek say\u0131s\u0131na g\u00f6re ayarlay\u0131n):<\/p>\n<pre class=\"language-bash\"><code>awk '{print length($0)}' access.log | xargs -n 1000 -P 4 bash -c 'for i; do echo &quot;$i&quot;; done'<\/code><\/pre>\n<p>Bu \u00f6rnekte, <code class=\"language-\">xargs<\/code> 1000 sat\u0131r\u0131 bir grup halinde i\u015fler ve <code class=\"language-\">-P 4<\/code> se\u00e7ene\u011fi ile 4 i\u015flemci \u00e7ekirde\u011fini kullan\u0131r.  Bu, b\u00fcy\u00fck dosyalar i\u00e7in \u00f6nemli bir performans art\u0131\u015f\u0131 sa\u011flayabilir.  \u0130\u015flemci \u00e7ekirdek say\u0131s\u0131n\u0131 <code class=\"language-\">nproc<\/code> komutu ile \u00f6\u011frenebilirsiniz: <code class=\"language-\">nproc<\/code><\/p>\n<p><strong>\u0130leri D\u00fczey: Performans Analizi ve Edge Case&#8217;ler<\/strong><\/p>\n<p>B\u00fcy\u00fck dosyalar i\u00e7in performans kritik \u00f6nem ta\u015f\u0131r.  <code class=\"language-\">awk<\/code>&#8216;\u0131n <code class=\"language-\">length()<\/code> fonksiyonu olduk\u00e7a verimli olsa da,  \u00e7ok b\u00fcy\u00fck dosyalar i\u00e7in daha da optimize edilmesi gerekebilir.  \u00d6rne\u011fin, <code class=\"language-\">perl<\/code> gibi daha h\u0131zl\u0131 metin i\u015fleme dilleri kullan\u0131labilir.  Ayr\u0131ca, dosyan\u0131n i\u00e7eri\u011fine g\u00f6re \u00f6zel optimizasyonlar yap\u0131labilir.  \u00d6rne\u011fin, dosya UTF-8 kodlamal\u0131ysa, karakter say\u0131m\u0131 hesaplan\u0131rken bu durum g\u00f6z \u00f6n\u00fcnde bulundurulmal\u0131d\u0131r.<\/p>\n<p><strong>Edge Case&#8217;ler:<\/strong><\/p>\n<p>* <strong>Bo\u015f Sat\u0131rlar:<\/strong> Bo\u015f sat\u0131rlar\u0131n karakter say\u0131s\u0131 0 olarak hesaplan\u0131r.<br \/>\n* <strong>\u00d6zel Karakterler:<\/strong>  UTF-8 gibi geni\u015f karakter k\u00fcmeleri i\u00e7eren dosyalarda, karakter say\u0131m\u0131 do\u011fru hesaplanmal\u0131d\u0131r.  <code class=\"language-\">wc<\/code> komutu bazen bu konuda sorun ya\u015fayabilir.<br \/>\n* <strong>\u00c7ok B\u00fcy\u00fck Dosyalar:<\/strong> \u00c7ok b\u00fcy\u00fck dosyalar i\u00e7in, dosyay\u0131 par\u00e7alara b\u00f6l\u00fcp her par\u00e7ay\u0131 ayr\u0131 ayr\u0131 i\u015flemek daha verimli olabilir.  <code class=\"language-\">split<\/code> komutu ile dosyay\u0131 par\u00e7alara b\u00f6lebilirsiniz.<\/p>\n<p><strong>Nas\u0131l Daha Verimli Kod Yazabilirim?<\/strong><\/p>\n<p>Verimlilik, \u00f6zellikle b\u00fcy\u00fck dosyalarla \u00e7al\u0131\u015f\u0131rken \u00f6nemlidir.  <code class=\"language-\">awk<\/code> komutu zaten olduk\u00e7a verimlidir, ancak daha da optimize edebilece\u011fimiz noktalar mevcuttur.  \u00d6rne\u011fin, <code class=\"language-\">getline<\/code> fonksiyonunu kullanarak sat\u0131r sat\u0131r okuma yerine,  b\u00fcy\u00fck bloklar halinde okuma ve i\u015fleme daha h\u0131zl\u0131 olabilir.  Ancak bu, kodun karma\u015f\u0131kl\u0131\u011f\u0131n\u0131 art\u0131rabilir.  En iyi yakla\u015f\u0131m, dosya boyutuna ve sistem kaynaklar\u0131na ba\u011fl\u0131 olarak de\u011fi\u015febilir.<\/p>\n<p><strong>Nas\u0131l Farkl\u0131 Kodlama Setleriyle Ba\u015f Edebilirim?<\/strong><\/p>\n<p>Farkl\u0131 kodlama setleri, karakter say\u0131m\u0131n\u0131 etkiler.  <code class=\"language-\">wc<\/code> komutu genellikle varsay\u0131lan sistem kodlamas\u0131n\u0131 kullan\u0131r.  UTF-8 gibi geni\u015f karakter k\u00fcmeleri i\u00e7eren dosyalarda, do\u011fru karakter say\u0131m\u0131 i\u00e7in <code class=\"language-\">iconv<\/code> komutu kullan\u0131labilir.  \u00d6rne\u011fin, UTF-8 kodlamal\u0131 bir dosyay\u0131 \u00f6nce UTF-8&#8217;den ASCII&#8217;ye d\u00f6n\u00fc\u015ft\u00fcrebilir, sonra karakter say\u0131m\u0131n\u0131 yapabilirsiniz.  Ancak bu y\u00f6ntem, baz\u0131 karakterlerin kayb\u0131na yol a\u00e7abilir.  Daha g\u00fcvenli bir y\u00f6ntem, <code class=\"language-\">awk<\/code>&#8216;\u0131n karakter say\u0131m fonksiyonunu do\u011frudan kullanarak UTF-8 karakterlerini do\u011fru bir \u015fekilde saymakt\u0131r.<\/p>\n<p><strong>Sonu\u00e7<\/strong><\/p>\n<p>Bu makalede, Bash kullanarak bir dosyan\u0131n her sat\u0131r\u0131ndaki karakter say\u0131s\u0131n\u0131 hesaplaman\u0131n farkl\u0131 y\u00f6ntemlerini inceledik.  Yeni ba\u015flayanlardan ileri d\u00fczey kullan\u0131c\u0131lara kadar farkl\u0131 seviyelerdeki kullan\u0131c\u0131lar i\u00e7in pratik \u00e7\u00f6z\u00fcmler ve performans optimizasyon teknikleri sunduk.  Unutmay\u0131n ki en iyi y\u00f6ntem, dosya boyutuna, sistem kaynaklar\u0131na ve performans gereksinimlerine ba\u011fl\u0131 olarak de\u011fi\u015febilir.  Uygulama yaparak ve farkl\u0131 y\u00f6ntemleri deneyerek en uygun \u00e7\u00f6z\u00fcm\u00fc bulabilirsiniz.<\/p>\n<p><strong>S\u0131k\u00e7a Sorulan Sorular:<\/strong><\/p>\n<p>1. <strong><code class=\"language-\">awk<\/code> komutunu daha iyi anlaman\u0131n yollar\u0131 nelerdir?<\/strong>  <code class=\"language-\">awk<\/code> komutu olduk\u00e7a g\u00fc\u00e7l\u00fcd\u00fcr ve bir\u00e7ok fonksiyonu vard\u0131r.  <code class=\"language-\">man awk<\/code> komutu ile komutun t\u00fcm \u00f6zelliklerini \u00f6\u011frenebilirsiniz.  Ayr\u0131ca, \u00e7evrimi\u00e7i kaynaklar ve e\u011fitim materyalleri ile <code class=\"language-\">awk<\/code> konusunda daha fazla bilgi edinebilirsiniz.<\/p>\n<p>2. <strong>\u00c7ok b\u00fcy\u00fck dosyalarla \u00e7al\u0131\u015f\u0131rken hangi stratejileri kullanmal\u0131y\u0131m?<\/strong> \u00c7ok b\u00fcy\u00fck dosyalar i\u00e7in dosyay\u0131 par\u00e7alara b\u00f6l\u00fcp her par\u00e7ay\u0131 ayr\u0131 ayr\u0131 i\u015flemek veya daha verimli metin i\u015fleme ara\u00e7lar\u0131 kullanmak gerekebilir.<\/p>\n<p>3. <strong>Hata ay\u0131klama nas\u0131l yap\u0131l\u0131r?<\/strong>  <code class=\"language-\">echo<\/code> komutu ile de\u011fi\u015fkenlerin de\u011ferlerini kontrol edebilir,  <code class=\"language-\">set -x<\/code> komutu ile komutlar\u0131n y\u00fcr\u00fct\u00fclmesini ad\u0131m ad\u0131m izleyebilirsiniz.<\/p>\n<p>4. <strong>Performans\u0131 nas\u0131l \u00f6l\u00e7ebilirim?<\/strong> <code class=\"language-\">time<\/code> komutu ile komutlar\u0131n \u00e7al\u0131\u015fma s\u00fcresini \u00f6l\u00e7ebilirsiniz.<\/p>\n<p>5. <strong>Ba\u015fka hangi ara\u00e7lar kullan\u0131labilir?<\/strong>  <code class=\"language-\">perl<\/code>, <code class=\"language-\">python<\/code> gibi programlama dilleri de metin i\u015fleme i\u00e7in kullan\u0131labilir ve daha fazla esneklik sunabilir.<\/p>\n<p>Yazar: Fatih Soysal<\/p>\n","protected":false},"excerpt":{"rendered":"# Bash ile Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma Bir metin dosyas\u0131ndaki her sat\u0131rdaki karakter say\u0131s\u0131n\u0131 h\u0131zl\u0131ca belirlemeniz&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1328],"tags":[],"class_list":{"0":"post-28061","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-bash","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma<\/title>\n<meta name=\"description\" content=\"Hi\u00e7bir etiketi bulunamad\u0131.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma\" \/>\n<meta property=\"og:description\" content=\"Hi\u00e7bir etiketi bulunamad\u0131.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-22T15:15:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-09-01T15:32:28+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma\",\"datePublished\":\"2025-08-22T15:15:23+00:00\",\"dateModified\":\"2025-09-01T15:32:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/\"},\"wordCount\":1139,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Bash\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/\",\"name\":\"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-08-22T15:15:23+00:00\",\"dateModified\":\"2025-09-01T15:32:28+00:00\",\"description\":\"Hi\u00e7bir etiketi bulunamad\u0131.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma","description":"Hi\u00e7bir etiketi bulunamad\u0131.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/","og_locale":"tr_TR","og_type":"article","og_title":"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma","og_description":"Hi\u00e7bir etiketi bulunamad\u0131.","og_url":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-08-22T15:15:23+00:00","article_modified_time":"2025-09-01T15:32:28+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"6 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma","datePublished":"2025-08-22T15:15:23+00:00","dateModified":"2025-09-01T15:32:28+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/"},"wordCount":1139,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Bash"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/","url":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/","name":"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-08-22T15:15:23+00:00","dateModified":"2025-09-01T15:32:28+00:00","description":"Hi\u00e7bir etiketi bulunamad\u0131.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/bash-dosyanin-her-satirindaki-karakter-sayisini-sayma\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Bash: Dosyan\u0131n Her Sat\u0131r\u0131ndaki Karakter Say\u0131s\u0131n\u0131 Sayma"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/28061","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=28061"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/28061\/revisions"}],"predecessor-version":[{"id":28648,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/28061\/revisions\/28648"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=28061"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=28061"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=28061"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}