laravel:從linux命令列執行command

刘宏缔的架构森林發表於2024-08-06

一,建立command

1,執行命令

liuhongdi@lhdpc:/data/api$ php artisan make:command IndexAllCommand

2,檢視建立的檔案:

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;

class IndexAllCommand extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'app:index-all-command';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Command description';

    /**
     * Execute the console command.
     */
    public function handle()
    {
        echo "開始執行命令:";
    }

}

注意: signature是從命令列執行的命令名,而不是檔名,
從命令列執行時,只能使用在此處指定的命令名

laravel:從linux命令列執行command

二,從命令列執行

root@lhdpc:/data/api# runuser -u www-data php artisan app:index-all-command
開始執行命令:

說明:使用runuser是因為要和php在nginx/php-fpm中的執行使用者保持一致,
否則會出現許可權問題

相關文章