سؤال

كيف يمكنك تشغيل البرنامج النصي التالي في توليد المستندات PHPdoc?

#1 سودو كود

sudo source makedoc.sh

أحصل على

no command source

#2 دون سودو

المشكلة هي أن sudo لا يكون الأمر source.حاولت إصلاح المشكلة دون جدوى عن طريق تغيير persmissions من ~/phpdoc/phpdoc إلى 777 ثم تشغيل

source makedoc.sh

أحصل على

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

#3 دون سودو

تشغيل

 phpdoc -c makedoc.sh

أحصل على

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
هل كانت مفيدة؟

المحلول

هل ملف makedoc.sh لديك كوخ الخط (على سبيل المثال !#/usr/bin/bash) لذلك يمكن أن تكون مصنوعة للتنفيذ ؟

chmod +x makedoc.sh

ثم

sudo ./makedoc.sh

ونرى ما سيحدث.

و ./ يعني تشغيل makedoc.sh في الدليل الحالي (يجب إصلاح ملف لم يتم العثور على خطأ)

إعطاء أذونات 777 يسمح لأي شخص قراءة ، كتابة أو تنفيذ الملفات.هذا هو الخطر الأمني مايك آرثر المشار إليها.قد يكون أكثر من المخاطر المحتملة, لكنه لم الممارسات الجيدة تجعل من السهل على الآخرين أو تعديل أو حذف أو تنفيذ الملفات الخاصة بك.

نصائح أخرى

سودو المصدر المنطقي قليلا جدا, كنت صنع قذيفة جديدة باسم المستخدم الجذر ثم محاولة تغيير البيئة التي سوف ثم يتم تدمير جذور قذيفة.

أيضا ، المصدر يستخدم فقط إذا كنت ترغب في الحصول على تغيير البيئة الخاصة بك في قذيفة الحالية التي أنا متأكد من أنك لن ترغب في أن تفعل مع ما يسمى "makedoc.sh".

ربما كنت ترغب فقط في تشغيل:

sudo makedoc.sh

كما لم تحدد الأمور إلى 777 ، فإنه لم حل المشكلة و المخاطر الأمنية.

على واحد السبب makedocs.sh's الوجود هو أن تكون مريحة شل سكريبت لتتمكن من استخدامها عندما كنت دائما ترغب في إعادة استخدام نفس إعدادات وقت التشغيل.فمن لا الطريقة لتشغيل phpDocumentor بشكل عام.

إذا كنت تحاول ببساطة تشغيل phpDocumentor ضد التعليمات البرمجية الخاصة بك من أجل إنشاء مستندات ، ثم تحتاج إلى تحرير makedocs.sh كل الحجج وقت بالضبط ما تريد لها أن تكون.على وجه الخصوص ، - t الحجة لتحديد الهدف موقع المستندات يجب أن تكون مكتوبة.

حقا, يجب أن يكون هناك حاجة إلى استخدام سودو لتنفيذ phpdoc ، إلا إذا كنت تحاول قد ولدت وثائق مكتوبة مباشرة في النظام الخاص بك على نطاق الكمثرى التثبيت "doc_dir" الموقع.في هذه الحالة, لأن الجذر يملك الكمثرى ، سودو سيكون ضروريا.ربما تحتاج لذلك لا تتطلب المستندات الخاصة بك أن تكون مكتوبة في هذا الموقع ؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top