crontab 開機自動執行指令

一般上設定開機自動執行指令, 可以編輯 /etc/rc.local 檔案, 而除了編輯 /etc/rc.local 外, 也可以用 crontab 完成。crontab 是十分好用的排程自動執行工具, 它指定執行時間間隔十分靈活, 其中一個做法是用 @reboot 參數, 設定成每次開機自動執行。 首先開啟 crontab: # crontab -e加入以下一行: 以上一行設定開機後等待 1 分鐘 (60 秒), 自動執行 /root/my-script.sh, 將上面的 …

Ubuntu 18.04 關閉及開啟防火牆

Ubuntu 內建使用 UFW (Uncomplicated Firewall) 作為防火牆管理工具, 一般情況下都會開啟防火牆, 但有些特殊情況, 例如測試環境需要關閉防火牆作測試, 或者對網路設定進行除錯等。以下是在 Ubuntu 18.04 關閉防火牆的方法。首先檢查目前防火牆是否已經開啟, 執行以下指令: $ sudo ufw status防火牆預設是關閉, 會輸出:Status: inactive如果防火牆已經開啟了, 會輸出 active:Status: active如果需要關閉防火牆, 執行以下指令: Disabling the Firewall $ sudo ufw …

JavaScript 取得 Unix timestamp

UNIX Timestamp 在計算時間或日期上很有用, 在 JavaScript 可以用以下方法取得現在的 UNIX Timestamp.Date.now() 可以取得現在 UTC timestamp 的 milliseconds (毫秒, 即千分之一秒)。只要將這個數值除 1000, 即可得到 UNIX Timestamp 的格式:

MySQL / MariaDB 重新命名資料庫

以前 MySQL 的 “RENAME DATABASE” 指令, 已經在 5.1.23 後的版本刪除, 原因是重新命名資料庫時存在資料遺失的風險。以下示範用 “RENAME TABLE” 指令及 mysqldump 指令, 替資料庫重新命名的方法:RENAME TABLE這個方法適合資料庫比較大的情況, 但缺點是需要對每個資料表逐一執行。先建立一個空白的資料庫, 名稱用要變更的資料庫名稱, 以下假設舊資料庫是 oldname; 新資料庫是 newname: 然後把資料表逐一用 RENAME 指令從 oldname 搬到 newname: …

Linux 限制指令執行時間

timeout 指令可以在 Linux 下限制一個指令的執行時間, 當超出指定的時間後, 便自動終止執行.例如想限制一個指令的執行時間在 10 秒, 當超過 10 秒便自動將它 kill 掉: $ timeout 10 tail -f /var/log/httpd/access.logtimeout 的預設時間單位是秒, 上面的 10 沒有指定單位, 預設代表 10 秒, 以下時間單位的寫法:10s -> 10 秒 …

rename 指令 – 批次大量修改檔案名稱

在 Linux 要修改檔案名稱, 可以用 mv 指令, 但如果要重新命名的檔案很多, 用 mv 逐一修改會很痛苦, 也增加出錯的機會。而 rename 指令則可以批次大量修改檔案名稱。例如我想將所有 .jpeg 結尾的圖片, 改變副檔名成 .jpg, 可以用以下指令: $ rename ‘s/.jpeg/.jpg/’ *以上指令會將當前目錄下, 所有 .jpeg 結尾的檔案, 改名成 .jpg而 rename 也支援 regular …

Python 字串搜尋並取代

寫程式很多時都需要做字串搜尋並取代, 在 Python 內很簡單, 只要用內建的 replace 方法便可實現。語法以下是 replace() 的語法: 參數:old − 原來字串, 找出並用新字串取代.new − 替換字串, 替換在原來字串內.max − 如果有定義 max 參數, 只會取代最初出現的 “max” 次數的字串.例子: 輸出結果:testing, testing. testing, test.

Shell Script 檢查網路連線

Linux 下要檢查網路連線的工具有很多, 以下是用 Shell Script 檢查網路連線的方法。最簡單的方法是用 ping 指令, 嘗試 ping google.com, 這樣除了測試網路連線外, 也一同測試 DNS: 執行上面的 Shell Script 後, 當網路連線及 DNS 正常, 會輸出 “Network is up”; 不正常敗會輸出 “Network is down”.如果防火牆將 …