發表文章

用VBscript定時刪除暫存檔案

有很多時候系統因為查詢的關係會產生很多暫存檔案,然而若是系統本身沒有暫存檔管理功能的話,漸漸的暫存檔就會消耗硬碟空間,嚴重的話會導致作業系統空間不足而將服務給停止,因此定期刪除這些暫存檔案的技巧是管理的基本常識 所以寫一隻可以幫忙有條件清除的程序是很重要的。 檔案:Time2Delete.vbs 內容: ' 指定所有變數必須事先宣告才能使用 Option Explicit 'WScript.Echo("作業開始執行:" & Date & " " & Time) ' 宣告變數 Dim FSO, agoMins, modifiedDate, delFolder ' 請將下面的變數值換成你要的 ' == 開始 == ' 指定 n 分鐘前的檔案,現在是 15 分前 agoMins = 15 ' 欲刪除檔案所在之目錄 delFolder = "C:\inetpub\wwwroot\tempfile" ' == 結束 == ' 建立檔案系統物件(File System Object) Set FSO = CreateObject("Scripting.FileSystemObject") ' 取得檔案的修改時間 modifiedDate = DateAdd("n", -agoMins, Date) ' 呼叫刪除檔案的子程序 DelFilesInFolder FSO.GetFolder(delFolder) ' 刪除檔案的子程序 Sub DelFilesInFolder(folder) ' 宣告變數 Dim file, subFolder ' 找出目前所在目錄內所有的檔案 For Each file In folder.Files ' 檢查檔案日期是否符合條件,若符合,就刪除 If ((file.DateLastModified <= modifiedDate)) Then 'normal=0,readonly=1,hideen=2,system=4,Volume=8,Direc

用VBscript取得每一層資料夾底下的儲存容量

檔案:CheckSpaceUsed.vbs 內容: ' 指定所有變數必須事先宣告才能使用 Option Explicit 'WScript.Echo("作業開始執行:" & Date & " " & Time) ' 宣告變數 Dim FSO, chkFolder, vbcrlf, logf ' == 開始 == vbcrlf = chrB(13) & chrB(10) ' 檔案所在之目錄 chkFolder = "C:\FTPROOT\UPLOAD" ' 建立檔案系統物件(File System Object) Set FSO = CreateObject("Scripting.FileSystemObject") ' 建立紀錄檔案 Set logf = FSO.CreateTextFile("Csize.csv", True) ' 取得目錄層所有的資料夾,目錄層下的檔案不處理 FatchFolder FSO.GetFolder(chkFolder) '關閉記錄檔 logf.Close '取得清單子程序 Sub FatchFolder(path1) Dim fid, xsize, bs, axx '找出主資料夾下的資料夾清單 For Each fid In path1.SubFolders bs = "B" ' 呼叫統計檔案大小的子程序 xsize = CalFilesInFolder(fid) axx = fid.name & "," & Cstr(xsize) '計算 BYTE單位(最多到MB即可) If(xsize > 1024)then xsize = CLng(xsize / 1024) bs = "KB" End If If(xsize > 1024)then xsize = CLng(xsize / 1024) bs = "MB&quo

coldfusion send email (1): only text or html

Coldfusion 發送簡易電子郵件的方法: 使用 cfmail 標籤指令 純文字模式 <cfmail   to="recipient1@mail.domain.com,recipient2@mail.domain.com"   from="sender@mail.mydomain.com"   subject="顧客意見反映"   server="mail.mydomain.com"   username="MySmtpAccount"   password="MyPassword"   type=" text "> 本訊息由網頁『顧客意見』發出,請勿回覆此信件。#chr(13)##chr(10)# 發訊時間 :#DateFormat(NOW() , 'yyyy/mm/dd')# #TimeFormat(NOW() , 'HH:mm:ss')# 發訊人姓名:#SenderName##chr(13)##chr(10)# 發訊人電話:#SenderTEL##chr(13)##chr(10)# 發訊人郵件:#SenderMail##chr(13)##chr(10)# = = = = = = = = = = = = = = = = = = = = #MailBodyText# </cfmail> HTML模式 <cfmail   to="recipient1@mail.domain.com,recipient2@mail.domain.com"   from="sender@mail.mydomain.com"   subject="顧客意見反映"   server="mail.mydomain.com"   username="MySmtpAccount"   password="MyPassword"   type=" html "> <div styl

微軟windows特殊指令收集

Windows 7 以後的作業系統,為了安全考量都會把administrator隱藏,但對於IT人員頗不方便,可以用以下指令開啟/關閉: net user administrator /active:yes net user administrator /active:no -------------------------------------------------------------------------------------------------- DNS快取混亂,可能因為連到錯誤的DNS,導致IP解析錯誤,除了重新開機以外可以用: ipconfig /flushdns -------------------------------------------------------------------------------------------------- 本機網路路由設定,一般windows自己會調整,不需要設定,顯示路由紀錄: route print -------------------------------------------------------------------------------------------------- 但是公司內如果有特殊路由需要從走特定網卡,就要設定: route add 10.8.0.0 mask 255.255.255.0 192.168.2.250 10.8.0.0是目的IP或網段 255.255.255.0 是遮罩(這裡是指定一個C) 192.168.2.250 是路由器IP -------------------------------------------------------------------------------------------------- 重新開機指令,這個在遠端桌面很好用: shutdown -r -t 3 -c "因為維修關係重新啟動" -r 重新開機 -t 3 指定3秒後執行 -c "因為維修關係重新啟動" 顯示的註解 ----------------------------------------------------------------

第三剎車燈改LED(閃爍後恆亮)-有夜燈&無夜燈

圖片
最近在路上看到部分車系的車尾燈剎車時會有閃爍後便恆亮的狀態,看起來對後方車輛的警示效果不錯,尤其常上高速公路而言,有比較好的效果。 當然,網路上有不少筆戰關於剎車燈閃爍的議題,主要包括了法律、車型、原理、地區特性以及最常見的主觀。朔其來源應該是歐洲最先採用這種剎車規範,我記得叫做EBL或是EBD。汽車精品店有賣現成的(三角形),但是我發現它只會閃爍,且亮度不太夠,白天不是很清楚。 當然做這種東西不是為了讓車子像電子花車,主要的目的有兩個:純粹電子興趣、增加安全性而已,當然我不去改原始剎車燈,只改第三剎車燈,也是為避免後方混淆。原廠設計的話都會加上剎車力道感應,但是我的車是老車,沒有這類的感應設計,因此在設計時就只能考慮我的線路(只有一組啦),當然加上單軸加速計(Accelerometer)電路也可以做到,但電路可能會太複雜,且這類的零件不好買又貴。 網路上我找到不錯的論壇(喬治查爾斯) http://gcbbs.digitw.com/phpbb2/viewtopic.php?f=1&t=704&st=0&sk=t&sd=a 我個人是採用版主的設計來改,原因只有一個,我手上有現成的555,但是沒有4096。 一開始電路採用 夜燈+剎車燈 的設計: 這個電路在麵包板上是成功的,且不需要額外電源接入 電路原理: 1、僅夜燈時,電源進入經過2SA684,此時2SCA684基極對接地無分壓(剎車無電力進入),此時晶體導通,電源經過330Ω限流到LED組(亮度稍弱)。 2、當剎車時,剎車線路供電,分壓給2SA684,此時2SA684基極高壓,使得CE斷開,停止夜燈電源供給。 3、剎車供電時,電容100u需3~4秒充電達才能飽和,此時U1輸出高電位Hi,使得2SC1815導通,電容10u可正常充放電,此時U2輸出震盪並推動220Ω與LED組,使LED閃爍(最亮)。 4、電容100u在4秒後達到飽和,U1輸出成為低電位Lo,2SC1815不導通,CE斷開,電容10u無法充放電,致使U2輸出維持高電位Hi,LED組變成恆亮。 5、剎車不供電時,U1、U2所有電路復歸原態,待下次剎車時從2再次循環。 U1是設計成延遲電路,所以腳位7(放電)不接。 汽車的電力大約在13V ~ 15V間,1N4003可以稍微

Coldfusion 多個 query 合併

簡單的用法: <cfquery name="q1" datasource="store1" blockFactor="100">  select * from sales_lists where sale_date = '2013/05/02' </cfquery> <cfquery name="q2" datasource="store2" blockFactor="100">  select * from sales_lists where sale_date = '2013/05/02' </cfquery> <cfquery name="datesales" dbtype="query">  select * from q1  union  select * from q2  order by sale_employee </cfquery> 把多個 DB 查詢用 in memory 查詢 union 起來。 那如果是 LOOP 迴圈連續查詢的 query 呢? 那就讓 query name 不一樣就可以了,然後再用LOOP把query union 起來 <cfloop from="1" to="#ListLen(employeelist)#" index="i">  <cfquery name="qresult#i#" datasource="db1">   select * from employee where employee_no = '#ListGetAt(i)#'  </cfquery> </cfloop> <cfquery name="combine" dbtype="query">   <cfloop fro

Coldfusion Query 的 Commit

最近由coldfusion 操作資料庫查詢時發生的一件事情 在sybase資料庫 做 Replication 的兩部資料庫: A-DB 與 B-DB, 本來,Web-Base的作業都連線在 B-DB 上,App-Base都連在 A-DB上 後來因為B-DB資料區有異常,就把 coldfusion 連線全部連到 A-DB , 接下來,慘事發生了...... A-DB 三不五時發生嚴重 lock ,導致所有作業都停擺,細查原因,發現: 1、全部 lock 都是來自 coldfusion 的 connection ,而且都是 jdbc 驅動連線 2、如果 coldfusion 使用 Sybase 驅動連線,不會發生此現象 3、ColdFusion 不管何種連線到 B-DB 都不太會發生 lock 過久問題 4、Web-Base 的查詢幾乎都是大範圍資料查詢 所以,查了一下設定發現,B-DB 的 lock 範圍強制設定在 row lock等級, Read isolation 屬 uncommit ,這樣的設定應該是為了提高網頁端大量查詢的效率 而 A-DB 屬於內部作業使用有需要極高的正確性,因此屬於page lock等級, Read isolation 屬 commit,因此 App-Base 開發時只要使用到 insert/update 一律要 commit/rollback才能繼續。 以上設定應該是因應公司營業型態調整的 所以,如果在不知道細節的情況下, Coldfusion 的 <cfquery> 指令下完之後 ,無論是Select / Insert / Update 都記得要下一行: <cftransaction action="commit" /> 或是 <cftransaction action="rollback" /> 才不至於出現過度lock狀況,當然這也是比較正統的撰寫習慣 至於 sybase driver connector 與 jdbc driver connector為什麼有不一樣的行為, 應該是差在 select 這個指令,sybase driver 對 select 指令會自動 commit 掉, 但是jdbc d