Category: Operating system

  • Sync Files and Folders Outside Dropbox Folder

    我是最近才開始用 Dropbox,雖然早就聽聞 Dropbox 的大名,但以前沒需求。實際有了需求才申請了 Dropbox,確實地感受到它強大的同步處理機制,如同它所宣稱的 Simplify your life,解決了我在三台 Windows,一台 MacOS 和一支 Android 手機間同步檔案的問題。 不過 Dropbox 的同步似乎限於它的資料夾,不能隨便選一個資料夾就設定同步。但是有一些檔案我並不想塞在 Dropbox 資料夾也希望能同步。這時候作業系統提供的檔案連結功能就派上用場了。微軟在 Windows Vista/7 的 NTFS 中提供了 Junction, Symbolic Link,作用等同於 Linux / Mac 下的 Symbolic Link,讓系統模擬出一組指向實際檔案位置的連結,藉此騙過應用程式。這個概念和 WinXP 時代以來就常用的捷徑 (shortcut) 不同,捷徑是無法騙過應用程式的,因為它實際上只是一個 .lnk 檔案。 使用 Symbolic Link 這種連結必須以指令的方式達成。以 Windows 7 為例,在命令提示列下輸入 mklink /D “C:\Users\Steve\Documents\Dropbox\DesiredFolder” “C:\Path\To\DesiredFolder” 在 MacOS 或 Linux 下使用 ln…

  • Disable Mac OS X mouse acceleration via the command line

    2011 年夏購入了一台 Apple Macbook Pro,從此踏入 MacOS X 的世界,當初購入的目的是想學 Ruby, RoR 和 Object-C,不過工作上幾乎還是用 Windows 7。我覺得我跟 Mac 一直沒有很熟。換了工作後發現新同事們使用 Mac 做網站開發的比例非常高,老闆也不介意我帶自己的 Mac 上班,所以就開始逼著自己長時間用 Mac 來熟悉它。 MacOS X 預設是有滑鼠加速的,這點我很不習慣,滑鼠加速會讓滑鼠在長距離移動時,游標移動的速度以等比的方式增加。個人覺得這是一種介面上的不一致,總讓我摸不透滑鼠要移多快才能到預期的點。下圖左是關閉滑鼠加速度,不管使用者的手移動多快,滑鼠游標的加速度都不會改變,所以游標的速度跟手移動的速度一致。下圖右是開啟滑鼠加速 3.6 倍,使用者的手移動越快,游標會有額外的加速度,這種不一致的速度讓我老是找不到飛到螢幕外的游標。               經過一番 Google 後發現可以用指令的方式關閉滑鼠加速。加 terminal 輸入以下指令: defaults write .GlobalPreferences com.apple.mouse.scaling -1 修改完畢後重新開機,滑鼠游標就不會再輕功似亂飄了。

  • Windows7 開機自動 PPPoE 撥接連線

    從 Windows XP 到 Windows 7,中間隔了這麼多年,Win7 反而少了方便設定 PPPoE 自動連線的設定,微軟的開發理念有時候真的蠻難理解的。這幾天因為重灌家裡的電腦,所以又遇到這個問題。這次 Google 搜到一篇舊文,發現這個設定方便蠻好用的,而且一試就成功,所以做個筆記先。 首先建立好 ADSL 或光世代的 PPPoE 連線後,在設定裡關掉提示畫面,讓撥接的動作在背景完成就好。 請記得剛剛設定的連線名稱。接著進入 RegEdit …. 如果您不曉得什麼是 RegEdit,那請找別的方法吧,您可能不適合這種修改方式。 在 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] 新增字串,名稱自取,內容輸入 C:\Windows\System32\rasphone.exe -d "你的連線名稱(不是撥接帳號)",像我的網路連線是叫 Seednet 12M VDSL,就是輸入 C:\Windows\System32\rasphone.exe -d "Seednet 50M VDSL" 以後開機就會自動撥接囉!

  • Windows 如何找到佔用 port 的程式?

    最近要在桌機上安裝 nginx for windows 時,發現一直啟動失敗,但是 config 測試是 OK 的。想說可能會是 port 80 被佔用了。在 Windows 上要查出 port 被哪支程式佔用並不難,只消兩行指令就可以了。 先進入命令提示列 (Command Prompt)。輸入 C:\>netstat -ano | findstr 0.0:80 得到如下的字串 TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       1860 其中 1860 就是佔用 port 的程式 PID,再輸入 C:\>tasklist | findstr 1860 得到如下的資訊 httpd.exe                  1860 Services                0      4,148 K 表示佔用的是 httpd.exe,也就是 Apache Server 還開著。關掉 httpd.exe 再啟動 nginx…

  • 解決 Windows 7 捷徑清單與釘選項目消失的問題

    Windows 7 有一個 “捷徑清單” (Jump List) 的功能,可以快速地從軟體的右鍵選單選取最近使用過或釘選的檔案。我覺得這是很方便的設計,而且清單上只會出現跟這個軟體有關的選項,等於是有了第一層的檔案過濾功能,以 [記事本] 來說,就只會出現用記事本開過的檔案,不會有不相關的檔案混在裡面,清單上的項目也可以自由地刪除或釘選到上層,有 [我的最愛] 的味道。

  • Windows Vista / 7 檔案複製、移動、同步指令:robocopy

    Windows Vista / 7 檔案複製、移動、同步指令:robocopy

    最近在整理外接硬碟的檔案,想把整顆 500GB 硬碟的資料複製到另一顆新硬碟,想起以前看過 Windows 7 有個內建指令可以加速這個工作:robocopy。 這指令名字很好記,跟【機器戰警】RoboCop 只差了一個字 XD。實際上這個指令從 Windows Vista 就開始內建了,其他 Windows 作業系統則要另外安裝微軟提供的套件才有。

  • Linux 如何修改大量檔案名稱?

    客戶反應放在 Linux server 上的 flash 互動教材無法播放,FTP 登入後發現檔案都在,目錄及檔案權限也正常,但就是無法播放。還好 Google Chrome 瀏覽器 提供了非常完善的 debug 功能才讓我注意到那一長串檔名裡,有一個字母大小寫不一樣… Orz Linux 是大小寫不同 (case-sensitive) 的系統,所以大小寫不同視為不同的檔案,難怪會 404… 只要改檔名就解決問題了,但是客戶的檔案有好幾百個,一個一個改真是浪費人生啊 (茶)。還好 Linux 提供了可以批次改大量檔名的指令 rename。 rename 指令是這麼用的: $ rename oldname newname files 第一個參數是 “要被替換的字” 第二個參數是 “替換的字” 第三個參數是 “要被替換的檔案” 要改副檔名的話,可以下這樣的指令: $ rename .txt .html *.txt 如此一來,所有的 .txt 文字檔都會改成 .html。以此類推,也可以下 $ rename IMG img *.jpg 把照片的檔名改成小寫。這個指令也可以修改資料夾的名字,端看第三個指令怎麼篩選。 一個步驟就把客戶的檔案名字都改好了,收工。

  • 如何使用 nslookup 驗證 DNS 設定?

    每次要查 DNS 設定都會忘記那個指令叫啥? “那個不太常用,但有時候很實用的指令” 是 Windows Console 下的 nslookup。這篇寫作教學,實際上是給自己筆記的。 windows console 就是命令列,在 開始 » 執行 輸入 cmd 就可以進入 console 模式。