{"id":32277,"date":"2025-10-19T20:41:45","date_gmt":"2025-10-19T17:41:45","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=32277"},"modified":"2025-10-19T20:41:45","modified_gmt":"2025-10-19T17:41:45","slug":"mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/","title":{"rendered":"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#8217;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)"},"content":{"rendered":"<p><body><\/p>\n<h2>Mastering sed Command in Linux: A Comprehensive Guide (Linux&#8217;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)<\/h2>\n<p>Linux ve Unix benzeri i\u015fletim sistemlerinde metin i\u015fleme, sistem y\u00f6neticileri ve geli\u015ftiriciler i\u00e7in temel bir beceridir. Bu alandaki en g\u00fc\u00e7l\u00fc ve \u00e7ok y\u00f6nl\u00fc ara\u00e7lardan biri de <code>sed<\/code> (Stream Editor) komutudur. <code>sed<\/code>, dosyalar veya standart giri\u015f ak\u0131\u015f\u0131 \u00fczerindeki metinleri sat\u0131r sat\u0131r d\u00fczenlemek, filtrelemek ve d\u00f6n\u00fc\u015ft\u00fcrmek i\u00e7in tasarlanm\u0131\u015ft\u0131r. Etkile\u015fimli olmayan bir metin d\u00fczenleyici olmas\u0131, onu kabuk betikleri i\u00e7inde otomatikle\u015ftirilmi\u015f g\u00f6revler i\u00e7in ideal k\u0131lar. Bu kapsaml\u0131 rehberde, <code>sed<\/code>&#8216;in temellerinden geli\u015fmi\u015f kullan\u0131m\u0131na kadar her \u015feyi ad\u0131m ad\u0131m \u00f6\u011frenecek, pratik \u00f6rneklerle bilginizi peki\u015ftireceksiniz.<\/p>\n<h3>sed&#8217;in Temelleri: Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h3>\n<p><code>sed<\/code>, bir metin ak\u0131\u015f\u0131n\u0131 (stream) d\u00fczenleyen bir programd\u0131r. Genellikle bir dosyadan veya boru hatt\u0131ndan (pipe) giri\u015f al\u0131r ve i\u015flenmi\u015f \u00e7\u0131kt\u0131y\u0131 standart \u00e7\u0131kt\u0131ya (stdout) g\u00f6nderir. Temel \u00e7al\u0131\u015fma prensibi olduk\u00e7a basittir:<\/p>\n<ol>\n<li><code>sed<\/code>, giri\u015f ak\u0131\u015f\u0131ndan her sat\u0131r\u0131 tek tek okur.<\/li>\n<li>Okunan her sat\u0131r\u0131 &#8220;pattern space&#8221; (kal\u0131p alan\u0131) ad\u0131 verilen ge\u00e7ici bir arabelle\u011fe yerle\u015ftirir.<\/li>\n<li>Kullan\u0131c\u0131 taraf\u0131ndan belirtilen <code>sed<\/code> komutlar\u0131n\u0131 bu sat\u0131r \u00fczerinde \u00e7al\u0131\u015ft\u0131r\u0131r.<\/li>\n<li>De\u011fi\u015ftirilmi\u015f sat\u0131r\u0131 (veya orijinalini, e\u011fer de\u011fi\u015fiklik yap\u0131lmad\u0131ysa) standart \u00e7\u0131kt\u0131ya yazar.<\/li>\n<li>Bir sonraki sat\u0131ra ge\u00e7erek bu d\u00f6ng\u00fcy\u00fc tekrarlar.<\/li>\n<\/ol>\n<p>Bu sat\u0131r baz\u0131nda i\u015flem, <code>sed<\/code>&#8216;in b\u00fcy\u00fck dosyalar\u0131 bile belle\u011fe y\u00fcklemeden verimli bir \u015fekilde i\u015flemesini sa\u011flar.<\/p>\n<h4>Temel S\u00f6zdizimi ve Se\u00e7enekler<\/h4>\n<p><code>sed<\/code> komutunun genel s\u00f6zdizimi \u015f\u00f6yledir:<\/p>\n<pre><code>sed [SE\u00c7ENEKLER]... {KOMUTLAR} [DOSYA...]<\/code><\/pre>\n<p>Yayg\u0131n olarak kullan\u0131lan baz\u0131 se\u00e7enekler:<\/p>\n<ul>\n<li><code>-n<\/code> (<code>--quiet<\/code>, <code>--silent<\/code>): Varsay\u0131lan olarak her sat\u0131r\u0131 yazd\u0131rma davran\u0131\u015f\u0131n\u0131 engeller. Bu se\u00e7enekle birlikte, yaln\u0131zca a\u00e7\u0131k\u00e7a belirtilen <code>p<\/code> (print) komutuyla e\u015fle\u015fen sat\u0131rlar yazd\u0131r\u0131l\u0131r. Bu, belirli sat\u0131rlar\u0131 filtrelemek i\u00e7in \u00e7ok kullan\u0131\u015fl\u0131d\u0131r.<\/li>\n<li><code>-e komut<\/code> (<code>--expression=komut<\/code>): \u00c7al\u0131\u015ft\u0131r\u0131lacak bir <code>sed<\/code> komutu ekler. Birden fazla komut belirtmek i\u00e7in birden fazla <code>-e<\/code> kullan\u0131labilir.<\/li>\n<li><code>-f dosya<\/code> (<code>--file=dosya<\/code>): Komutlar\u0131 bir dosyadan okur. Karma\u015f\u0131k veya \u00e7ok sat\u0131rl\u0131 <code>sed<\/code> betikleri i\u00e7in idealdir.<\/li>\n<li><code>-i[ek]<\/code> (<code>--in-place[=ek]<\/code>): D\u00fczenlemeleri do\u011frudan orijinal dosyaya yazar. \u0130ste\u011fe ba\u011fl\u0131 <code>ek<\/code> belirtilirse, orijinal dosyan\u0131n bu eke sahip bir yede\u011fi olu\u015fturulur (\u00f6rn: <code>-i.bak<\/code>). Bu se\u00e7ene\u011fi dikkatli kullanmak \u00f6nemlidir, \u00e7\u00fcnk\u00fc yanl\u0131\u015f bir komut verilerinizin kaybolmas\u0131na neden olabilir.<\/li>\n<li><code>-r<\/code> (<code>--regexp-extended<\/code>): Geni\u015fletilmi\u015f d\u00fczenli ifadeleri (ERE) kullan\u0131r. Bu, parantez <code>()<\/code> ve art\u0131 <code>+<\/code> gibi karakterleri ka\u00e7\u0131\u015f karakteri olmadan kullanman\u0131z\u0131 sa\u011flar.<\/li>\n<\/ul>\n<h3>sed Komutlar\u0131 ve Kullan\u0131m \u00d6rnekleri<\/h3>\n<p><code>sed<\/code>&#8216;in g\u00fcc\u00fc, \u00e7e\u015fitli komutlar\u0131nda ve bunlar\u0131 adreslerle (sat\u0131r numaralar\u0131 veya d\u00fczenli ifadeler) birle\u015ftirme yetene\u011finde yatar.<\/p>\n<h4>1. Yerine Koyma (Substitution &#8211; <code>s<\/code>)<\/h4>\n<p><code>sed<\/code>&#8216;in en s\u0131k kullan\u0131lan komutudur. Bir desenin ba\u015fka bir metinle de\u011fi\u015ftirilmesini sa\u011flar.<\/p>\n<pre><code>s\/desen\/yerine_gecen_metin\/bayraklar<\/code><\/pre>\n<ul>\n<li><code>desen<\/code>: De\u011fi\u015ftirilecek d\u00fczenli ifade.<\/li>\n<li><code>yerine_gecen_metin<\/code>: Desenle e\u015fle\u015fen yerlere konulacak metin.<\/li>\n<li><code>bayraklar<\/code>: \u0130\u015flemi de\u011fi\u015ftiren iste\u011fe ba\u011fl\u0131 bayraklar.<\/li>\n<\/ul>\n<p><strong>Yayg\u0131n Bayraklar:<\/strong><\/p>\n<ul>\n<li><code>g<\/code> (global): Sat\u0131rdaki t\u00fcm e\u015fle\u015fmeleri de\u011fi\u015ftirir, sadece ilkini de\u011fil.<\/li>\n<li><code>i<\/code> (case-insensitive): B\u00fcy\u00fck\/k\u00fc\u00e7\u00fck harf duyarl\u0131l\u0131\u011f\u0131n\u0131 kapat\u0131r.<\/li>\n<li><code>p<\/code> (print): De\u011fi\u015fiklik yap\u0131lan sat\u0131r\u0131 yazd\u0131r\u0131r (genellikle <code>-n<\/code> ile kullan\u0131l\u0131r).<\/li>\n<li><code>w dosya<\/code> (write): De\u011fi\u015fiklik yap\u0131lan sat\u0131r\u0131 belirtilen dosyaya yazar.<\/li>\n<li>Say\u0131 (\u00f6rn: <code>2<\/code>): Sadece desenin N&#8217;inci e\u015fle\u015fmesini de\u011fi\u015ftirir.<\/li>\n<\/ul>\n<p><strong>\u00d6rnekler:<\/strong><\/p>\n<pre><code># \"elma\" kelimesini \"armut\" ile de\u011fi\u015ftir (ilk e\u015fle\u015fme)\necho \"Bu bir elma ve elma suyu.\" | sed 's\/elma\/armut\/'\n<h2>\u00c7\u0131kt\u0131: Bu bir armut ve elma suyu.<\/h2>\n\n<h2>\"elma\" kelimesini \"armut\" ile de\u011fi\u015ftir (t\u00fcm e\u015fle\u015fmeler)<\/h2>\necho \"Bu bir elma ve elma suyu.\" | sed 's\/elma\/armut\/g'\n<h2>\u00c7\u0131kt\u0131: Bu bir armut ve armut suyu.<\/h2>\n\n<h2>B\u00fcy\u00fck\/k\u00fc\u00e7\u00fck harf duyars\u0131z de\u011fi\u015ftirme<\/h2>\necho \"Elma suyu\" | sed 's\/elma\/armut\/gi'\n<h2>\u00c7\u0131kt\u0131: Armut suyu<\/h2>\n\n<h2>Belirli bir sat\u0131rda de\u011fi\u015fiklik yapma (\u00f6rne\u011fin 3. sat\u0131r)<\/h2>\nsed '3s\/eski\/yeni\/g' dosya.txt\n\n<h2>Dosya i\u00e7inde do\u011frudan de\u011fi\u015fiklik yapma ve yedek olu\u015fturma<\/h2>\nsed -i.bak 's\/eski_metin\/yeni_metin\/g' dosya.txt\n\n<h2>E\u015fle\u015fen deseni \" & \" ile kullanma<\/h2>\necho \"Merhaba D\u00fcnya\" | sed 's\/D\u00fcnya\/B\u00fcy\u00fck &\/'\n<h2>\u00c7\u0131kt\u0131: Merhaba B\u00fcy\u00fck D\u00fcnya<\/code><\/pre>\n<\/h2>\n<h4>2. Sat\u0131r Silme (Delete &#8211; <code>d<\/code>)<\/h4>\n<p>Belirtilen adreslere uyan sat\u0131rlar\u0131 siler.<\/p>\n<pre><code>[adres]d<\/code><\/pre>\n<p><strong>\u00d6rnekler:<\/strong><\/p>\n<pre><code># 5. sat\u0131r\u0131 sil\nsed '5d' dosya.txt\n\n<h2>1 ile 3 aras\u0131ndaki sat\u0131rlar\u0131 sil<\/h2>\nsed '1,3d' dosya.txt\n\n<h2>\"hata\" kelimesini i\u00e7eren sat\u0131rlar\u0131 sil<\/h2>\nsed '\/hata\/d' dosya.txt\n\n<h2>Bo\u015f sat\u0131rlar\u0131 sil<\/h2>\nsed '\/^$\/d' dosya.txt<\/code><\/pre>\n<h4>3. Sat\u0131r Yazd\u0131rma (Print &#8211; <code>p<\/code>)<\/h4>\n<p>Belirtilen adreslere uyan sat\u0131rlar\u0131 yazd\u0131r\u0131r. Genellikle <code>-n<\/code> se\u00e7ene\u011fiyle birlikte kullan\u0131l\u0131r.<\/p>\n<pre><code>[adres]p<\/code><\/pre>\n<p><strong>\u00d6rnekler:<\/strong><\/p>\n<pre><code># 10. sat\u0131r\u0131 yazd\u0131r\nsed -n '10p' dosya.txt\n\n<h2>\"ba\u015fl\u0131k\" kelimesini i\u00e7eren sat\u0131rlar\u0131 yazd\u0131r<\/h2>\nsed -n '\/ba\u015fl\u0131k\/p' dosya.txt\n\n<h2>5 ile 10 aras\u0131ndaki sat\u0131rlar\u0131 yazd\u0131r<\/h2>\nsed -n '5,10p' dosya.txt\n\n<h2>Belirli bir desenden ba\u015flay\u0131p ba\u015fka bir desene kadar olan sat\u0131rlar\u0131 yazd\u0131r<\/h2>\nsed -n '\/START\/,\/END\/p' dosya.txt<\/code><\/pre>\n<h4>4. Ekleme, Sonuna Ekleme ve De\u011fi\u015ftirme (Insert <code>i<\/code>, Append <code>a<\/code>, Change <code>c<\/code>)<\/h4>\n<p>Bu komutlar, metin eklemek veya sat\u0131rlar\u0131 tamamen de\u011fi\u015ftirmek i\u00e7in kullan\u0131l\u0131r.<\/p>\n<ul>\n<li><code>i metin<\/code>: Belirtilen adresin <em>\u00f6ncesine<\/em> metin ekler.<\/li>\n<li><code>a metin<\/code>: Belirtilen adresin <em>sonras\u0131na<\/em> metin ekler.<\/li>\n<li><code>c metin<\/code>: Belirtilen adresi tamamen <em>metin<\/em> ile de\u011fi\u015ftirir.<\/li>\n<\/ul>\n<p>\u00c7ok sat\u0131rl\u0131 metin eklemek i\u00e7in her yeni sat\u0131r\u0131 ters e\u011fik \u00e7izgi <code>\\<\/code> ile bitirmek gerekir.<\/p>\n<p><strong>\u00d6rnekler:<\/strong><\/p>\n<pre><code># 2. sat\u0131r\u0131n \u00f6n\u00fcne yeni bir sat\u0131r ekle\necho -e \"Sat\u0131r1\\nSat\u0131r2\\nSat\u0131r3\" | sed '2i\\Yeni Sat\u0131r \u00d6ncesi'\n<h2>\u00c7\u0131kt\u0131:<\/h2>\n<h2>Sat\u0131r1<\/h2>\n<h2>Yeni Sat\u0131r \u00d6ncesi<\/h2>\n<h2>Sat\u0131r2<\/h2>\n<h2>Sat\u0131r3<\/h2>\n\n<h2>\"Sat\u0131r2\" i\u00e7eren sat\u0131r\u0131n sonras\u0131na ekle<\/h2>\necho -e \"Sat\u0131r1\\nSat\u0131r2\\nSat\u0131r3\" | sed '\/Sat\u0131r2\/a\\Yeni Sat\u0131r Sonras\u0131'\n<h2>\u00c7\u0131kt\u0131:<\/h2>\n<h2>Sat\u0131r1<\/h2>\n<h2>Sat\u0131r2<\/h2>\n<h2>Yeni Sat\u0131r Sonras\u0131<\/h2>\n<h2>Sat\u0131r3<\/h2>\n\n<h2>2. sat\u0131r\u0131 tamamen de\u011fi\u015ftir<\/h2>\necho -e \"Sat\u0131r1\\nSat\u0131r2\\nSat\u0131r3\" | sed '2c\\Tamamen De\u011fi\u015fti'\n<h2>\u00c7\u0131kt\u0131:<\/h2>\n<h2>Sat\u0131r1<\/h2>\n<h2>Tamamen De\u011fi\u015fti<\/h2>\n<h2>Sat\u0131r3<\/h2>\n\n<h2>\u00c7ok sat\u0131rl\u0131 ekleme<\/h2>\necho \"Ba\u015flang\u0131\u00e7\" | sed 'a\\\u0130lk sat\u0131r\\n\u0130kinci sat\u0131r\\n\u00dc\u00e7\u00fcnc\u00fc sat\u0131r'\n<h2>\u00c7\u0131kt\u0131:<\/h2>\n<h2>Ba\u015flang\u0131\u00e7<\/h2>\n<h2>\u0130lk sat\u0131r<\/h2>\n<h2>\u0130kinci sat\u0131r<\/h2>\n<h2>\u00dc\u00e7\u00fcnc\u00fc sat\u0131r<\/code><\/pre>\n<\/h2>\n<h4>5. Adres Aral\u0131klar\u0131<\/h4>\n<p>Komutlar\u0131 belirli sat\u0131r numaralar\u0131na veya desen aral\u0131klar\u0131na uygulamak i\u00e7in adres aral\u0131klar\u0131 kullan\u0131l\u0131r.<\/p>\n<pre><code># 5 ile 10. sat\u0131rlar aras\u0131ndaki \"eski\" kelimesini \"yeni\" ile de\u011fi\u015ftir\nsed '5,10s\/eski\/yeni\/g' dosya.txt\n\n<h2>\"\/START\/\" ile ba\u015flayan ve \"\/END\/\" ile biten sat\u0131rlar aras\u0131ndaki sat\u0131rlar\u0131 sil<\/h2>\nsed '\/START\/,\/END\/d' dosya.txt\n\n<h2>\u0130lk bo\u015f sat\u0131rdan son bo\u015f sat\u0131ra kadar olan k\u0131sm\u0131 sil (\u00e7ok sat\u0131rl\u0131 bo\u015fluk bloklar\u0131)<\/h2>\nsed '\/^$\/,\/^$\/d' dosya.txt<\/code><\/pre>\n<h3>Geli\u015fmi\u015f sed Teknikleri ve Pratik \u0130pu\u00e7lar\u0131<\/h3>\n<h4>\u00c7oklu Komutlar<\/h4>\n<p>Tek bir <code>sed<\/code> \u00e7a\u011fr\u0131s\u0131nda birden fazla komut \u00e7al\u0131\u015ft\u0131rabilirsiniz:<\/p>\n<ol>\n<li><code>-e<\/code> se\u00e7ene\u011fini birden fazla kullanmak: <code>sed -e 's\/foo\/bar\/' -e 's\/baz\/qux\/' dosya.txt<\/code><\/li>\n<li>Noktal\u0131 virg\u00fcl <code>;<\/code> kullanmak: <code>sed 's\/foo\/bar\/; s\/baz\/qux\/' dosya.txt<\/code><\/li>\n<li>Komut dosyas\u0131n\u0131 bir dosyadan okumak (<code>-f<\/code>):<\/li>\n<pre><code># komutlar.sed dosyas\u0131 i\u00e7eri\u011fi:\n<h2>s\/foo\/bar\/g<\/h2>\n<h2>\/hata\/d<\/h2>\nsed -f komutlar.sed dosya.txt<\/code><\/pre>\n<\/ol>\n<h4>D\u00fczenli \u0130fadeler (Regular Expressions)<\/h4>\n<p><code>sed<\/code>&#8216;in g\u00fcc\u00fcn\u00fcn b\u00fcy\u00fck bir k\u0131sm\u0131 d\u00fczenli ifadeleri kullanma yetene\u011finden gelir. Geni\u015fletilmi\u015f d\u00fczenli ifadeler (ERE) i\u00e7in <code>-r<\/code> (veya <code>-E<\/code>) se\u00e7ene\u011fini kullanmak, s\u00f6zdizimini basitle\u015ftirir:<\/p>\n<pre><code># Parantez () ile yakalama gruplar\u0131 ve \\1 ile geri referanslama\necho \"Ad: John Doe\" | sed -r 's\/Ad: (.<em>) (.<\/em>)\/\\2, \\1\/'\n<h2>\u00c7\u0131kt\u0131: Doe, John<\/h2>\n\n<h2>Sat\u0131r ba\u015f\u0131 ^ ve sat\u0131r sonu $<\/h2>\necho \"Merhaba\" | sed 's\/^\/>>> \/' # Sat\u0131r ba\u015f\u0131na ekle\necho \"Merhaba\" | sed 's\/$\/ <<<&#039; # Sat\u0131r sonuna ekle\n\n<h2>Karakter s\u0131n\u0131flar\u0131 []<\/h2>\necho \"renk\" | sed 's\/[aeiou]\/X\/g' # T\u00fcm sesli harfleri X ile de\u011fi\u015ftir\n<h2>\u00c7\u0131kt\u0131: rXnXk<\/code><\/pre>\n<\/h2>\n<h4>Hold Space (Bekletme Alan\u0131)<\/h4>\n<p><code>sed<\/code>, &#8220;pattern space&#8221; (kal\u0131p alan\u0131) d\u0131\u015f\u0131nda, metinleri ge\u00e7ici olarak depolamak i\u00e7in &#8220;hold space&#8221; (bekletme alan\u0131) ad\u0131 verilen ikinci bir arabelle\u011fe sahiptir. Bu, \u00e7ok sat\u0131rl\u0131 i\u015flemleri veya karma\u015f\u0131k metin manip\u00fclasyonlar\u0131n\u0131 ger\u00e7ekle\u015ftirmek i\u00e7in \u00e7ok g\u00fc\u00e7l\u00fc bir \u00f6zelliktir. Temel komutlar:<\/p>\n<ul>\n<li><code>h<\/code>: Pattern space i\u00e7eri\u011fini hold space&#8217;e kopyalar.<\/li>\n<li><code>H<\/code>: Pattern space i\u00e7eri\u011fini hold space&#8217;e ekler.<\/li>\n<li><code>g<\/code>: Hold space i\u00e7eri\u011fini pattern space&#8217;e kopyalar.<\/li>\n<li><code>G<\/code>: Hold space i\u00e7eri\u011fini pattern space&#8217;e ekler.<\/li>\n<li><code>x<\/code>: Pattern space ve hold space i\u00e7eriklerini de\u011fi\u015ftirir.<\/li>\n<\/ul>\n<p>\u00d6rne\u011fin, iki sat\u0131r\u0131 de\u011fi\u015ftirmek veya belirli bir kal\u0131b\u0131n ard\u0131ndan gelen sat\u0131r\u0131 i\u015flemek i\u00e7in kullan\u0131labilir.<\/p>\n<h4>Pratik Senaryolar<\/h4>\n<ul>\n<li><strong>Bo\u015f sat\u0131rlar\u0131 kald\u0131rma:<\/strong> <code>sed '\/^$\/d' dosya.txt<\/code><\/li>\n<li><strong>Belirli bir kal\u0131b\u0131 i\u00e7eren sat\u0131rlar\u0131 yorum sat\u0131r\u0131 yapma:<\/strong> <code>sed '\/hata\/s\/^\/# \/' dosya.txt<\/code><\/li>\n<li><strong>HTML etiketlerini kald\u0131rma:<\/strong> <code>sed 's\/<[^>]*>\/\/g' dosya.html<\/code><\/li>\n<li><strong>Belirli bir s\u00fctunu \u00e7\u0131karma (bo\u015flukla ayr\u0131lm\u0131\u015f):<\/strong> <code>sed -r 's\/^(\\S+\\s+){2}\/\/' dosya.txt<\/code> (ilk iki s\u00fctunu siler)<\/li>\n<li><strong>Birden fazla dosyada d\u00fczenleme:<\/strong> <code>sed -i 's\/eski\/yeni\/g' *.txt<\/code><\/li>\n<\/ul>\n<h3>Sonu\u00e7 ve S\u0131k\u00e7a Sorulan Sorular<\/h3>\n<p><code>sed<\/code>, basit metin de\u011fi\u015ftirmelerden karma\u015f\u0131k veri d\u00f6n\u00fc\u015f\u00fcmlerine kadar geni\u015f bir yelpazede g\u00f6revleri yerine getirebilen inan\u0131lmaz derecede g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. D\u00fczenli ifadelerle birle\u015fti\u011finde, metin i\u015fleme yeteneklerinizde devrim yaratabilir. Ba\u015flang\u0131\u00e7ta biraz dik bir \u00f6\u011frenme e\u011frisine sahip olsa da, pratik yaparak ve bolca \u00f6rnek inceleyerek bu araca hakim olabilirsiniz. Komutlar\u0131 bir dosyaya do\u011frudan uygulamadan \u00f6nce her zaman \u00e7\u0131kt\u0131y\u0131 standart \u00e7\u0131kt\u0131ya y\u00f6nlendirerek test etmeyi unutmay\u0131n (<code>-i<\/code> se\u00e7ene\u011fini kullanmadan).<\/p>\n<h4>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h4>\n<h3 id=\"sss1\">1. <code>sed<\/code> ve <code>awk<\/code> aras\u0131ndaki fark nedir?<\/h3>\n<p><code>sed<\/code>, sat\u0131r baz\u0131nda d\u00fczenlemeler ve filtrelemeler i\u00e7in tasarlanm\u0131\u015f bir &#8220;stream editor&#8221;d\u00fcr. Temel olarak metin ak\u0131\u015f\u0131n\u0131 manip\u00fcle eder. <code>awk<\/code> ise daha \u00e7ok bir programlama diline benzer; s\u00fctun baz\u0131nda i\u015fleme, karma\u015f\u0131k veri analizi, de\u011fi\u015fkenler, ko\u015fullu ifadeler ve d\u00f6ng\u00fcler gibi \u00f6zellikler sunar. <code>sed<\/code> daha \u00e7ok &#8220;ne de\u011fi\u015ftirilecek&#8221; sorusuna odaklan\u0131rken, <code>awk<\/code> &#8220;verilerle ne yap\u0131lacak&#8221; sorusuna daha geni\u015f bir cevap verir.<\/p>\n<h3 id=\"sss2\">2. Neden <code>-n<\/code> ve <code>p<\/code> komutunu birlikte kullan\u0131yoruz?<\/h3>\n<p><code>sed<\/code> varsay\u0131lan olarak her sat\u0131r\u0131 i\u015fledikten sonra standart \u00e7\u0131kt\u0131ya yazd\u0131r\u0131r. <code>-n<\/code> se\u00e7ene\u011fi bu varsay\u0131lan yazd\u0131rma davran\u0131\u015f\u0131n\u0131 engeller. Bu durumda, sadece a\u00e7\u0131k\u00e7a <code>p<\/code> (print) komutuyla belirtilen sat\u0131rlar yazd\u0131r\u0131l\u0131r. Bu kombinasyon, \u00f6zellikle belirli sat\u0131rlar\u0131 filtrelemek veya ay\u0131klamak istedi\u011finizde \u00e7ok kullan\u0131\u015fl\u0131d\u0131r, \u00e7\u00fcnk\u00fc sadece ilgilendi\u011finiz \u00e7\u0131kt\u0131lar\u0131 g\u00f6rmenizi sa\u011flar.<\/p>\n<h3 id=\"sss3\">3. <code>sed<\/code> ile dosya i\u00e7inde de\u011fi\u015fiklik yapmak g\u00fcvenli midir?<\/h3>\n<p><code>-i<\/code> se\u00e7ene\u011fi ile dosya i\u00e7inde do\u011frudan de\u011fi\u015fiklik yapmak m\u00fcmk\u00fcnd\u00fcr. Ancak, bu i\u015flem geri al\u0131namaz oldu\u011fundan dikkatli kullan\u0131lmal\u0131d\u0131r. Yanl\u0131\u015f bir komut dosyan\u0131zdaki verileri kal\u0131c\u0131 olarak bozabilir. G\u00fcvenli bir yakla\u015f\u0131m, <code>-i<\/code> se\u00e7ene\u011fine bir yedekleme eki sa\u011flamakt\u0131r (\u00f6rn: <code>sed -i.bak 's\/eski\/yeni\/' dosya.txt<\/code>). Bu, orijinal dosyan\u0131n <code>dosya.txt.bak<\/code> ad\u0131nda bir kopyas\u0131n\u0131 olu\u015fturur, b\u00f6ylece bir sorun olmas\u0131 durumunda geri d\u00f6nebilirsiniz.<\/p>\n<h3 id=\"sss4\">4. <code>sed<\/code> komutunda regex kullan\u0131rken \u00f6zel karakterlerden nas\u0131l ka\u00e7\u0131n\u0131r\u0131m?<\/h3>\n<p>D\u00fczenli ifadelerde \u00f6zel anlam\u0131 olan karakterler (\u00f6rn: <code>.<\/code>, <code>*<\/code>, <code>+<\/code>, <code>?<\/code>, <code>^<\/code>, <code>$<\/code>, <code>[<\/code>, <code>]<\/code>, <code>(<\/code>, <code>)<\/code>, <code>{<\/code>, <code>}<\/code>, <code>|<\/code>, <code>\\<\/code>, <code>\/<\/code>) literal olarak e\u015fle\u015fmesini istiyorsan\u0131z, \u00f6nlerine bir ters e\u011fik \u00e7izgi <code>\\<\/code> koyarak ka\u00e7man\u0131z gerekir. \u00d6rne\u011fin, bir noktay\u0131 <code>.<\/code> de\u011fil, <code>\\.<\/code> olarak aramal\u0131s\u0131n\u0131z. E\u011fer arad\u0131\u011f\u0131n\u0131z desen i\u00e7inde \u00e7ok fazla \u00f6zel karakter varsa, <code>sed<\/code>&#8216;in <code>s\/\/\/<\/code> komutunda farkl\u0131 bir s\u0131n\u0131rlay\u0131c\u0131 kullanmak (\u00f6rn: <code>s#desen#yerine_gecen_metin#<\/code>) da pratik olabilir.<\/p>\n<h3 id=\"sss5\">5. <code>sed<\/code> ile \u00e7ok sat\u0131rl\u0131 i\u015flemleri nas\u0131l yapar\u0131m?<\/h3>\n<p><code>sed<\/code> temel olarak sat\u0131r baz\u0131nda \u00e7al\u0131\u015fsa da, &#8220;hold space&#8221; (bekletme alan\u0131) ve d\u00f6ng\u00fc komutlar\u0131 (<code>N<\/code>, <code>P<\/code>, <code>D<\/code>) ile \u00e7ok sat\u0131rl\u0131 i\u015flemler ger\u00e7ekle\u015ftirmek m\u00fcmk\u00fcnd\u00fcr. <code>N<\/code> komutu bir sonraki sat\u0131r\u0131 pattern space&#8217;e okur ve mevcut sat\u0131rla birle\u015ftirir, b\u00f6ylece iki sat\u0131r\u0131 ayn\u0131 anda i\u015fleyebilirsiniz. Hold space ise ge\u00e7ici olarak metin depolayarak daha karma\u015f\u0131k mant\u0131klar kurman\u0131za olanak tan\u0131r. Ancak, \u00e7ok sat\u0131rl\u0131 karma\u015f\u0131k i\u015flemler i\u00e7in <code>awk<\/code> genellikle daha uygun bir ara\u00e7t\u0131r.<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#8217;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)\nLinux ve Unix benzeri i\u015fletim si","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":[241],"tags":[],"class_list":{"0":"post-32277","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-linux","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>Mastering sed Command in Linux: A Comprehensive Guide (Linux&#039;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber) - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\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\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#039;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)\" \/>\n<meta property=\"og:description\" content=\"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#039;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber) Linux ve Unix benzeri i\u015fletim si\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-19T17:41:45+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=\"7 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#8217;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)\",\"datePublished\":\"2025-10-19T17:41:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/\"},\"wordCount\":1449,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Linux\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/\",\"name\":\"Mastering sed Command in Linux: A Comprehensive Guide (Linux'ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber) - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-19T17:41:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#8217;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)\"}]},{\"@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":"Mastering sed Command in Linux: A Comprehensive Guide (Linux'ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber) - Kodlar\u0131n Gizemli D\u00fcnyas\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\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"Mastering sed Command in Linux: A Comprehensive Guide (Linux'ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)","og_description":"Mastering sed Command in Linux: A Comprehensive Guide (Linux'ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber) Linux ve Unix benzeri i\u015fletim si","og_url":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-19T17:41:45+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"7 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#8217;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)","datePublished":"2025-10-19T17:41:45+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/"},"wordCount":1449,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Linux"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/","name":"Mastering sed Command in Linux: A Comprehensive Guide (Linux'ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber) - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-19T17:41:45+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/mastering-sed-command-in-linux-a-comprehensive-guide-linuxta-sed-komutunda-uzmanlasmak-kapsamli-bir-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Mastering sed Command in Linux: A Comprehensive Guide (Linux&#8217;ta sed Komutunda Uzmanla\u015fmak: Kapsaml\u0131 Bir Rehber)"}]},{"@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\/32277","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=32277"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32277\/revisions"}],"predecessor-version":[{"id":32278,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32277\/revisions\/32278"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=32277"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=32277"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=32277"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}