曾經負責寫個程式,把B地溫溼度監控電腦的監控紀錄,每2分鐘傳送到A地的網頁主機,提供使用者查詢觀看......
1.現況說明
B地監控電腦以執行監控程式的方式,在螢幕上顯示各擷取點的紀錄,監控程式本身並無傳送資料檔案到遠端的功能,詢洽廠商此為選購功能,意思是要另外花錢買!
但研究該監控程式,具備功能將溫溼度紀錄存成CSV檔案,另以EXCEL開啟CSV檔,顯現的溫溼度紀錄會自動更新,因此,想用EXCEL將CSV檔定時另存新檔,再用方法將該檔傳送到A地,即可達成目標。
2.分析需求,執行動作
同步各電腦基準時間
定時將B地監控電腦的溫溼度紀錄存成CSV檔案
定時將B地CSV紀錄檔傳送到A地
3.實作
同步各電腦基準時間
使用Network Time Protocol 就是NTP,將各電腦與台灣本地的時間校正伺服器同步,網路上有相關說明。
定時將B地監控電腦的溫溼度紀錄存成CSV檔案
使用EXCEL的VBA,每2分鐘另存csv檔(覆蓋原檔),程式碼如下:
Public timenow As Double
Sub auto_open()
timenow = Now
freq = "00:02:00"
Application.OnTime timenow + TimeValue(freq), "auto_open"
Call UpdateRecord
End Sub
Sub UpdateRecord()
Dim recdate, rectime, rowindex, colindex
rowindex = 5
colindex = 1
recdate = Date '取得系統日期
rectime = Format(Time, "hh:mm:ss") '取得系統時間(24小時制)
Workbooks(2).Sheets(1).Cells(rowindex, 1).Value = recdate '記錄本批資料日期
Workbooks(2).Sheets(1).Cells(rowindex, 2).Value = rectime '記錄本批資料時間
For colindex = 1 To 6 '記錄本批資料日期 Workbooks(2).Sheets(1).Cells(rowindex, colindex + 2).Value = Workbooks(1).Sheets(1).Cells(colindex + 1, 3).Value
'MsgBox " Date= " & recdate & " Time= " & rectime '偵錯顯示訊息
'MsgBox Workbooks(1).Sheets(1).Range("A2").Value & " " & Workbooks(2).Sheets(1).Range("A4").Value '偵錯顯示訊息
Next colindex
Workbooks(2).Save
Application.DisplayAlerts = False
Workbooks(2).SaveAs "Book2003a.txt", FileFormat:=42 '另存文字檔
End Sub
定時將B地CSV紀錄檔傳送到A地
使用DOS的批次檔,定時以FTP指令傳送檔案到遠端A地
使用此法,存成文字檔案
4月 24, 2014
4月 04, 2014
套件管理指令
在ububtu 中使用apt移除套件後,未移設定檔,要查已移除但尚有設定檔未清除套件資訊,指令如下:
dpkg -l | grep "^rc"
從第一行到最後一行尋找 word1 字串,並將該字串取代為 word2 ,指令如下
:1,$s/word1/word2/g
dpkg -l | grep "^rc"
從第一行到最後一行尋找 word1 字串,並將該字串取代為 word2 ,指令如下
:1,$s/word1/word2/g
12月 11, 2013
UBUNTU 13.10啟動網頁伺服器的虛擬主機功能(Apache2------VHOST)
1.最近看了本web2.0網站使用php網頁程式語開發的書,建構開發環境時發生了一點問題,在其它的linux系統,如:Fedora、Slackware系統等等,網頁伺服程式Apache主要設定檔為
/etc/apache2/apache2.conf ,但在UBUNTU系統,將原來的單一檔案,依功能分為數個設定檔,並維持由apache2.conf主控整個網站設定,組合而成的樹狀結構:
# /etc/apache2/ #設定檔所在目錄
# |-- apache2.conf #網頁伺服器主設定檔,引入所有的子設定檔案
# | `-- ports.conf #設定監聽網路傳輸埠(port)
# |-- mods-enabled #已啟用功能模組目錄
# | |-- *.load #個別模組載入位置
# | `-- *.conf #個別模組功能設定
# |-- conf-enabled #已啟用的設定檔案目錄
# | `-- *.conf #個別設定檔案
# `-- sites-enabled #已啟用網站功能,如虛擬主機
# `-- *.conf #個別虛擬主機功能設定
2.所謂虛擬主機,即在指定網址之外,提供其它網域名稱或網址,連結伺服器主機上的網頁目錄或指定目錄,以單一實體主機形成多台虛擬主機,提供開發網站測試運用及個人網頁服務。
3.設定步驟
3.1建立虛擬網站設定檔
設虛擬網站網址為www.test.com,在/etc/apache2/site-available目錄下建立設定檔
www.test.com.conf
,注意其預設副檔名為.conf,若要變更副檔名,請修改設定檔
/etc/apache2/apache2.conf
,將下列內容
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf
,改成
# Include the virtual host configurations:
IncludeOptional sites-enabled/
設定檔的內容如下,注意www.test.com不要寫成 *:80,若不指定虛擬網站的網址,將無法啟用虛擬網站:
#網站管理員
ServerAdmin webmaster@test.com
#網頁文件目錄
DocumentRoot /var/www/test-site
#網站錯誤日誌目錄
ErrorLog /var/www/test-site/error.log
#網站存取日誌目錄及檔名
CustomLog /var/www/test-site/access.log combined
3.2啟用並測試虛擬網址
在終端執行指令,啟用虛擬網站
設定正確啟動正常,顯示
Site www.test.com already enabled
執行重新載入網頁伺服器指令,
sudo /etc/init.d/apache2 reload
* Reloading web server apache2 *
*
(若顯示錯誤訊息,表示虛擬網站設定檔設定錯誤,依訊息修正設定檔)
3.3瀏覽虛擬網站
接下來,於瀏覽器指定虛擬網站的網址,測試連結虛擬網站!
/etc/apache2/apache2.conf ,但在UBUNTU系統,將原來的單一檔案,依功能分為數個設定檔,並維持由apache2.conf主控整個網站設定,組合而成的樹狀結構:
# /etc/apache2/ #設定檔所在目錄
# |-- apache2.conf #網頁伺服器主設定檔,引入所有的子設定檔案
# | `-- ports.conf #設定監聽網路傳輸埠(port)
# |-- mods-enabled #已啟用功能模組目錄
# | |-- *.load #個別模組載入位置
# | `-- *.conf #個別模組功能設定
# |-- conf-enabled #已啟用的設定檔案目錄
# | `-- *.conf #個別設定檔案
# `-- sites-enabled #已啟用網站功能,如虛擬主機
# `-- *.conf #個別虛擬主機功能設定
2.所謂虛擬主機,即在指定網址之外,提供其它網域名稱或網址,連結伺服器主機上的網頁目錄或指定目錄,以單一實體主機形成多台虛擬主機,提供開發網站測試運用及個人網頁服務。
3.設定步驟
3.1建立虛擬網站設定檔
設虛擬網站網址為www.test.com,在/etc/apache2/site-available目錄下建立設定檔
www.test.com.conf
,注意其預設副檔名為.conf,若要變更副檔名,請修改設定檔
/etc/apache2/apache2.conf
,將下列內容
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf
,改成
# Include the virtual host configurations:
IncludeOptional sites-enabled/
設定檔的內容如下,注意www.test.com不要寫成 *:80,若不指定虛擬網站的網址,將無法啟用虛擬網站:
#網站管理員
ServerAdmin webmaster@test.com
#網頁文件目錄
DocumentRoot /var/www/test-site
#網站錯誤日誌目錄
ErrorLog /var/www/test-site/error.log
#網站存取日誌目錄及檔名
CustomLog /var/www/test-site/access.log combined
3.2啟用並測試虛擬網址
在終端執行指令,啟用虛擬網站
sudo a2ensite www.test.com
設定正確啟動正常,顯示
Site www.test.com already enabled
執行重新載入網頁伺服器指令,
sudo /etc/init.d/apache2 reload
* Reloading web server apache2 *
*
(若顯示錯誤訊息,表示虛擬網站設定檔設定錯誤,依訊息修正設定檔)
3.3瀏覽虛擬網站
接下來,於瀏覽器指定虛擬網站的網址,測試連結虛擬網站!
11月 01, 2013
訂閱:
文章 (Atom)
