Linux Shell Debug mode 開啟

Linux 常會需要寫 Shell script,但是遇到問題 Debug 還蠻麻煩的,要怎麼開啟 Debug mode (trace mode)

可以使用 -x 來協助 Debug

  • /bin/sh -x # xtrace
  • /bin/bash -x # Print commands and their arguments as they are executed.

Vim prank 模式:記事本模式

在 Stock Overflow 有一個問題是非常熱門的,就是如何離開 Vim:

原來 Vim 有類似記事本的模式,打開就是輸入模式,然後 ESC 是不會有作用的。

閱讀全文〈Vim prank 模式:記事本模式〉

五種睡眠模式 最短一天只需睡2小時

原來睡眠有分這麼多種模式,如果實際還要細分,應該可以分到10種以上

此篇列的睡眠模式,除了最基本的以外,都需要搭配快速進入深度睡眠(REM),所以也有把如何快速進入深度睡眠的方法記錄下來~

閱讀全文〈五種睡眠模式 最短一天只需睡2小時〉

PHP 強制使用「強型態」的模式

PHP 7 之後,function、Class 等等都可以指定型態、回傳的型態,但是雖然寫 int,傳進來還是可以傳 float,要怎麼強制型態不對就直接出錯誤呢?

function 指定型態完整寫法

<?php
function sum(int $a, int $b): int
{
    return $a + $b;
}

function avg(int $a, int $b): float
{
    return ($a + $b) / 2;
}

// Class
class C {}
class D extends C {}
function f(C $c)
{
    echo get_class($c)."\n";
}
f(new C); // C
f(new D); // D
?>

PHP 的型態:PHP: Type declarations

閱讀全文〈PHP 強制使用「強型態」的模式〉