2017年7月24日 星期一

使用grep來找出多個檔案是否含有某個字串

有時候會想在很多個檔案中找出是否含有某個字串,
這時可以使用grep
grep -nr "abc" /etc/
-n 會印出檔案的行數,
-r 會遞迴的找子資料夾。
"abc" 找abc字串
/etc/ 想找的根目錄

2017年7月18日 星期二

git使用rebase來合併多餘的commit

假設有五個commit,分別為A,B,C,D,E。
其中建立的順序是A->B->C->D->E,(也就是說A是最先commit,E最後commit)。
而它們的SHA-1分別為 A1,B1,C1,D1,E1。
合併commit時,要由新的合併到舊的,例如說把E合併到A,則會最後得到 A->X
指令為:
git rebase -i E1

另外可以使用git log來看commit紀錄
git log --pretty=oneline

A至E的Commit

使用rebase
git rebase -i 5a64bb08b58e7be39a35a1c35258163f02d27bf3

結果

更改C至E的pick為squash

儲存後會跳出要你修改commit message

修改commit message

結果

2017年7月9日 星期日

重設PostgreSQL的密碼(Ubuntu OS)

1. 修改pg_hba.conf
    a) 可以使用locate找出檔案位置
locate pg_hba.conf
    b) 修改local all all這一行,改為trust
local  all   all   trust
2. 重啟PostgreSQL server
sudo /etc/init.d/postgresql restart
3. 進入postgres User
sudo su - postgres
4. 進入superuser postgres
psql -U postgres
5. 使用SQL的ALTER語句修改postgres的密碼
ALTER USER postgres PASSWORD '重設為你要的密碼';
6. 將pg_hba.conf修改回來

2017年6月19日 星期一

在Ubuntu中建立node js環境

環境與版本
  • Ubuntu (17.04) (官網)
  • Node.js (v6.11.0) (官網)
  • npm (3.10.10)
  • Visual Studio Code (1.13.1) (官網)

安裝Node.js與Visual Studio Code
  1.  在Terminal中輸入以下指令,Node.js與npm就安裝好了
    1. curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
    2. sudo apt-get install -y nodejs
  2. 安裝Visual Studio Code,去官網下載.deb檔案,使用以下指令安裝
    1. sudo dpkg -i code_1.13.1-1497464373_amd64.deb
測試是否安裝成功
  1. 建立一個hello資料夾。
  2. 在其中開啟Visual Studio Code。
  3. 使用Visual Studio Code建立 app.js 。
  4. 輸入以下程式碼
    1. var msg = 'hello';
    2. console.log(msg);
  5. 在Visual Studio Code中設定中斷點並選擇偵錯。
  6. 恭喜,環境建立完成。





參考網站:

2017年6月15日 星期四

Java String 分割

Java中使用String的split(String regex)就可以將字串作分割的處理
  1. public class StringSplit{
  2. public static void main(String[] args){
  3. String testStr = "A,B,C,D,E,F,G,H";
  4. for(String str : testStr.split(",")){
  5. System.out.println(str);
  6. }
  7. }
  8. }
結果是
  1. A
  2. B
  3. C
  4. D
  5. E
  6. F
  7. G
  8. H


在Blogger中插入程式碼

透過JavaScript code prettifier就可以很簡單的將程式碼上色,讓人更清楚的了解。


效果如下:
  1. public class StringSplit{
  2. int aNumber;
  3. List<Integer> numbers;
  4. }

以下是如何設定,讓Blogger可以將程式碼上色的步驟:

  1. 首先選擇 版面配置
  2. 選擇 新增小工具
  3. 選擇 HTML/JavaScript
  4. 在內容中加入以下的程式碼:
    1. <style>
    2. li.L0, li.L1, li.L2, li.L3,
    3. li.L5, li.L6, li.L7, li.L8 {
    4. list-style-type: decimal !important;
    5. }
    6. </style>
    7.  
    8. <script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?lang=css&amp;skin=sunburst"></script>


    如圖:

  5. 最後,在想要插入程式碼的地方用<pre class="prettyprint linenums"></pre>包起來,如下

    <pre class="prettyprint linenums">
    // 這是程式碼的部分
    </pre>

其中<pre class="prettyprint linenums">的linenums表示要顯示行號。
另外,
  1. <style>
  2. li.L0, li.L1, li.L2, li.L3,
  3. li.L5, li.L6, li.L7, li.L8 {
  4. list-style-type: decimal !important;
  5. }
  6. </style>
則是為了顯示所有行號,而不是每五行顯示一次。

再顯示程式碼時,注意角括號等特殊符號,需要將它們編碼,
可以搭配HTML encoder使用

HTML entities encoder


result




這是一個HTML encoder,
可以將像是 <> 轉換為&#60;&#62;
這樣在Blogger中顯示程式碼時,就可以顯示這些符號。