Python 於 Shell 寫入檔名,檔名遇到空白或某些特殊字元,要怎麼處理?
標籤: shell
Linux 將 Big5 網站轉 UTF-8 的步驟
10幾年前寫的網站,還是 Big5 的版本,想要跟 UTF-8 的網站並行的話,在 Apache 都需要另外做下述分別設定比較能確保這些網站不會有意外:
Big5 網站加入下述:
- AddDefaultCharset Big5
UTF-8 網站加入下述:
- AddDefaultCharset UTF-8
想開了,花一小時來做個轉換,都轉成 UTF-8 就省事多了~
註:此篇修改內容包含 HTML、JavaScript、CSS、PHP、MySQL data 等。
Windows 10 可以跑 Ubuntu Linux Bash shell
Windows 10 宣佈將 Ubuntu Linux Userspace 包進來,可以直接使用 Bash shell,所以這些 apt, ssh, rsync, find, grep, awk, sed, sort, xargs, md5sum, gpg, curl, wget, apache, mysql, python, perl, ruby, php, gcc, tar, vim, emacs, diff, patch 都可以使用,而且 apt-get 安裝的 redis 都可以正常跑。
- 註:上述是純粹文章寫得,我目前沒有 Windows 10 可以做測試
Bash alias 如何傳入參數($1)
Linux 的 Bash shell 會將常用的命令(或記不起來的命令)設定 alias,但是想要帶入參數,要怎麼做?
註:Bash shell 純 alias 無法帶入參數,在此使用 Bash shell 的 function 來輔助達成。
Linux 對整個目錄的檔案內容做 md5sum
想要定時檢查 整個資料夾(目錄) 的檔案內容是否有被新增、修改,可以使用 md5sum 來達成,但是 md5sum 只能對單一檔案,要對整個資料夾要怎麼做呢?
Linux Shell 找出修改過的檔案做 scp 指令(特殊檔名處理)
想要定時同步有新增、修改的檔案,可以使用 rsync 達成。
但是若檔案數太多,用 rsync 光 diff 就會花掉很多時間,這時候可以考慮使用 find 先找出有修改過的檔案,再來做 scp 即可。
註:此篇環境為 Debian / Ubuntu Linux + Bash Shell
Linux Bash 監控檔案修改 執行即時合併
JavaScript 常常會需要修改後,執行壓縮等動作,常見的會是用 grunt 做類似下述命令:
- grunt.registerTask('default', ['jshint', 'qunit', 'concat', 'uglify']);
- grunt.registerTask('dist', ['concat:dist', 'uglify:dist']);
- 取自:Creating tasks - Grunt: The JavaScript Task Runner
不過要做檔案合併、檢查、壓縮.. 等等,應該不用這麼費工,Shell 就可以做到,於是簡單的寫了一套。
註:整個程式只有兩個檔案,全部內容只有5行,相信修改應該沒有難度。(程式語言:Linux 的 Bash Shell)
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
快速查看 系統、硬碟、RAM 使用情況等資訊的 Script
想要快速查看 Linux 系統平均負載、硬碟、記憶體的使用情況等等資訊,此網站作者有寫一隻 Bash shell script 可以快速整理呈現。
安裝、使用方式
- wget http://tecmint.com/wp-content/scripts/tecmint_monitor.sh
- chmod +x ./tecmint_monitor.sh
- ./tecmint_monitor.sh # 即可呈現
Bash Shell 顯示 顏色的語法
Linux 要於 Bash Shell 顯示出顏色,要如何寫?