nasıl komut satırında bir dosyayı düzenlerim?

4 Cevap php

Ben bir kullanıcı ekler bir php dosyası oluşturun ve exec () fonksiyonu (php) kullanarak linux public_html dizini oluşturmak için çalışıyorum.

Ben php dosyasına aşağıdaki kodu ekleyebilirsiniz

exec("useradd -d /home/username -m username"); exec("mkdir /home/username/public_html");

şimdi .. Ben windows public_html çalışmak için smb.conf public_html eklemek zorunda.

Bu komut satırında smb.conf düzenlemek mümkün mü?

Tabii, ben php dosyasını çalıştırmak için root olarak SSH kullanmak için gidiyorum.

4 Cevap

parse_ini_file() fonksiyonuna bir göz atın.

Sonra ini dosyası içinde yazmak istiyorsanız bu deneyin:

function writeini($file,$title,$item,$data) {
  $source = file($file);
  $t_match = "/^\[".$title."\]/i";
  $s_title = "";
  $c = "0";
  $o = "";
  foreach ($source as $temp) {
    $c++;
    if (preg_match("/^\[.+\]/i",$temp)) {
          if (preg_match($t_match,$l_title)) {
            $done = "yes";
            $f_write .= $item."=".$data."\n";
          }
          $l_title = $temp;
          $f_write .= $temp;
        } elseif (preg_match("/^".$item."=/i",$temp) && preg_match($t_match,$l_title)) {
          $done = "yes";
          $f_write .= $item."=".$data."\n";
          $l_title = "";
        } elseif ($c == count($source) && $done != "yes") {
          if (preg_match($t_match,$l_title)) {
            $f_write .= $temp.$item."=".$data."\n";
          } else {
                $f_write .= $temp."[".$title."]\n".$item."=".$data."\n";
          }
        } else {
          $f_write .= $temp;
        }
  }
  $ini_write = fopen($file,'w');
  fwrite($ini_write,$f_write);
  fclose($ini_write);
}

EDIT: Roy Rico'nun cevabı okuduktan sonra ben soruyu yanlış inanıyorum.

Siz nano veya vi kullanabilirsiniz. Eğer bir acemi iseniz o nano daha ileri düz olurdu. Basitçe şöyle kullanabilirsiniz:

nano /etc/samba/smb.conf

Ben ctrl + o dosya ve ctrl + x çıkacaktır tasarruf inanıyoruz.

Eğer php komut komut satırında idam, ya da (etkileşimli bir kabuk kullanarak) komut satırı düzenlemek için komut satırı kendinizi kullanmak için gidiyoruz kullanarak dosyayı düzenlemek için mi arıyorsunuz?

Eğer php komut ile dosyayı düzenlemek için çalışıyorsanız, size fopen, fwrite komutları, artı komut için dosyaya erişim vermek kullanmak zorunda, o zaman muhtemelen, vb güvenlik endişeleri sürü içine edeceğiz olacak vb Alt çizgi, burada size verilecek bir hızlı cevap daha bulunuyor.

Bir etkileşimli kabuk kullanıyorsanız, vi ve emacs büyük editörler, henüz sen önce onları hiç kullanmadıysanız bile çok zor. pico ve nano CL editörleri aşina olmayanlar için dostça.

Çoğu kişi kendi komut satırı editör olarak Vim veya Emacs kullanabilirsiniz. Şahsen, ben emacs tercih, ama her ikisi de deneyin ve tercih görmek.