Dizüstü bilgisayarımda ghc 6.12.3 ve Ubuntu 11.04 yüklü durumdayım.Haskell'de sudo komutları çalıştırın
Haskell'de bazı kabuk komutlarını alıp superuser (sudo update-manager, sudo iwlist .... gibi) olarak yürüten bir işleve sahip olmak isterim. System.Process modülünün createProcess, runInteractiveCommand gibi bazı işlevleri olduğunu biliyorum. Ancak, "sudo update-manager" gibi birleşik commnad'lar için değil, tek bir ham komut veya tek bir kabuk komutu vardır. "Sudo ..." yürütme işlevleriyle ilgili tüm deneylerim başarısız oldu. Haskell işlevimi çalıştırdığım terminalde yanıt yoktu.
Ayrıca HSH paketine de baktım. Ama bana verilen işlevlerin sudo komutları için de iyi olmadığı görünüyor.
Tahminimce "sudo update-manager" gibi komutları yürütmek iki işlem gerektirir. Biri "sudo" ve diğeri "update-manager" içindir. Bu nedenle, "createProcess" gibi işlevleri iki kez çağırmalı ve bir şekilde bunları "update-manager" için ikinci işlem "sudo" için ilk işlemden süper kullanıcı ayrıcalığına sahip olacak şekilde bağlamalıyım.
Yardım için şimdiden teşekkür ederiz!
'updateManager'' sudo'.'sudo'nun argümanıdır, tüm argümanlarını okuyacaktır ve bunlardan yeni bir komut satırı yaratır. – fuz
Bize göstermediğiniz kodu çalışmaz. Açıklamanızdan, işe yaramalıydı. – dave4420
Muhtemelen iyi bir fikir değil. Seviye yükseltmek yerine seviyesini düşürmek daha iyidir – alternative