[Çözüldü] Python ile sed kullanımı sonlandırılmamış s komutu sorunu

Başlatan user, 08 Mart 2020 - 13:41:41

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

user

os.system("cat output01.txt | sed 's/^$/\/\/\~\~\/\//g' | sed 's/$/\n/g' > output02.txt")
sed: -e ifade #1, harf 4: sonlandırılmamış 's' komutu
256

Pythonda bu hatayı alıyorum bunu nasıl düzeltebilirim?

illedelinux

Yazılımdan anlamam ama benzer bir işleme ben de maruz kalmıştım, uçbirim hep bu kısmı gösteriyor /\n/
O kısımdaki eğri çizgilerin yönlerinden oynamak gerekiyor.
GNU/Linux kullanmıyorum, onu yaşıyorum...

user

deneme = 'cat output01.txt | sed \'s/^$/\/\/\~\~\/\//g\' | sed \'s/$/\\n/g\' > output00.txt'
os.system(deneme)

os.system'i artık geliştirmesi durdurulmuş onun için farklı bir yol izlemek gerekiyor. Bir değişkene atamak gerekiyor. Bir sürü \ ile hallettim :)

Aaron

Merhaba. Bu bir pipe islemi o nedenle os.system() yerine subprocess.popen() kullanmanizi tavsiye ederim. Hem daha efektif hem de gelistiriciye daha fazla kontrol imkani sunuyor. Eger subprocess secenegini tercih edecek olursaniz oncelikle subprocess paketini iceri aktarmaniz gerekir.