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

CVE-2014-6271 - Bash 遠端執行的安全漏洞

不得不說, 嚴重的安全事件第一次發生, 機器多又沒整理時, 會開始做全部機器的列表, 不斷的發生, 可以逼著 練習使用遠端同時執行/檢查 命令 + 練就快速更新套件的能力.

雖然目前看到的 Bash 問題應該都還沒影響(mod_php 沒事), 還是來做點 新聞整理、測試與解法.

這次 Bash 影響的相關資料可見此篇: Bash specially-crafted environment variables code injection attack | Red Hat Security

2014/10/01 更新: 已經有人將連續的 CVE 整理成 Wiki 了 - Shellshock (software bug)

閱讀全文〈CVE-2014-6271 - Bash 遠端執行的安全漏洞〉

Bash 執行 for 1~100 的寫法

來點非常基本的 Bash, 但是也有點複雜, Shell script 要寫 for 1~100 的方式太多種了, 要帶入變數、相隔差1、2 寫法都有些微不同, 但是這些微不同造就能不能正常執行~

在此將這些寫法做個記錄~ 方便以後查詢~

閱讀全文〈Bash 執行 for 1~100 的寫法〉

Bash Shell Pipeline 將資料一行一行分開處理 (read + while)

Linux Shell 處理資料, 大多都用 cat、sed、grep、awk ... 等等, 但這些都是對整堆資料處理, 若需要將這些資料額外一行一行拉出來另外處理的時候, 於 Shell script 要怎麼做?

閱讀全文〈Bash Shell Pipeline 將資料一行一行分開處理 (read + while)〉

好站 - 蒐集常用的 Script Alias - alias.sh

Linux / Mac Bash Shell 底下, 搭配 "|" 去操作的組合, 可以產出無限的應用, 這個網站把一些常用的 Alias Script 都整理起來, 裡面看到的, 都可以直接加到自己的 .bashrc 裡面去~

這篇標題雖然是寫 Rails Devops, 但是內容都是很常用的基本命令, 詳見: Rails Devops Cheatsheet