2012年6月3日 星期日
2012年5月23日 星期三
2012年5月3日 星期四
用 awk 做 split 及寫入兩個檔案
grep MED ../../complaints_data | awk 'BEGIN{FS="###"} {if(NR%5!=0) print $1 > "model.1.train" ;else print $1 > "model.1.test"} '
awk 條件{動作}
FS:分隔字元
NR:目前處理"第幾行"
awk 的 {動作} 裡可以用 if else,
每處理到 5 的倍數行,寫入 test,其餘寫入 train
if 及 else 之間要 ; (分號)
{動作} 裡如果有 2 行以上的動作用 ; 分開
awk 條件{動作}
FS:分隔字元
NR:目前處理"第幾行"
awk 的 {動作} 裡可以用 if else,
每處理到 5 的倍數行,寫入 test,其餘寫入 train
if 及 else 之間要 ; (分號)
{動作} 裡如果有 2 行以上的動作用 ; 分開
2012年5月2日 星期三
nfs server and client
假設都安裝好軟體了
[ server site ]
sudo fdisk /dev/vda ( 裝置名稱,不可加數字 )
partition --> primary, extended, logical
sudo mkfs -t ext3 /dev/vda1
格式化,只有 logical disk 有效
cd /tmp; sudo mkdir public
任何目錄下皆可,建立掛載點
sudo mount /dev/vda1 /tmp/public
掛載
df
可以看到掛載起來了
sudo vim /etc/exports
修改可接收的 client 端及讀寫權限 --> /tmp/public *(rw,sync)
server site preparing finish !
[ client site ]
cd /tmp; sudo mkdir tomcat-nfs
任何目錄下皆可,建立掛載點
sudo mount -t nfs SERVER_IP:SERVER_FOLD CLIENT_FOLD
掛載,其中 SERVER_FOLD 即 /etc/exports 裡寫的 /tmp/public
CLIENT_FOLD 可為任何掛載點,例如 /tmp/tomcat-nfs
df
可以看到掛載起來了
[ server site ]
sudo fdisk /dev/vda ( 裝置名稱,不可加數字 )
partition --> primary, extended, logical
sudo mkfs -t ext3 /dev/vda1
格式化,只有 logical disk 有效
cd /tmp; sudo mkdir public
任何目錄下皆可,建立掛載點
sudo mount /dev/vda1 /tmp/public
掛載
df
可以看到掛載起來了
sudo vim /etc/exports
修改可接收的 client 端及讀寫權限 --> /tmp/public *(rw,sync)
server site preparing finish !
[ client site ]
cd /tmp; sudo mkdir tomcat-nfs
任何目錄下皆可,建立掛載點
sudo mount -t nfs SERVER_IP:SERVER_FOLD CLIENT_FOLD
掛載,其中 SERVER_FOLD 即 /etc/exports 裡寫的 /tmp/public
CLIENT_FOLD 可為任何掛載點,例如 /tmp/tomcat-nfs
df
可以看到掛載起來了
2012年4月25日 星期三
2012年4月11日 星期三
2012年3月5日 星期一
2012年3月4日 星期日
find and replace
檔案中要放入 regular express 的字串,包含 . (dot),
先開 vim 把 . 換成 \. 放入 RE search 才會對。
:%s/\./\\./g
:%s/old-string/new-string/g
g 代表該行中每個符合 old-string 都要換成 new-string
如果沒有加 g,只有 :%s/old-string/new-string 的話,
只會替換該行第一個符合的 string,該行其後符合的都跳過。
python 中使用 regular express \b
diag = "pancreatic abscesses"
a = "I don't know what pancreatic abscesses is"
m = re.search( r"\b%s\b" %diag, a )
if m:
print( "Y" )
else:
print( "N" )
>>> Y
在python中使用 \b
1. %s 字串填入方式
2. raw string, ex: m = re.search( r"\bpancreatic abscesses\b", a )
3. 要加 r
Ref:
Does Python re module support word boundaries (\b)?
2012年3月3日 星期六
grep 與 cut
從檔案中找出所要的行,然後把所要的字切出來寫入檔案
grep "檢驗" lexicon.semantic | cut -f1 > test
cut 預設以 TAB 為分隔字元,若不是以 TAB 為分隔,再用 -d 選項
grep "檢驗" lexicon.semantic | cut -f1 > test
cut 預設以 TAB 為分隔字元,若不是以 TAB 為分隔,再用 -d 選項
訂閱:
意見 (Atom)