Çok fazla karmaşıklıktan geçen ve sonunda kullanıcının çalıştırması için bir komut üreten bir PHP betiğim var. Şu anda, komutu yazdırır ve sonra çıkar. Kullanıcı komutu kopyalamak ve çalıştırmak için yapıştırmak zorundadır. PHP komutu komut satırında çalıştırıldığı için, PHP betiği komutu komut satırına yerleştirebildiyse kullanıcı için daha kolay olurdu. Kullanıcı sadece enter tuşuna basabilir. (Evet - bir insanın komutu çalıştırması bir gerekliliktir, yoksa sadece komut dosyasının içinden komutu uygularım.)
Komutu panoya kopyalamak için xclip kullanmayı denedim. Kilitleniyor. Çalıştırmak için exec ve sistemi kullandım. Çalıştırılacak komut $ komutunda ve kullandım:
exec("echo \"$command\" | xclip");
Hem exec hem de system ile ctrl-C'ye kadar kilitlenip panoda hiçbir şey kalmadı.
GÜNCELLEŞTİRME Xclip komutunu komutta / dev / null dizinine yönlendirirsem asılmadığını buldum. Daha sonra kullanıcının panosuna ekleyebilir ve ctrl + shift + v kullanarak çalıştırabilir
exec("echo \"$command\" | xclip -sel clip -i > /dev/null");
Her şeyi komut satırındaki karmaşık komut dosyalarına sığdırmayı, son çıktı satırını izlemeyi ve komut satırına yapıştırmayı denedim. Komutu yazdırmak için alabilirim, ancak komut satırında değil. Her zaman komutu yazdırır ve ardından komut satırı altında gelir.
Komut satırı için BASH kullanıyorum. Bu nedenle, herhangi bir çözüm, bir çözüm olduğunu varsayarak bash kabuğunda çalışmalıdır.