{"id":28063,"date":"2025-08-22T18:45:25","date_gmt":"2025-08-22T15:45:25","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/"},"modified":"2025-09-01T18:32:18","modified_gmt":"2025-09-01T15:32:18","slug":"bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/","title":{"rendered":"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma"},"content":{"rendered":"<p># Bash&#8217;te \u0130lk ve Son Karakterleri Silmek: Tam Bir K\u0131lavuz<\/p>\n<p>Bir metin dosyas\u0131ndaki sat\u0131rlar\u0131n ba\u015f\u0131ndaki ve sonundaki gereksiz karakterleri temizlemek, ya da bir de\u011fi\u015fken i\u00e7indeki bir dizinin ba\u015f ve sonundaki istenmeyen karakterlerden kurtulmak istiyorsunuz.  Bash betiklerinizde s\u0131kl\u0131kla kar\u015f\u0131la\u015faca\u011f\u0131n\u0131z bu durum i\u00e7in en etkili ve performansl\u0131 \u00e7\u00f6z\u00fcmleri bu rehberde bulacaks\u0131n\u0131z.  Bu makale, Bash&#8217;te ilk ve son karakterleri silmenin farkl\u0131 y\u00f6ntemlerini, performans kar\u015f\u0131la\u015ft\u0131rmalar\u0131n\u0131 ve ger\u00e7ek d\u00fcnya \u00f6rneklerini ad\u0131m ad\u0131m a\u00e7\u0131klayarak, ba\u015flang\u0131\u00e7 seviyesinden ileri seviyeye kadar kapsaml\u0131 bir \u00f6\u011frenme deneyimi sunmaktad\u0131r.<\/p>\n<p><strong>\u00d6\u011frenme Yol Haritas\u0131<\/strong><\/p>\n<p><strong>Yeni Ba\u015flayan:<\/strong>  <code class=\"language-\">substring<\/code> ile basit silme i\u015flemi.<\/p>\n<p><strong>Orta:<\/strong>  Ger\u00e7ek d\u00fcnya senaryosu: Log dosyalar\u0131n\u0131n temizlenmesi,  <code class=\"language-\">sed<\/code> komutu ile optimizasyon.<\/p>\n<p><strong>\u0130leri D\u00fczey:<\/strong>  Performans analizi,  <code class=\"language-\">awk<\/code> kullan\u0131m\u0131,  edge case&#8217;ler (bo\u015f dizeler, tek karakterli dizeler).<\/p>\n<p><strong>Bash&#8217;te Temel Dize \u0130\u015flemleri: \u0130lk Ad\u0131mlar<\/strong><\/p>\n<p>Bash, metin i\u015flemede olduk\u00e7a g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r.  Dize manip\u00fclasyonu i\u00e7in bir\u00e7ok yerle\u015fik komut ve teknik mevcuttur.  \u0130lk ve son karakterleri silmek i\u00e7in en basit y\u00f6ntem, <code class=\"language-\">substring<\/code> kullanmakt\u0131r.  Bash&#8217;te alt dize i\u015flemi, de\u011fi\u015fkenin belirli bir k\u0131sm\u0131n\u0131 ay\u0131klamam\u0131za olanak tan\u0131r.  <code class=\"language-\">substring<\/code>&#8216;i kullanarak, dizenin ilk ve son karakterlerini atlayarak yeni bir dize olu\u015fturabiliriz.<\/p>\n<p>\u00d6rne\u011fin, <code class=\"language-\">myString=\"Merhaba D\u00fcnya\"<\/code> de\u011fi\u015fkenimiz olsun.  Bu de\u011fi\u015fkenden ilk ve son karakterleri \u00e7\u0131karmak i\u00e7in \u015fu kodu kullanabiliriz:<\/p>\n<pre class=\"language-bash\"><code>myString=&quot;Merhaba D\u00fcnya&quot;\nnewString=&quot;${myString:1:-1}&quot;\necho &quot;$newString&quot;  # \u00c7\u0131kt\u0131: erhaba D\u00fcny<\/code><\/pre>\n<p>Burada <code class=\"language-\">\"${myString:1:-1}\"<\/code> ifadesi, <code class=\"language-\">myString<\/code> de\u011fi\u015fkeninin 1. indeksten ba\u015flay\u0131p (-1) son karakteri hari\u00e7 t\u00fcm karakterlerini al\u0131r.  \u0130ndeksleme 0&#8217;dan ba\u015flad\u0131\u011f\u0131n\u0131 unutmayal\u0131m.  Bu basit ve anla\u015f\u0131l\u0131r bir y\u00f6ntemdir, ancak b\u00fcy\u00fck veri k\u00fcmeleri i\u00e7in performans a\u00e7\u0131s\u0131ndan ideal olmayabilir.<\/p>\n<p><strong>Nas\u0131l Yap\u0131l\u0131r? Sed Komutu ile \u0130lk ve Son Karakterleri Silme<\/strong><\/p>\n<p><code class=\"language-\">sed<\/code> (stream editor), metin dosyalar\u0131n\u0131 d\u00fczenlemek i\u00e7in g\u00fc\u00e7l\u00fc bir komut sat\u0131r\u0131 arac\u0131d\u0131r.  <code class=\"language-\">sed<\/code> kullanarak, ilk ve son karakterleri tek bir komutla silebiliriz.  Bu y\u00f6ntem, \u00f6zellikle b\u00fcy\u00fck dosyalarla \u00e7al\u0131\u015f\u0131rken daha verimli olabilir.<\/p>\n<p>A\u015fa\u011f\u0131daki \u00f6rnekte, <code class=\"language-\">myFile.txt<\/code> adl\u0131 bir dosyan\u0131n her sat\u0131r\u0131n\u0131n ilk ve son karakterlerini siliyoruz:<\/p>\n<pre class=\"language-bash\"><code>sed 's\/^.\/\/' myFile.txt | sed 's\/.$\/\/'<\/code><\/pre>\n<p>\u0130lk <code class=\"language-\">sed<\/code> komutu (<code class=\"language-\">s\/^.\/\/<\/code>), her sat\u0131r\u0131n ba\u015f\u0131ndaki (^) tek bir karakteri (.) siler.  \u0130kinci <code class=\"language-\">sed<\/code> komutu ise, her sat\u0131r\u0131n sonundaki ($) tek bir karakteri (.) siler.  Bu iki komut boru (|) ile ba\u011flanm\u0131\u015ft\u0131r, b\u00f6ylece ilk komutun \u00e7\u0131kt\u0131s\u0131 ikinci komutun girdisi olur.<\/p>\n<p><strong>\u00d6rnek myFile.txt i\u00e7eri\u011fi:<\/strong><\/p>\n<pre class=\"language-\"><code>Merhaba D\u00fcnya!\nG\u00fcnayd\u0131n T\u00fcrkiye!<\/code><\/pre>\n<p><strong>Komutun \u00e7\u0131kt\u0131s\u0131:<\/strong><\/p>\n<pre class=\"language-\"><code>erhaba D\u00fcny\n\u00fcnayd\u0131n T\u00fcrkiy<\/code><\/pre>\n<p>Bu y\u00f6ntem, <code class=\"language-\">substring<\/code> y\u00f6nteminden daha verimli olabilir, \u00f6zellikle \u00e7ok say\u0131da sat\u0131r i\u00e7eren dosyalar i\u00e7in. Ancak, her sat\u0131r\u0131 iki kez i\u015fler, bu y\u00fczden \u00e7ok b\u00fcy\u00fck dosyalar i\u00e7in daha ileri optimizasyon teknikleri gerekebilir.<\/p>\n<p><strong>Ger\u00e7ek D\u00fcnya \u00d6rne\u011fi: Log Dosyalar\u0131n\u0131n Temizlenmesi<\/strong><\/p>\n<p>Log dosyalar\u0131 genellikle gereksiz karakterler i\u00e7erir.  \u00d6rne\u011fin, her sat\u0131r\u0131n ba\u015f\u0131nda bir zaman damgas\u0131 ve sonunda bir sat\u0131r sonu karakteri olabilir.  <code class=\"language-\">sed<\/code> komutunu kullanarak bu karakterleri temizleyebiliriz.<\/p>\n<p>Diyelim ki log dosyam\u0131z \u015fu \u015fekilde:<\/p>\n<pre class=\"language-\"><code>2023-10-27 10:00:00 Hata mesaj\u0131 1\n2023-10-27 10:01:00 Uyar\u0131 mesaj\u0131 2\n2023-10-27 10:02:00 Bilgi mesaj\u0131 3<\/code><\/pre>\n<p>Sadece hata mesajlar\u0131n\u0131 almak ve zaman damgas\u0131n\u0131 silmek istiyoruz.  Bu durumda, \u00f6nce <code class=\"language-\">grep<\/code> ile hata mesajlar\u0131n\u0131 filtreleriz, sonra <code class=\"language-\">sed<\/code> ile zaman damgas\u0131n\u0131 ve sat\u0131r sonunu temizleriz:<\/p>\n<pre class=\"language-bash\"><code>grep &quot;Hata&quot; myLogFile.log | sed 's\/^[0-9-]* [0-9:]* \/\/;s\/.$\/\/'<\/code><\/pre>\n<p>Bu komut, \u00f6nce <code class=\"language-\">grep<\/code> ile &#8220;Hata&#8221; i\u00e7eren sat\u0131rlar\u0131 filtreler, sonra <code class=\"language-\">sed<\/code> ile ba\u015ftaki zaman damgas\u0131n\u0131 (<code class=\"language-\">^[0-9-]* [0-9:]* <\/code>) ve son karakteri siler.  Bu, log dosyalar\u0131ndan anlaml\u0131 bilgileri ay\u0131klamak i\u00e7in g\u00fc\u00e7l\u00fc bir y\u00f6ntemdir.  [fatihsoysal.com](https:\/\/fatihsoysal.com) adresindeki blog yaz\u0131lar\u0131mda daha detayl\u0131 log dosyas\u0131 i\u015fleme teknikleri bulabilirsiniz.<\/p>\n<p><strong>Nas\u0131l Yap\u0131l\u0131r? Awk ile Daha G\u00fc\u00e7l\u00fc Dize \u0130\u015fleme<\/strong><\/p>\n<p><code class=\"language-\">awk<\/code>, metin i\u015flemede <code class=\"language-\">sed<\/code>&#8216;den daha g\u00fc\u00e7l\u00fc ve esnek bir ara\u00e7t\u0131r.  <code class=\"language-\">awk<\/code> kullanarak, daha karma\u015f\u0131k dize manip\u00fclasyonlar\u0131 yapabilir ve ko\u015fullu i\u015flemler uygulayabiliriz.<\/p>\n<p>A\u015fa\u011f\u0131daki \u00f6rnekte, <code class=\"language-\">awk<\/code> kullanarak bir dizenin ilk ve son karakterlerini siliyoruz:<\/p>\n<pre class=\"language-bash\"><code>myString=&quot;Merhaba D\u00fcnya&quot;\necho &quot;$myString&quot; | awk '{print substr($0, 2, length($0)-2)}'<\/code><\/pre>\n<p><code class=\"language-\">substr($0, 2, length($0)-2)<\/code> fonksiyonu, dizenin 2. karakterinden ba\u015flayarak, dizenin uzunlu\u011fundan 2 karakter eksik uzunlukta bir alt dize olu\u015fturur.  Bu, ilk ve son karakterleri atlar.<\/p>\n<p><code class=\"language-\">awk<\/code>&#8216;\u0131n g\u00fcc\u00fc, ko\u015fullu i\u015flemlerde ortaya \u00e7\u0131kar.  \u00d6rne\u011fin, bo\u015f veya tek karakterli dizeler i\u00e7in \u00f6zel durumlar ekleyebiliriz:<\/p>\n<pre class=\"language-bash\"><code>echo &quot;$myString&quot; | awk '{if (length($0) &gt; 1) print substr($0, 2, length($0)-2); else print &quot;&quot;}'<\/code><\/pre>\n<p>Bu kod, dizenin uzunlu\u011fu 1&#8217;den b\u00fcy\u00fckse ilk ve son karakterleri siler; de\u011filse bo\u015f bir dize yazd\u0131r\u0131r.  Bu, hata y\u00f6netimi a\u00e7\u0131s\u0131ndan \u00f6nemlidir.<\/p>\n<p><strong>Performans Optimizasyonu: Hangi Y\u00f6ntem Daha H\u0131zl\u0131?<\/strong><\/p>\n<p><code class=\"language-\">substring<\/code>, <code class=\"language-\">sed<\/code> ve <code class=\"language-\">awk<\/code> y\u00f6ntemlerinin performans\u0131n\u0131 kar\u015f\u0131la\u015ft\u0131ral\u0131m.  B\u00fcy\u00fck bir metin dosyas\u0131 \u00fczerinde testler yaparak, hangi y\u00f6ntemin daha h\u0131zl\u0131 oldu\u011funu belirleyebiliriz.  Genellikle, <code class=\"language-\">sed<\/code> ve <code class=\"language-\">awk<\/code>, \u00f6zellikle b\u00fcy\u00fck dosyalar i\u00e7in <code class=\"language-\">substring<\/code>&#8216;den daha h\u0131zl\u0131d\u0131r.  Ancak, \u00f6zel durumlarda,  <code class=\"language-\">substring<\/code> daha h\u0131zl\u0131 olabilir.  Testler, kullan\u0131lan sistemin donan\u0131m\u0131na ve i\u015fletim sistemine ba\u011fl\u0131 olarak de\u011fi\u015febilir.  En iyi y\u00f6ntem, belirli bir senaryo i\u00e7in performans testleri yaparak belirlenmelidir.  [fatihsoysal.com](https:\/\/fatihsoysal.com) adresinde bu konuda daha detayl\u0131 performans analizleri bulabilirsiniz.<\/p>\n<p><strong>\u0130leri D\u00fczey Teknikler: Edge Case&#8217;ler ve Hata Y\u00f6netimi<\/strong><\/p>\n<p>Bo\u015f dizeler veya tek karakterli dizeler gibi \u00f6zel durumlar (edge case&#8217;ler), dize i\u015flemlerinde dikkat edilmesi gereken \u00f6nemli noktalard\u0131r.  Bu durumlar i\u00e7in \u00f6zel kod yazmak, beklenmedik hatalar\u0131 \u00f6nlemek i\u00e7in \u00f6nemlidir.<\/p>\n<p>\u00d6rne\u011fin, a\u015fa\u011f\u0131daki kod, bo\u015f veya tek karakterli dizeler i\u00e7in \u00f6zel durum y\u00f6netimi i\u00e7erir:<\/p>\n<pre class=\"language-bash\"><code>myString=&quot;&quot;\nif [[ -z &quot;$myString&quot; || ${#myString} -le 1 ]]; then\n  echo &quot;Dize bo\u015f veya tek karakterli.&quot;\nelse\n  newString=&quot;${myString:1:-1}&quot;\n  echo &quot;$newString&quot;\nfi<\/code><\/pre>\n<p>Bu kod, dizenin bo\u015f veya tek karakterli olup olmad\u0131\u011f\u0131n\u0131 kontrol eder ve buna g\u00f6re i\u015flem yapar.  Bu, program\u0131n beklenmedik hatalar nedeniyle \u00e7\u00f6kmesini \u00f6nler.<\/p>\n<p><strong>Sonu\u00e7<\/strong><\/p>\n<p>Bash&#8217;te ilk ve son karakterleri silmek i\u00e7in farkl\u0131 y\u00f6ntemler mevcuttur.  <code class=\"language-\">substring<\/code>, <code class=\"language-\">sed<\/code> ve <code class=\"language-\">awk<\/code> gibi ara\u00e7lar, farkl\u0131 ihtiya\u00e7lar i\u00e7in kullan\u0131labilir.  En iyi y\u00f6ntem, verinin boyutuna, karma\u015f\u0131kl\u0131\u011f\u0131na ve performans gereksinimlerine ba\u011fl\u0131 olarak se\u00e7ilmelidir.  Bu rehberde ele al\u0131nan y\u00f6ntemler ve ipu\u00e7lar\u0131, Bash betiklerinizde dize i\u015flemeyi daha etkili ve g\u00fcvenilir hale getirmenize yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<p><strong>S\u0131k\u00e7a Sorulan Sorular:<\/strong><\/p>\n<p>1. <strong>Bo\u015f bir dize i\u00e7in ne olur?<\/strong> Bo\u015f bir dize i\u00e7in, \u00e7o\u011fu y\u00f6ntem bo\u015f bir dize d\u00f6nd\u00fcr\u00fcr veya hata vermez. Ancak, \u00f6zel durum y\u00f6netimi eklemek her zaman iyi bir uygulamad\u0131r.<\/p>\n<p>2. <strong>\u00c7oklu karakterleri nas\u0131l silerim?<\/strong>  <code class=\"language-\">sed<\/code> ve <code class=\"language-\">awk<\/code> kullanarak, d\u00fczenli ifadeler ile \u00e7oklu karakterleri silebilirsiniz.<\/p>\n<p>3. <strong>UTF-8 karakterleri nas\u0131l i\u015flerim?<\/strong>  UTF-8 karakterleri i\u00e7in, <code class=\"language-\">sed<\/code> ve <code class=\"language-\">awk<\/code> gibi ara\u00e7lar genellikle sorunsuz \u00e7al\u0131\u015f\u0131r.  Ancak, baz\u0131 \u00f6zel durumlarda, karakter kodlamas\u0131n\u0131 do\u011fru bir \u015fekilde belirtmeniz gerekebilir.<\/p>\n<p>4. <strong>Performans optimizasyonu i\u00e7in ba\u015fka neler yapabilirim?<\/strong> B\u00fcy\u00fck dosyalar i\u00e7in,  <code class=\"language-\">xargs<\/code> gibi ara\u00e7lar\u0131 kullanarak i\u015flemi par\u00e7alara ay\u0131rabilirsiniz.<\/p>\n<p>5.  <strong>Hangi y\u00f6ntemi ne zaman kullanmal\u0131y\u0131m?<\/strong>  K\u00fc\u00e7\u00fck dizeler i\u00e7in <code class=\"language-\">substring<\/code> yeterlidir.  B\u00fcy\u00fck dosyalar ve karma\u015f\u0131k i\u015flemler i\u00e7in <code class=\"language-\">sed<\/code> veya <code class=\"language-\">awk<\/code> daha uygundur.<\/p>\n<p>Yazar: Fatih Soysal<\/p>\n","protected":false},"excerpt":{"rendered":"# Bash&#8217;te \u0130lk ve Son Karakterleri Silmek: Tam Bir K\u0131lavuz Bir metin dosyas\u0131ndaki sat\u0131rlar\u0131n ba\u015f\u0131ndaki ve sonundaki gereksiz&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-28063","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: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma<\/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-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma\" \/>\n<meta property=\"og:description\" content=\"Hi\u00e7bir etiketi bulunamad\u0131.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-22T15:45:25+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-09-01T15:32:18+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-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma\",\"datePublished\":\"2025-08-22T15:45:25+00:00\",\"dateModified\":\"2025-09-01T15:32:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/\"},\"wordCount\":1124,\"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-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/\",\"name\":\"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-08-22T15:45:25+00:00\",\"dateModified\":\"2025-09-01T15:32:18+00:00\",\"description\":\"Hi\u00e7bir etiketi bulunamad\u0131.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma\"}]},{\"@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: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma","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-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/","og_locale":"tr_TR","og_type":"article","og_title":"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma","og_description":"Hi\u00e7bir etiketi bulunamad\u0131.","og_url":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-08-22T15:45:25+00:00","article_modified_time":"2025-09-01T15:32:18+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-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma","datePublished":"2025-08-22T15:45:25+00:00","dateModified":"2025-09-01T15:32:18+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/"},"wordCount":1124,"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-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/","url":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/","name":"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-08-22T15:45:25+00:00","dateModified":"2025-09-01T15:32:18+00:00","description":"Hi\u00e7bir etiketi bulunamad\u0131.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/bash-bir-dizinin-basindaki-ve-sonundaki-karakterleri-kaldirma\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Bash: Bir Dizinin Ba\u015f\u0131ndaki ve Sonundaki Karakterleri Kald\u0131rma"}]},{"@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\/28063","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=28063"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/28063\/revisions"}],"predecessor-version":[{"id":28647,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/28063\/revisions\/28647"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=28063"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=28063"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=28063"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}