如何使用 Crontab for Linux 定期執行 PHP 指令碼

發布 科技 2024-02-09
4個回答
  1. 匿名使用者2024-02-05

    讓我們從PHP相對複雜的伺服器實現開始。 如果您的伺服器上安裝了 PHP,則無論您是否安裝了 Nginx 或 Apache 等伺服器環境軟體,都可以執行 PHP 檔案。 在 Linux 中,使用命令列和 crontab 來排程任務是乙個很好的選擇,也是最有效的選擇。

    首先,進入命令列模式。 Linux 作為伺服器一般預設進入命令列模式,當然我們的管理伺服器一般也是通過 putty 等工具遠端連線到伺服器的,為了方便起見,我們用 root 使用者登入。 在命令列中,鍵入:

    crontab -e

    之後,會開啟乙個檔案,它是乙個非狀態,它是VI的介面,通過點選鍵盤上的i,進入模式,就可以擁有內容了。 這個檔案中的每一行都是乙個計畫任務,當我們建立乙個新行時,我們建立了乙個新的計畫任務(當然,這意味著這一行是按照一定的格式編寫的)。 讓我們舉個例子,新增一行,內容如下:

    這是什麼意思? 其實上面的線由兩部分組成,第一部分是時間,第二部分是操作內容。 例如,上面的那個,00*

    當當前時間的分鐘數為00時,執行定時任務。 時間部分由 5 個時間引數組成,分別是:

    刻度日、月、周。

    第 1 列表示每分鐘 1 59 用 或 表示 *1,n 表示每 n 分鐘,例如 * 8 表示每 8 分鐘,下面也是類比。

    第 2 列表示第 1 23 小時(0 表示 0 點鐘)。

    第 3 列表示日期 1 31

    第 4 列表示月份 1 12

    第 5 列標識第 0 天、第 6 天(週日為 0)。

    句子的其餘部分是操作的細節。

    這意味著該 URL 是通過 Lynx 訪問的。 我們主要使用 Lynx、Curl 和 Wget 來實現對 URL 的遠端訪問,如果想要提高效率,最好使用 PHP 直接執行本地 PHP 檔案,例如:

    這條語句可以每 2 小時 0 分鐘執行一次,通過 Linux 內部的 PHP 環境,注意,這不是通過 URL 訪問的,而是通過伺服器環境執行的,而是直接執行的,因為繞過了伺服器環境,所以效率當然要高很多。

    好的,我們新增了一些必需的計畫任務。 點選鍵盤上的電調鍵,輸入“:wq”,這樣設定的定時任務就會被儲存下來,也可以在螢幕上看到提示,建立乙個新的定時任務。 接下來就是把你的寫好。

    這裡就不多介紹crontab的用法了,如果想更靈活地使用這個定時任務功能,應該自己深入學習一下crontab。

  2. 匿名使用者2024-02-04

    crontab 的兩種方法如下所述。

    1. 使用 php 在 crontab 中執行指令碼。

    就像在 crontab 中呼叫普通的 shell 指令碼(特定的 crontab 用法)一樣,使用 php 程式來呼叫 php 指令碼。

    每小時按如下方式執行:

    **如下:crontab -e

    usr local bin php 是 php 程式的路徑。

    2. 使用 url 在 crontab 中執行指令碼。

    如果你的PHP指令碼可以由URL觸發,你可以使用Lynx、curl或wget來配置你的crontab。

    以下示例使用 Lynx 文字瀏覽器訪問 URL 以每小時執行一次 PHP 指令碼。 預設情況下,Lynx 文字瀏覽器使用對話方法來開啟 URL。 但是,如下所示,我們在 lynx 命令列中使用 -dump 選項將 URL 的輸出轉換為標準輸出。

    ** 如下:以下示例是使用 curl 訪問 URL 每 5 分鐘執行一次 php 指令碼。 預設情況下,curl 以標準輸出顯示輸出。 使用“curl -o”選項,您還可以將指令碼的輸出轉儲到臨時檔案。

    ** 如下:以下示例是使用 wget 訪問 URL 每 10 分鐘執行一次 php 指令碼。 -q 選項指示安靜模式。 -o 表示輸出傳送到臨時檔案。

    **下面:

  3. 匿名使用者2024-02-03

    1:使用 crontab -e 排程命令,使用 curl 執行 php 頁面指令碼。

    例如,第乙個 01 表示它在每小時的第一分鐘內執行一次。 如果有 5 個 *,則表示每分鐘執行一次。

  4. 匿名使用者2024-02-02

    在Linux中,crontab是乙個實現定時執行的命令,我們可以使用這個指令定時執行乙個PHP檔案,從而實現Linux指令碼與PHP的自動執行。

    如何使用 php 作為 Linux 自動執行指令碼?

    安裝 PHP 時,會生成乙個檔名為 PHP 的可執行檔案將其複製到 usr 本地 bin。 在終端模式下執行 PHP 程式:

    php -q

    PHP 最初是用於 Web 應用程式,因此它會傳送 HTML 標頭,但這裡我們將使用 PHP 作為 shell 指令碼"-q"這意味著不要傳送標頭。 您可以嘗試在沒有 -q 的情況下檢視結果。 此時,您可以在終端模式下執行 PHP。

    Linux 命令:cron daemon

    這是一項基於系統的服務,用於執行日常任務,例如每天或每月檢查一次磁碟。 Cron Daemon 每分鐘檢查一次計畫的工作表,看看是否有任何要執行的指令,並且所有輸出都通過電子郵件傳送給使用者。

    設定 crontab

    命令:crontab -e

    該命令呼叫 viper 來執行清單。 例如。

    0 0 1,15 * fsck /home

    1 * /home/myhome/printhello

    每行代表乙個計畫作業,前面是計畫時間,共有 5 個字段,按以下順序從左到右間隔:

    從 00 到 99 的分鐘

    從 0 點到 24 點

    從 01 到 31 的一天

    月份 從 01 到 12

    第 01 天至第 7 天,代表周一至週日。

    數"每"如果每天執行,請在第三列中填寫*號。

    所以上面例子中的兩個工作是:

    在每個月的 1 日和 15 日檢查主磁碟。

    每小時的第一分鐘執行 home myhome printhello 檔案。

    檢視 crontab: crontab -l

    刪除 crontab: crontab -r

    我們知道如何使用 php 和 crontab 命令執行 Linux 自動執行指令碼。

    我還需要注意什麼?

    如果使用 PHP 資料庫,例如 Oracle,則需要在執行指令碼中設定匯出 Oracle 的環境。 因為cron下的指令碼執行是使用者不登入就執行的,所以系統中設定的環境變數值少了很多,連線資料庫時會出現問題。

相關回答
3個回答2024-02-09

如果基礎好,可以直接看書,跟著操作走。 >>>More

4個回答2024-02-09

tar jxvf,然後進入剛剛解壓的目錄,執行以下命令。 >>>More

9個回答2024-02-09

檢測 Linux 系統。

是否開啟FTP伺服器說明如下 >>>More

9個回答2024-02-09

這個問題在linux中是沒有操作的,你刪除linux,如何在沒有系統的情況下使用你的機器? >>>More

17個回答2024-02-09

房東其實想做外貿,肯定是有風險的,確實有房東說不付貨的那種情況,但畢竟是少數,不能因為風險小概率,就否定了主流的運作模式,再說了,PayPal在交易上沒有偏頗, 如果您傳送貨物,客戶不付款,您可以與 PayPal 提出異議,出示 PayPal 證明您確實發貨了,只要 PayPal 確定情況屬實,就會強迫客戶付款另一方面,因為 PayPal 在國外的受歡迎程度真的很高,所以如果您拒絕 PayPal 的付款方式, 相當於拒絕了大量的潛在客戶,而且有客戶有生意,所以房東三思而後行,如果房東想諮詢任何關於PayPal的問題,可以加我msn:luke