PHPDoc için sudo ile SH komut dosyası çalıştıran

3 Cevap php

How can you run the following script in generating docs by PHPdoc?

#1 sudo -code

sudo source makedoc.sh

Ben olsun

no command source

#2 without sudo

The problem is that sudo does not have the command source. I tried to fix the problem unsuccessfully by changing the persmissions of ~/phpdoc/phpdoc to 777 and then running

source makedoc.sh

Ben olsun

makedoc.sh:90: permission denied: /home/masi/phpdoc/phpdoc

#3 without sudo

I run

 phpdoc -c makedoc.sh

Ben olsun

codes master $ phpdoc -c makedoc.sh
PHP Version 5.2.6-3ubuntu4.2
phpDocumentor version 1.4.2

Parsing configuration file phpDocumentor.ini...
   (found in /usr/share/php/data/PhpDocumentor/)...

done
Maximum memory usage set at 256M after considering php.ini...
using tokenizer Parser
a target directory must be specified
 try phpdoc -h

3 Cevap

Bir mesele çizgi (örn.! # / Usr / bin / bash) dosyası var mı makedoc.sh yüzden yürütülebilir yapılabilir?

chmod +x makedoc.sh

Ardından

sudo ./makedoc.sh

and see what happens.

. / Demek çalıştırmak makedoc.sh in the current directory (it should fix the file not found error)

777 izinlerini veren herkes okumak, yazmak ya da çalıştırmasına izin veriyor. Bu Mike Arthur adlandırılan bir güvenlik riski oluşturuyor. Bu potansiyel bir risk daha fazla olabilir, ama bu kolay başkalarının dosyalarınızı değiştirmek, silmek veya çalıştırmak için yapmak için iyi bir uygulama asla.

sudo kaynağı, çok az mantıklı kök kullanıcı olarak yeni bir kabuk yapma ve daha sonra kök kabuğu ile imha edilecek ortamı değiştirmek için çalışıyoruz.

Eğer sana "makedoc.sh" denilen bir şey yapıyor olmak istemem eminim ki geçerli kabuğun içinde değişen çevre almak istiyorsanız Ayrıca, kaynağı sadece kullanılır.

Muhtemelen sadece çalıştırmak istiyorum:

sudo makedoc.sh

Ayrıca, 777 şeyleri ayarlamak asla bu sorunun çözümü asla ve bir güvenlik riski bulunuyor.

Makedocs.sh 'varlığı için one nedeni kullanmak için uygun bir kabuk komut olmaktır when you always want to reuse the same runtime settings. Bu not the way, genel olarak phpDocumentor çalıştırmaktır.

Sadece bunun için dokümanlar yaratmak için kendi kod karşı phpDocumentor çalıştırmak için çalışıyorsanız, o zaman bunları olmak istiyorum tam olarak ne için tüm çalışma zamanı değişkenlerini ayarlamak için makedocs.sh düzenlemek gerekir. Özellikle,-t argüman docs yazılmalıdır target konumunu belirlemek için.

Eğer sistem çapında ARMUT tesisin "doc_dir" konuma yazılı doğrudan oluşturulan belgelere sahip çalıştığınız sürece, gerçekten, PHPDoc yürütmek için sudo kullanmaya gerek yoktur olmalıdır. Kök PEAR sahibi çünkü bu durumda, sudo gerekli olacaktır. Belki ihtiyaçları not bu konuma yazılacak docs gerekir?