Linux 於 Bash shell 的檔案內容,通常經過去掉重複後,通常都是 sort 過的內容,想要將這個檔案的內容在讓他「隨機排序」,要怎麼做呢?
標籤: bash
於 Bash shell echo 輸入換行字元的寫法
要於 Bash shell 的 CLI 界面,echo 某些字元導入檔案中,要怎麼寫?
Linux tail 遇到 file rotate 要如何持續追蹤讀取
Linux 很常使用 tail -f /var/log/syslog 等等,要持續看 Log 進來的情況。
不過如果持續追蹤,很常遇到 file rotate 的狀況,遇到的時候,tail -f 就不會繼續更新了... 要怎麼解決這個問題呢?
Apache2 砍掉 Gracefully 狀態的程式
Apache2 在 apache2ctl status 看到 G 的狀態,這些 process 都已經無法回應了,可以寫隻 script 來砍掉。
註:砍掉只是治標,建議還是看看這些 pid,研究看看卡在哪裡,治本才是重點。
Facebook PathPicker 於 CLI 的界面操作工具
Bash CLI 界面操作上,沒有 GUI 的操作指標可以用,都需要輸入檔案名稱等等。
在 ls / git status 等等,想要有個指標可以選取檔案名稱,然後直接用 Vim 打開編輯,可以使用 Facebook Open Source 的專案來達成。
Bash script 抓取程式完整路徑 與 目錄路徑
Linux 的 Bash script 想要抓到此隻程式的完整路徑、從根目錄到此程式的路徑,要怎麼做?
Linux 使用 comm 找出兩個檔案不同的內容
想要比對兩個檔案哪些資料是不同的(非 diff,相同資料就不需要再出現),Linux Bash shell 有方便的工具可以快速達成。
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 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)