Genişleyen değişkenlerle ilgili sorun yaşıyorum ve eğik çizgileri yok sayıyorum.Bash değişkenlerinde ileri eğik çizgiden kaçmayı durdur
Git deposumdaki metni bularak başka bir metinle değiştiren basit bir komut dosyası yazdım. Bu iyi çalışıyor, ancak şimdi regex kullanarak genişletmek istiyorum. Bu, git grep ve sed destek regexinden beri çok fazla sorun olmamalı. Ancak, giriş değişkenlerimde regex kullanmaya çalıştığımda, komut dosyasını bozan eğik çizgi kaldırılır.
Terminalde git grep "\bPoint"
çalıştırırsam birçok sonuç alırım. Ancak, komut dosyasımda kullanıcı girdisini kullandığımda aynı sonuçları nasıl alacağımı anlayamıyorum. git grep
dosyası, \bPoint
yerine bPoint
girişimi değiştirecek ve herhangi bir sonuç bulamamayacaktır.
#!/bin/bash
# This script allows you to replace text in the git repository without damaging
# .git files.
read -p "Text to replace: " toReplace
read -p "Replace with: " replaceWith
git grep -l ${toReplace}
# The command I want to run
#git grep -l "${toReplace}" | xargs sed -i "s,${toReplace},${replaceWith},g"
Çok sayıda farklı teklif kombinasyonu denedim, ancak hiçbir şey benim için çalışmıyor gibi görünüyor.
, bir ters eğik çizgi bu. –