善用大容量記憶體

有時候使用windows工作管理員,看到記憶體還剩2GB未使用時,總覺得不能浪費,所以就拿來當作瀏覽器快取空間,而我使用的軟體是SoftPerfect RAM Disk,軟體設定就不再敘述,而產生出來的磁碟機代號為Z。

ie-cache(IE10)

  1. 在Z槽產生一個子目錄,名稱為ie-cache。
  2. 打開IE Browser -> 工作列 -> 網際網路選項。
  3. 選擇移動資料夾
  4. 指定快取目錄路徑


chrome-cache

  • 方法一:開啟chrome瀏覽器捷徑圖示的內容,並在目標欄位值中加入--disk-cache-dir="Z:\chrome-cache",記得與命令之間要有空格。

  • 方法二:如果方法一無作用,可在系統管理員輸入以下的指令,輸入前先刪除chrome預設cache目錄。
  • c:\>mklink /D "C:\Users\santanalee\AppData\Local\Google\Chrome\User Data\Default\Cache" "Z"\" 註:可以檔案總管路徑列中使用%appdata%。

    firefox-cache

    1. 開啟Firefox瀏覽器,在網址列輸入「about:config」再按下〔Enter〕。

    2. 任意空白處按一下滑鼠右鍵,再點選【新增】→【字串】。

    3. 輸入「browser.cache.disk.parent_directory」
    4. 輸入「Z:\firefox-cache」

    使用vim搜尋並取代含雙引號的網址字串

    替換(substitute)的表示式:
    :[range]s[ubstitute]/{pattern}/{string}/[flags]

    :1,$s#href=""#href="http://mywebsite/"#

    1,$:表示從頭到尾(也可以用%取代1,$)
    分隔符號(separator)為#(Pound sign)



    文章來源
    The "separator" (usually '/' or '#')
    The "separator" is a character which seperates the command name from the pattern, seperates the pattern from the substitution string, and the substitution string from the options. You can chose any(?) character as a separator, but usually the slash (/) is used. When substitutions contain the slash as a literal character you should chose some other character that is not contained in the pattern or substitutions string. And if this is not possible then you have to "escape" it with a backslash (\): ":s/\/path\/filename/\/newpath\/newfilename/"

    自動備份在每個月的第一個工作日(不包含週六及週日)

    舊文章:
    定期自動備份伺服器資料(前篇)
    伺服器-rsync 異地備援(後篇)
    定期自動備份伺服器資料(前篇)

    為了備份網頁伺服器的資料(含資料庫),當時在crontab設定每個月的1號早上6點備份到NAS,但執行一段時間後發現了2個問題。
    1. NAS週末關機,如果1號剛好是週六或週日的早上6點,就會備份失敗。
    2. crontab原設定無法辨每個月的1號是不是週六或週日,如以下範例,2013年9月1日剛好就是星期日
    3. 0 6 1 * * /root/mysql-backup.sh

    解決方法就是改寫crontab,讓系統在每個月第一個工作日(不包含週六或週日)執行備份。


    方法一


    以下寫法的意思為第一週(1日~7日)的星期一執行備份看起來好像是對的,但day of month和day of week是OR邏輯概念,也就是1日~7日都會執行之外,每週一還會再執行1次,所以這個方法就沒必要再研究下去。

    0 6 1-7 * 1 /root/mysql-backup.sh
    # man 5 crontab
    Note:
    The day of a command’s execution can be specified by two fields —
    day of month, and day of week. If both fields are restricted (ie, aren’t *),
    the command will be run when either field matches the current time.

    For example, "30 4 1,15 * 5" would cause a command to be run at 4:30 am on the 1st and 15th of each month, plus every Friday.


    方法二:正解


    第一個工作日在排除週六與週日後,會隨機的落在週一至週五,而且不一定是每個月的1號(由前圖可以2013年8月的第一個工作日為8月1日週四,2013年8月的第一個工作日為9月2日週一,2013年10月的第一個工作日為10月1日週二)。

    如何取出每個月的第一個工作日,並設定在crontab內?以2013年9月為範例。
    1. 使用cal指令列出當月行事曆,並且使用awk指令抓出行事曆行數(NR)及各行總欄位數(NF),NR及NF會做為判斷式的值。
    2. # cal -m   //參數m:Display Monday as the first day of the week.
      # cal -m | awk '{print $0 "\t NR:" NR "\t NF:" NF}   //可得知目前行事曆有8行(NR),每行最多7個欄位數(NF)。


    3. 取出9月份行事曆中3天以上的週數:取3天的意義為,若有2天為週六及週日,那剩下的必為週五或週一。
    4. # cal -m | awk '{if(NF>=3)print $0}' | grep '[0-9]'

    5. 取出9月份第一個工作日為9月2日。
    6. # cal -m | awk '{if(NF>=3)print $1}' | grep '[0-9]'| head -n 1

    7. 修正crontab後,記得要重啟crond服務。
    8. # crontab -e
        0 6 1,2,3 * * [ `/bin/date +\%d` -eq `cal -m | awk '{if(NF>=3)print $1}' | grep '[0-9]' | head -n 1` ] && /bin/sh /root//mysql-backup.sh  //&&的意思為,若前面的條件成立則執行後面的指令
      # service crond stop
      # service crond start

    9. 從此以後備份的工作都在每個月的第一個工作日,修正了週末備份失敗的問題。

    問卷系統LimeSurvey-統計圖中文亂碼問題

    由LimeSurvey系統產生PDF或HTML格式的統計圖表時,中文會出現亂碼的狀態。
    WHY?那是因為缺少了中文字型檔所造成的現象。


    到Limesurvey存放字型的目錄下(/limesurvey/fonts),只看到fireflysung - Chinese.ttf.txt文字檔
    原來他的內容已經告訴你,要顯示中文字型請下載字型檔並放置到正確路徑下。
    For package size reasons the Firefly Sung font to show Chinese characters in the statistics graphs is not included with LimeSurvey.

    Please download it from http://sourceforge.jp/projects/sfnet_chinesepuppy/downloads/ChineseSupport/Fonts/fireflysung-1.3.0.tar.gz/ , unzip and put the fireflysung.tff file into the /fonts directory of your LimeSurvey installation.

    放置完成後,不管重新整理幾次,圖表中文依然是亂碼,這是為什麼?
    1. config-defaults.php的設定沒有改
    2. # vim /var/www/html/limesurvey/application/config/config-defaults.php
         $config['chartfontfile']='fireflysung.ttf';  //原設定值為auto

    3. 原圖表的暫存檔沒有刪除

    4. # rm -f /var/www/html/limesurvey/tmp/*.png

    5. 再重新產出就會出現漂亮的圖表囉!

    HFS-如何重置hits數

    每次都找到不重置選項,乾脆把擷取圖放上來。

    HFS切換到Expert Mode才會有Virtual File System的選項