Linux 建立使用 Swap file

Linux 記憶體不夠用,出現 allocate memory failed 等等的訊息,可以使用 Swap 來暫時頂一下,不過,連原本的 Swap 都不夠用的時候,就暫時建立個 Swap file 來頂一下吧~

閱讀全文〈Linux 建立使用 Swap file〉

Linux Bash 如何查看檔案修改到現在經過幾秒

於 Linux Bash Shell 想要看此檔案上次修改到目前經過幾秒,可以用下述指令:

  • $ expr $(date +%s) - $(date +%s -r /tmp/filename.txt) # 檔案修改到現在過了10秒
    10
  • $ expr `date +%s` - `stat -c %Y /tmp/filename.txt` # 檔案修改到現在過了12秒
    12

參考自:linux - How to get time since file was last modified in seconds with bash?

註:

  • expr:加減乘除
  • date +%s:現在時間的 timestamp
  • date +%s -r filename:檔案修改時間的 timestamp
  • stat -c %Y filename:檔案修改時間的 timestamp

Linux bash shell 將 檔案清空

Linux (於 Bash shell) 要將一個檔案砍掉, 但是因為權限問題, 不能砍, 只能夠清為空, 要怎麼做?

  • 註: echo '' > xxx # 會是 1 byte 的檔案
  • 感謝 Clyde 指點: 那個1 byte是換行字元 echo -n '' > xxx 就可以了~

閱讀全文〈Linux bash shell 將 檔案清空〉

PHP 讀取檔案最後修改時間(防Cache)

Apache、Nginx 會去設定檔案過期時間, 然後使用者的瀏覽器就會 Cache 起來, 下次訪問就不用再要一次檔案, 但是如果檔案更新了, 瀏覽器知道檔案需要來重新抓取呢? (如何防止讀取到 Cache 的檔案?)

一個最簡單的方式, 就是更改 URL, 如下述:

  • http://example.com/demo.jpg → http://example.com/demo.jpg?v=1
  • 註1: Apache、Nginx、CDN 都可以用此方法來解決.
  • 註2: 某些 CDN 廠商不吃 "?" 後面的參數, 就無法使用此種解法.

閱讀全文〈PHP 讀取檔案最後修改時間(防Cache)〉