انجمن‌های فارسی اوبونتو

تازه کار => انجمن تازه‌کاران => نویسنده: Dark در 28 شهریور 1393، 12:50 ب‌ظ

عنوان: کمک در اسکریپت
ارسال شده توسط: Dark در 28 شهریور 1393، 12:50 ب‌ظ
سلام عزیزان و خسته نباشید
میخواستم بدونم دستوری برای اجرا در لینوکس چیه؟!
مثلا من اسکریپتی به زبان بش می خوام بنویسم که یک اسکریپت دیگه ایی به زبان php رو اجرا کنه.
یعنی اون اسکریپت بش فقط بیاد اون اسکریپت php رو اجرا کنه.
واضح تر بگم :
فرض کنید ما اسکریپتی به زبان بش با نام test.sh داریم و یک اسکریپت به زبان پی اچ پی با نام test.php داریم.
حالا من میخوام دستوری رو توی این اسکریپت بش بدم که وقتی اجرا کردم دستورات test.php رو اجرا کنه (ادامه رو بره رو اون اسکریپت)
ممنون میشم دستورش رو بگید.
موفق باشید
عنوان: پاسخ : کمک در اسکریپت
ارسال شده توسط: احسان☺ در 28 شهریور 1393، 01:17 ب‌ظ
سلام :)
مفسر php هم یه برنامه هستش مثل بقیه ی برنامه ها.پس کافیه توی اسکریپت، مفسر رو با ارسال آدرس فایل بهش به عنوان آرگومان فراخوانی کنید.یعنی اگه test.php کنار test.sh هستش،فقط مینویسید:
php test.php
عنوان: پاسخ : کمک در اسکریپت
ارسال شده توسط: Dark در 28 شهریور 1393، 03:09 ب‌ظ
یعنی تو اسکریپت بشم به این صورت باید بنویسم :

#! /bin/bash
php test.php

اینجوری بنویسم اول میاد بش رو اجرا میکنه بعد میره سراغ php ?!
عنوان: پاسخ : کمک در اسکریپت
ارسال شده توسط: احسان☺ در 28 شهریور 1393، 03:24 ب‌ظ
بله
مثلا این رو امتحان کنید.
پرونده ی test.sh:
#! /bin/bash
echo "Bash,Part one!"
php test.php
echo "Bash,Part two!"

پرونده ی test.php:
<?php echo "PHP part :)\n"?>
حالا با خط فرمان به مسیری که پرونده ها هستند برید و با دستور زیر به test.sh دسترسی اجرایی بدید:
chmod +x test.sh
و برای اجراش بزنید:
./test.sh
نتیجه واضحه.
موفق باشید.