2012年11月23日 星期五

把excel的資料轉到MySQL中

因爲公司的一些資料(excel)要轉到MySQL因此寫了個小小的awk應用

首先要把excel中的資料的欄位跟MySQL中的資料表作好對應

MySQL的欄位有

1.單號

2.品名

.....(N項欄位)

因此Excel中也要對應以上欄位

第一步 對應欄位

第二步 Excel存成CVS檔

第三步 建一個awk用的script,如下所示

{ FS = "," },{ printf("INSERT INTO dbname.tablename /x85單號,品名/x86 VALUE /x85/'%s/',/'%s/'/x86",$1,$2) }

以上用printf的部分可以參考C語言中printf的説明

/x85表( 左括弧

/x86表) 右括弧

/' 表示字元'

第四步 轉換啦

awk -f 剛冩的script檔名 Excel.csv > 要轉的檔名.sql

第五步 匯入MySQL

mysql -u root -p < 要轉的檔名.sql

基本上這様是因爲MySQL中有資料,用這樣的方式來増加資料

其實Linux中如果把sed,awk,grep等

弄很熟那處理可真方便

2012年11月6日 星期二

來個雙顯示器跟不同顯示卡設定

顯卡1是Nvidia的620
顯卡2是Intel的HD內建顯示部份

主要更動
檔案xorg.conf
#設定畫面位置
Section "ServerLayout"
   Identifier "X.org Configured"
  Screen 0 "Screen0" 0 0
  #第二劃面於第一畫面的右邊
  Screen 1 "Screen1" RightOf "Screen0"
EndSection

#第ㄧ螢幕設定
Section "Monitor"
  Identifier "Monitor0"
  VendorName "PHILIPS"
  ModelName "170S7FS"
  HorizSync 30-83
  BertRefresh 56-76
EndSection

#第二螢幕設定
Section "Monitor"
  Identifier "Monitor0"
  VendorName "ViewSonic"
  ModelName "VE710S"
  HorizSync 30-80
  BertRefresh 50-85
EndSection

#第ㄧ顯卡設定
Section "Device"
  Identifier "Card0"
  Dricer "nouveau"
  BusID "PCI:1:0:0"
EndSection
#第二顯卡設定
Section "Device"
  Identifier "Card1"
  Dricer "intel"
  BusID "PCI:0:2:0"
EndSection

#設定第一畫面
Section "Screen"
  Identifier "Screen0"
  Device "Card0"
  Monitor "Monitor0"
  DefaultDepth 24
  SubSection "Display"
    Viewport 0 0
    Depth 1
  EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 4
  EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 8
  EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 15
  EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 16
   EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 24
  EndSubSection
EndSection

#設定第二畫面
Section "Screen"
  Identifier "Screen1"
  Device "Card1"
  Monitor "Monitor1"
  DefaultDepth 24
  SubSection "Display"
    Viewport 0 0
    Depth 1
   EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 4
  EndSubSection
  SubSection "Display"
     Viewport 0 0
     Depth 8
  EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 15
  EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 16
  EndSubSection
  SubSection "Display"
    Viewport 0 0
    Depth 24
  EndSubSection
EndSection


另外有時開機時顯卡互搶第一位置時
利用mkinitrd把要當第一顯卡的modules先放到initrd.gz

2012年11月2日 星期五

更新Slackware到14.0

其實只是換比較新的套件啦
順到把kernel的版本改到3.4.1
這也是有原因的,因爲G620的CPU有顯視的部份
而Slackware14.0附的kernel3.2.29不支援-_-
應該說3.2.xx都沒有支援
所以更新kernel到3.4.1以上就對了

2012年8月29日 星期三

intel G620新主機

前些陣子小弟的主機板掛了,雖然自己很努力的修一下,但還是沒修好(喵的咧,換個小小的電阻也搞不定)
就敗了一下
Intel G620 2.63GHz
技嘉H77M-D3H
技嘉GV-N620D3-1G
Kingston DDR3 4GB x 2
新的電源供應器一台

以上花了快1萬
反正硬碟照舊使用,雖然IDE的硬碟可以收起來了orz
因此決定重灌Slackware 13.36 (64位元)
順便試試速度怎樣
其實狀況看來還可以啦雖然得把核心更新到3.0.x(逐步更新調整中)


其實換了新的CPU+主機板+顯卡+ram
事實上好像還是覺得浪費啊,雖然我已經挑比較低階了,還是覺得浪費啊

經過這次也順道把原本當防火牆的主機從硬碟換成CF卡
把一顆很吵的硬碟換成CF卡後,剩下的就是風扇聲,創造了安靜的環境,也創造速度

過程也挺簡單的,拿片開機光碟然後對CF卡做規劃跟格式化,來個cp 輕輕鬆鬆搞定
再開機一次,從光碟開機然後從CF卡載入root的部分,最後來個lilo -v -v -v,重開後完成

2012年1月24日 星期二

Eeepc裝Slackware

啊,又過了一年。
祝大家龍年愉快啊

網誌其實也沒有啥要更新的,可見小弟我還蠻混的,連key個鍵盤都懒。

正好今年公司抽獎有抽到一台EeePC(規格:1015PX),就順手來個灌上愛用的Linux,當然依舊還是Slackware。

到手時硬碟分區已經由偉大的華碩分好四個硬碟槽,其中有兩個槽是沒辦法觀看的〈原諒小弟我懶的抓圖〉。

基本上我們可以運用的就是硬碟的D槽,也就是對應Linux的sda3的部份。

首先準備兩個隨身碟,剛好小弟手邊有兩個隨身碟:256MB的隨身碟及80GB的隨身硬碟〈本硬碟為ext3格式〉。

順道準備slackware的光碟影像檔,然後開始作業流程吧

step1:掛載影像檔,這邊用最新的版本slackware-13.37版
mount /home/xxxx/slackware-13.37-install-dvd.iso /mnt/cdrom

step2:掛載80GB隨身硬碟
mount /dev/sdj1 /mnt/hd

step3:來個對拷
cp -R /mnt/cdrom /mnt/hd

step4:接下來製作usb開機碟,拿256MB的隨身碟來當USB開機碟
dd=/mnt/cdrom/usb-and-pxe-installer/usbboot.img /dev/sdk

step5:卸除以上所掛載的東西
umount /mnt/cdrom;umount /mnt/hd

step6:把兩個隨身碟都插到EeePC上頭

step7:開機並按下F2來修改開機項目

step8:由USB開機並按照正常Linux開機,最後只要選擇來源為外接式硬碟就可以正常安裝啦

完成安裝後啊,順便把系統套件更新,也順便把核心換到2.6.39.4版
這樣就大致上看起來完成了,嗯,沒錯就是大致上看起來,其實還有很多要細項處理,不過這調整慢慢來吧

突然發覺想把自己在用的電腦主機拿去報廢了,速度上比EeePC慢,畢竟是快10年的老主機了

2011年11月6日 星期日

Slackware 13.37安裝記

由於某天的不小心,把常用的系統弄掛了,雖然是因為手太閑不小心扯到硬碟的電源線。
附帶:我還沒完全把線扯下來,只是晃動到orz

乾脆裝上新版本的Slackware,不過在安裝過程中超級不順利,光碟機時有時無的狀況。
後來了解一下謂何會明明找到光碟了,卻沒有正常的mount,其實原因在於是使用DVD+的複寫片。
而安裝用的程式的安裝命令是以
mount -t iso9660 /dev/cdrom /tmp

這樣的方式來安裝,造成找的到光碟機,但mount屬於不正常狀態。
會這樣的原因在於預設的安裝程式有指定-t的原因
〈害我以為連扯個電源線也可以使光碟機掛點〉
所以只好回到咱家能用的狀況下手動去裝,雖然沒法自動安裝,但是手動安裝也是種樂趣。
首先得先把光碟mount到/mnt/cdrom中。
再把硬碟也mount到安裝預設的掛載點〈也可以是其他位置啦〉,我這邊是用/mnt/hd
然後進到光碟目錄中,也就是/mnt/cdromr/slackware/a的位置
接下來用installpkg的方式安裝,就像下面一樣的命令
installpkg --root /mnt/hd *.tgz
installpkg --root /mnt/hd *.txz

然後依照每個目錄都這樣Run一次。目錄有A、AP、D、E、K、N、L、X、XAP、Y
這樣就可以完成安裝了。
最後再進到setup的最後設定項去設定就可以了

2010年4月1日 星期四

寫個掛載磁碟的script

因為常用隨身碟,又沒用自動掛載

所以覺的寫個掛在磁碟的script比較方便些
script的名為mount.bat

#/bin/sh
echo "Mount all devices..."
echo "The Program by Hrsen.Shen"

if [ "$1" == "" ]; then
echo "Not has device ..."
echo "Plese selection devices.."
echo "The Program ex: ./mount.bat device direct format "
echo "device: hda1,hdb1,hdc1,sda1,sdb1... can look /dev/"
echo "format: no any word is linux format,have word is 'win',use windows format "
exit 0;
fi

if [ "$3" == "win" ]; then
echo "Use Windows format.."
su -c "mount /dev/'$1' '$2' -o iocharset=utf8,uid=hrsenshen"
else
echo "Use Linux format.."
su -c "mount /dev/'$1' '$2'"
fi
echo "parameteris => $@"
echo "Mount device '$1' to direct '$2'"

這樣要掛啥碟就不用打太多文自哩