天涯海角

My Web Home

Category Archives: 软硬兼施

Linux 下解压命令

【转载自eoiioe博客

.tar

解包:tar xvf FileName.tar

打包:tar cvf FileName.tar DirName

(注:tar是打包,不是压缩!)

======================

.gz

解压1:gunzip FileName.gz

解压2:gzip -d FileName.gz

压缩:gzip FileName

=========================

.tar.gz .tgz

解压:tar zxvf FileName.tar.gz

压缩:tar zcvf FileName.tar.gz DirName

==========================

.bz2

解压1:bzip2 -d FileName.bz2

解压2:bunzip2 FileName.bz2

压缩: bzip2 -z FileName

=============================

.tar.bz2

解压:tar jxvf FileName.tar.bz2

压缩:tar jcvf FileName.tar.bz2 DirName

===============================

.bz

解压1:bzip2 -d FileName.bz

解压2:bunzip2 FileName.bz

压缩:未知

=================================

.tar.bz

解压:tar jxvf FileName.tar.bz

压缩:未知

==================================

.Z

解压:uncompress FileName.Z

压缩:compress FileName

==================================

.tar.Z

解压:tar Zxvf FileName.tar.Z

压缩:tar Zcvf FileName.tar.Z DirName

===================================

.zip

解压:unzip FileName.zip

压缩:zip FileName.zip DirName

===================================

.rar

解压:rar x FileName.rar

压缩:rar a FileName.rar DirName

====================================

.lha

解压:lha -e FileName.lha

压缩:lha -a FileName.lha FileName

====================================

.rpm

解包:rpm2cpio FileName.rpm | cpio –div

====================================

.deb

解包:ar p FileName.deb data.tar.gz | tar zxf –

====================================

.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea

解压:sEx x FileName.*

压缩:sEx a FileName.* FileName

sEx只是调用相关程序, 本身并无压缩、解压功能, 请注意!

====================================

gzip 命令

减少文件大小有两个明显的好处, 一是可以减少存储空间, 二是通过网络传输文件时,可以减少传输的时间. gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。

语法:gzip [选项] 压缩(解压缩)的文件名该命令的各选项含义如下:

-c 将输出写到标准输出上,并保留原有文件。-d 将压缩文件解压。-l 对每个压缩文件,显示下列字段: 压缩文件的大小;未压缩文件的大小;压缩比;未压缩文件的名字-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。-t 测试,检查压缩文件是否完整。-v 对每一个压缩和解压的文件,显示文件名和压缩比。-num 用指定的数字 num 调整压缩的速度,-1 或 –fast 表示最快压缩方法(低压缩比),-9 或–best表示最慢压缩方法(高压缩比)。系统缺省值为 6。指令实例:

gzip *% 把当前目录下的每个文件压缩成 .gz 文件。gzip -dv *% 把当前目录下每个压缩的文件解压,并列出详细的信息。gzip -l *% 详细显示例1中每个压缩的文件的信息,并不解压。gzip usr.tar% 压缩 tar 备份文件 usr.tar,此时压缩文件的扩展名为.tar.gz。

Run a cluster job with graphical interface

Recently I need to run some jobs but with graphical interface. In short, you need a X-server under Windows if you have not  got any. Or you may need to ass the –X behind ssh, like “ssh –X host”

 

1. Windows:

source from http://www.zw1840.com/blog/zw1840/2008/10/putty-xming-linux-gui.html

1.1 install Xming

download Xming and Xming-fonts from http://sourceforge.net/projects/xming/

Xming.install.03

Xming.install.05

After the install finished, run XLaunch to configure Xming X server. Good to use the default setting

Xming.config.01

Display 代表一套 I/O 设备,包括显示、鼠标、键盘;Display Number 就是这套 I/O 设备的代号;同时 Display Number 还决定了 Xming X server 的 TCP 端口,端口号为 6000 + Display Number。Linux 主机上的应用程序通过此端口建立与 Xming X server 的连接。

*important: Remember this DISPLAY NUMBER, and later we will use that.

Xming.config.02

Xming.config.03

Xming.config.04

Save the configuration into .xlaunch file. Double click this .xlaunch file would start the Xserver service. You may find the Xming icon on the task bar.

1.2. Config your Putty

PuTTY.config.01

Fill the host you want to connect to. Connection type: ssh

PuTTY.config.02

[Optional] Fill in your auto-login username. If not, it will promote the username when you try to connect.

PuTTY.config.03

Check “Enable X11 forwarding”, and fill in the X display location with localhost:Display_number. the display number would be the number you setup in Xming as described above. By default, it should be “localhost:0”

PuTTY.config.05

[Ignore this if you want to set up again each time when you connect to the host] You may save you Putty setting by going back to the session part. Input a name under the “Saved Sessions”and click save. Next time, click the saved setting, and then load. Enjoy…

 

 

2. Linux

Under Linux, you may need some parameter behind ssh to enable the X-server/Xorg-like display service when you ssh to the host. For me, under linux workstation (CentOS 6.4), just one simple command: “ssh –X host.address”.

Hope this would be helpful.

晒晒我的linux alias文件

    以下是我的.alias文件

    alias原因是一些命令或选项或操作经常用到,每次进行一样的操作伤手/浪费时间/效率不高。

    通过alias搞定之,提高工作效率。

    不过建议刚入门的童鞋还是老老实实先熟悉命令和选项,^_^

    都是我在实际工作中经常用到的,会不定期进行更新(偶尔会google/github 找到很多相关的信息,修改吸收)

alias类型1: 修改加入默认选项,输入命令不变

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>alias vi=”vim”  
  2. alias grep=”grep -rnE –color”  
  3. alias mkdir=”mkdir -pv”  
  4. alias cp=’cp -v’  
  5. alias cpr=’cp -r’  
  6. alias mv=’mv -v’  
  7. alias chmod=’chmod -v –preserve-root’  
  8. alias chown=’chown -v –preserve-root’  
  9. alias df=”df -h”  
  10. alias du=”du -h”  
  11. alias last=”last -a”  
  12. alias free=’free -m’  
  13. alias lftp=”lftp user:pwd@ftpip”  
  14. #alias ln=’ln -s'</span> 

这里不多解释,修改这些命令的原因是,将常用的选项别名直接加入,使用时就免去了每次都多输入选项的过程。省时省力

这里很多地方-v,主要是用于操作后显示操作过程,make sure everything under control

alias类型2-1: 修改命令,shortcut,减短命令长度 –  跳转

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#chdir  
  2. alias ..=”cd ..”  
  3. alias cdd=”cd ..”  
  4. alias cd..=”cd ..”  
  5. alias …=”cd ../..”  
  6. alias ….=”cd ../../..”  
  7. alias …..=”cd ../../../..”  
  8. alias — -=’cd -‘  
  9. alias cds=’echo “`pwd`” > ~/.cdsave’  #cd save : save where i am  
  10. alias cdb=’cd “`cat ~/.cdsave`”‘  # cd back</span> 

.. 和cdd cd.. 三个作用一致,跳到上一层目录,因为俺经常敲快了,少个空格或者多个d,这样的话不用更正,比较快捷

中间那些点,用到频率其实不是很高,

– 代替cd -,回到上一工作目录

cds和cdb,主要用作保存当前的工作目录,到其他地方处理事情,搞完之后,cdb再跳转回来,十分好用

alias类型2-1: 修改命令,shortcut,减短命令长度 –  其他

这个就比较多,很杂,比较不好归类 ,简单注释写到后面了,复制时忽略注释…….

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>alias s=’sudo’   #sudo时  
  2. alias gu=’iconv -f gbk -t utf-8′  #两种类型编码转换  
  3. alias ug=’iconv -f utf-8 -t gbk’  
  4. alias ssh=’ssh -2′  
  5. alias m=’mysql -u root’    #mysql  
  6. alias sv=”sudo vim”      #用sudo编辑文件时  
  7. alias vd=’vimdiff’  #vim diff两个文件  
  8. alias tf=’tail -f’  #动态查看文件变化  
  9. alias af=”awk -F ‘\t’ ‘{print NF}'”   #查看文件列数,用\t分隔,最常用,其实也可以搞个通用的,接收参数  
  10. alias wl=’wc -l’    #统计行数  
  11. alias hpwd=’echo -n “`hostname`:”;eval pwd’  #用scp时,展示hostname和pwd  
  12. alias cls=”clear”   #清屏  
  13. alias dus=”du -s”   #磁盘  
  14. alias du0=”du –max-depth=0″  
  15. alias du1=”du –max-depth=1″  
  16. alias ll=’ls -al –color=tty’   #ls相关,这里–color需要根据终端设  
  17. alias lx=’ls -lhBX –color=auto’        #sort by extension  
  18. alias lz=’ls -lhrS –color=auto’        #sort by size  
  19. alias lt=’ls -lhrt –color=auto’        #sort by date    最常用到,ls -rt,按修改时间查看目录下文件  
  20. alias lsd=’find . -maxdepth 1 -type d | sort’   #列出所有目录  
  21. alias pong=’ping -c 5 ‘   #ping,限制  
  22. alias dfind=’find -type d -name’  #查找文件夹  
  23. alias ffind=’find -type f -name’  #查找文件  
  24. alias chux=’chmod u+x’    #该权限  
  25. alias psg=’ps aux|grep’   #查看  
  26. #svn operation  
  27. alias rmsvn=’find . -name “.svn” -exec rm -rf {} \; >> /dev/null 2>&1′  #递归删除目录下所有.svn  
  28. alias svnci=’svn ci -m “commit by $USER” ‘   #便捷操作,适用一些不重要文件的,不建议适用哈  
  29. alias svnst=’svn st’    #少一个空格,少一个是一个……囧 </span> 

alias类型3:其他扩展

自己写的脚本,也可以配出来用,例如我的备份脚本back_up.py,放在$HOME/bin下

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>alias bk=”~/bin/back_up.py -i”    #use my backup script to backup a file/dir</span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#以下是为了修改这几个文件方便…..  
  2. alias reload=’source ~/.bashrc’  
  3. alias bashrc=’vim ~/.bashrc && source ~/.bashrc’  
  4. alias bashpr=’vim ~/.bash_profile && source ~/.bash_profile’  
  5. alias bashal=’vim ~/.alias && source ~/.alias'</span> 

alias类型4: 自定义命令

注意,这个相当与自定义一个函数,只是在登录时 source进来了而已,用which cmd查不到,也不能tab自动补全

主要是涉及参数传入,复杂操作的,可以搞成脚本

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#计算  
  2. calc(){  
  3.    echo “$*” | bc  
  4. }  
  5. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#根据文件类型解压  
  2. extract(){  
  3. if [ -f $1 ]; then  
  4.          case $1 in  
  5.              *.tar.bz2)   tar xjf $1        ;;  
  6.              *.tar.gz)    tar xzf $1     ;;  
  7.              *.bz2)       bunzip2 $1       ;;  
  8.              *.rar)       unrar e $1     ;;  
  9.              *.gz)        gunzip $1     ;;  
  10.              *.tar)       tar xf $1        ;;  
  11.              *.tbz2)      tar xjvf $1      ;;  
  12.              *.tgz)       tar xzvf $1       ;;  
  13.              *.zip)       unzip $1     ;;  
  14.              *.Z)         uncompress $1  ;;  
  15.              *.7z)        7z x $1    ;;  
  16.              *)           echo “‘$1’ cannot be extracted via extract()” ;;  
  17.          esac  
  18. else  
  19.          echo “‘$1’ is not a valid file”  
  20. fi  
  21. }</span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#压缩   
  2. mktar(){ tar cvf  “${1%%/}.tar”     “${1%%/}/”; }  
  3. mktgz(){ tar cvzf “${1%%/}.tar.gz”  “${1%%/}/”; }  
  4. mktbz(){ tar cvjf “${1%%/}.tar.bz2” “${1%%/}/”; }  
  5. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#分屏同时打开多个文件  
  2. #vim -oN filea fileb filec    
  3. vimo(){  
  4.    vim -o$# $*  
  5. }  
  6. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#创建一个目录并跳转到  
  2. #make a dir and cd into it   
  3. mcd(){  
  4.     mkdir -pv “$@”  
  5.     cd “$@”  
  6. }  
  7. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#挪到回收站…..  
  2. #move to trash  
  3. del()  
  4. {  
  5.     mv “$@” “~/.trash/”  
  6. }  
  7. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#修复文件权限  
  2. # recursively fix dir/file permissions on a given directory  
  3. fix() {  
  4.   if [ -d $1 ]; then  
  5.     find $1 -type d -exec chmod 755 {} \;  
  6.     find $1 -type f -exec chmod 644 {} \;  
  7.   else  
  8.     echo “$1 is not a directory.”  
  9.   fi  
  10. }  
  11. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#一个时钟,用到不多  
  2. # display a sweet clock  
  3. clock () {  
  4.   while true; do  
  5.     clear;  
  6.     echo “”;  
  7.     echo ”    $(date +%r)”;  
  8.     echo “”;  
  9.     sleep 1;  
  10.   done  
  11. }  
  12. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#保存一个文件到tmp  
  2. # save a file to ~/tmp  
  3. saveit() {  
  4.   cp $1 ${HOME}/tmp/${1}.saved  
  5. }  
  6. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#交换两个文件  
  2. # switch two files (comes in handy)  
  3. switchfile() {  
  4.   mv $1 ${1}.tmp && mv $2 $1 && mv ${1}.tmp $2  
  5. }  
  6. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#查看自己常用命令top n  
  2. # View most commonly used commands. depends on your history output format  
  3. function used {  
  4. if [[ $1 ]]  
  5. then  
  6.     history | awk ‘{print $4}’ | sort | uniq -c | sort -nr | head -n $1  
  7. else  
  8.     history | awk ‘{print $4}’ | sort | uniq -c | sort -nr | head -n 10  
  9. fi  
  10. }  
  11. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#最常用,复制一个路径过来时,不用修改,可以到达路径的最深一层目录  
  2. #if dir,cd into it. if file ,cd into where the file is  
  3. goto(){ [ -d “$1” ] && cd “$1” || cd “$(dirname “$1″)”; }  
  4. </span> 

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”>#临时文件  
  2. mvtmp(){  
  3.   mv $1 ~/tmp/  
  4. }  
  5. cptmp(){  
  6.   cp -r $1 ~/tmp/  
  7. }  
  8. </span> 

好了,暂时就这些,网上有一些晒alias/bashrc/vimrc的帖子,有兴趣google下,还有github也有很多配置可以看到。

阅读,总结吸收,运用到自己实际工作中,事半功倍!

不定期更新,你也晒晒自个的吧得意

附录:

A.修改方式:1在$HOME下加入自己的.alias文件

                     2在$HOME/.bash_profile或.bashrc中加入语句:

[plain] view plaincopyprint?

  1. <span style=”font-size:16px;”># Aliases  
  2. if [ -f ~/.alias ]; then  
  3.     . ~/.alias  
  4. fi</span> 

B.有些情况,我们想使用原生的命令,而不是别名修改后的命令

   在命令前加反斜杠

   \ls      #调用的是原始的ls

2012-07-01

wklken

Blog:   http://www.wklken.com  &nbsp; &  http://blog.csdn.net/wklken

wklken#yeah.net

转载请注明出处,谢谢!

百度网盘邀请码

利用笔记本无线网络实现网络的共享

虽然通过无线路由器,可以方便将笔记本电脑相互联接,但是如果没有无线路由,只想将两台或三台笔记本通过无线共享文件,那又如何设置呢?最近好多网友询问耗子关于双机无线互联(不采用无线路由器或无线AP)的问题,因此耗子还是按以前的过程,当网友询问过多同一问题时,将此写成文章公布。

在介绍双机无线互联前,先来了解无线局域网的Ad-Hoc结构。与有线局域网类似,这是一种对等网络结构,各计算机只需安装了无线网卡,彼此即可实现直接互联,无需中间起数据交换作用的AP。同时,该结构中各无线用户的位置是平等的,如不加特殊限制,各用户的操作权限也是相同的。虽同为对等结构,但无线局域网却具备了有线局域网所不可比拟的特定优势。只要有一台计算机建立了点对点连接(相当于虚拟AP),其他多台计算机就可以直接通过这个点对点连接进行网络互联与共享,即无线的直接互联并不局限于两台计算机。这样当联网用户增加时,我们仍可使用无线局域网来满足。

通过上叙说明,我们也大概了解了。双机无线互联,比有线双机互联,还是麻烦一些,主要是要在一台机器上,建立点对点联接(也可以说虚拟AP),只有这样,两台以上的机器才可通过无线网卡进行无线互联。

下面,耗子将以两台DELL 630M机器为例做一详细说明,两台机器都安装有XP SP3系统,无线网卡为Intel(R) PRO/Wireless 2200BG Network Connection,并以安装好相应驱动。

确定两台笔记本已经打开无线,注意是打开,而不仅仅是在网络连接里启动。一般笔记本都有无线网卡打开的组合键,(如DELL 630M,其打开关闭无线网卡的组合键是FN+F2,打开后,无线网卡指示灯亮)。在开始操作前,耗子先说明一下,由于双机无线互联,要有一台机器设置成虚拟AP,因此耗子在这里称为“主机”;另外一台机器称为“副机”。这样说明,可能网友会清楚一些。

一、主机设置

首先选择一台笔记本,来配置主机(虚拟AP),届时其他无线客户端都将通过该主机来互相访问并建立互联,其作用与AP十分相似。

在打开“控制面板”–“网络联接”–选择“无线网络连接”属性后,选择“无线网络配置(1)”一项并单击右下角的“高级(2)”按钮,如下图。

clip_image002

在弹出的小对话框中,选择“仅计算机到计算机(特定)(3)”,并且不要勾选“自动连接到非首选网络(4)”,否则当附近有多个“接入点”时,计算机会按照首选网络的排列顺序自动建立连接;选择完成后,点击“关闭”。

接下来要给这个无线局域网命名,以便其他计算机连接时好区分。这个名字相当于AP中的“SSID标示”,在“虚拟AP”中同样重要。在“无线网络连接属性”中单击“添加(1)”按钮,即可出现“无线网络属性对话框”,如下图所示。这里耗子添加的是“MOUSE(2)”;选择“无线网络密钥”–将“网络身份验证”–设置成开放式(3);“数据加密”–设置成已禁用(3),设置完成后点击“确定”(4)。

clip_image004

设置完成后,由于采用数据不加密的方式,因此会出现下图显示,在这里,我们选择“仍然继续”。

clip_image005

完成后,系统显示已经建好的一个可用联接。

clip_image005[1]

设置完成后,点击“无线网络联接”–“常规”–“Internet协议 (TCP/IP)”–“属性”–指定IP地址为“192.168.1.1”掩码:255.255.255.0;其它不需要填写。然后确定退出,自此,主机设置完成。

clip_image007

二、副机的设置

副机的设置比较简单,打开“控制面板”–“网络联接”–选择“无线网络连接”属性后,选择“无线网络配置(1)”一项并单击右下角的“高级(2)”按钮,

在弹出的小对话框中,选择“仅计算机到计算机(特定)(3)”,并且不要勾选“自动连接到非首选网络(4)”,否则当附近有多个“接入点”时,计算机会按照首选网络的排列顺序自动建立连接;选择完成后,点击“关闭”。

clip_image008

设置完成后,点击“无线网络联接”–“常规”–“Internet协议 (TCP/IP)”–“属性”–将IP地址和DNS地址全部选为自动获取,确定即可(如下图)。

主机和副机设置完成后,在副机上双击“无线网络联接”,正常应显示出我们做好的联接(如果没有检测到,可点击“刷新网络列表”),此时,只要点击联接,应可正常联接的,(如下图)

已经联接上的图如下:

clip_image010

如果有两台以上的机器无线互联,那么其它机器,都按副机的设置过程设置即可。这样两台 三台 四台…….笔记本,都可通过无线网卡进行互联了。

新加win7 方法

具体方法如下:

win7下通过自己的无线网络和朋友分享网络连接,或者说是只是朋友之间相互连接一下,组建成一个小型局域网,有以下两种方法:

方法一:

打开网络共享中心,选择“设置新的连或接网络”

clip_image012
再选择设置无线临时网络

clip_image013

clip_image015

clip_image017

这些自己确定了,不过密码必须是8位以上的字母或数字组成,如果密码类型选wep,个数只有两种情况可供选择,会有提示的。

clip_image019

clip_image021

如果是第一次,应该还会出现“启用网络共享”这一项,点击共享就行了。这里没有了,因为我已经把本地连接共享给方法二里的网络了。如果不启用共享,别人连上你的是不能上网的,会显示无Internet访问。

clip_image023

至此,无线网络已经创建完成,也已经连接上,显示等待用户,这时,在你朋友的无线搜索里会显示出这个无线点来,点击连接,输入刚才的密钥即可。

顺顺便提一下,以后每次要连接,你这边必须要先点击连接,然后别人那里才能搜索到你哦。

方法二:(本人正在用的方法)

就是win7的虚拟基站功能,将一台能上网的电脑(当然得有无线网卡了,而且目前还仅限一些特定型号)虚拟成一个无线基站,共享网络连接。

其实也只是简单的两条命令而已:

以管理员身份运行命令提示符,输入以下两条命令:

netsh wlan set hostednetwork mode=allow ssid=shines key=happy***

(该命令设置ssid为shines,密码为happy***,连接模式为允许的承载网络,密码须大于等于8位,否则不成功)

如果网卡支持,在网络连接里会发现多了一项无线连接,并且名为Microsoft Virtual WiFi Mini Port Adapter,如下图:

clip_image025
将本地连接(当然是能上网的那个)共享给此连接:

clip_image026

clip_image027

点击是,确定共享。

netsh wlan start hostednetwork

(很明显了,启动承载网络)

如下图:

clip_image028

这时再看你的网络连接,是不是多了一项shines,并且有Internet访问权限,这样别人就能搜索到这个虚拟基站,点击连接,输入相应密码即可共享你的网络来上网了。

clip_image029

这种方法自我感觉比较酷,呵呵,虚拟出了一个无线站点出来。不过每次开机这个站点并不会自动启动,还须手工启动,就是如上所说以管理员身份在命令提示符里再次运行 netsh wlan start hostednetwork。

不过我采取的办法是建立一个批处理文件,用记事本输入以下内容:netsh wlan start hostednetwork,另存为“打开虚拟基站.bat”,不过还有一个问题,就是此命令只有管理员权限才能正常运行,每次点右键“以管理员身份运行”又有些麻烦,于是便发送该文件的快捷方式到桌面,在快捷方式属性里点高级,以管理员身份运行,这样需要的时候直接单击就可以了……当然也可以把这个快捷方式拖进开始菜单的启动文件夹里,或者以开机脚本的方式运行,都能在启动时自动运行,当然还得看你需不需要了。

Blast2GO 本地化方法及注意事项

1. 准备工作

? 下载Mysql数据库并安装:http://www.mysql.com/downloads/mysql/ 。下个Essentials版本的就可以了。然后装上。(出问题自己解决)

? 下载所需的数据文件:

http://archive.geneontology.org/latest-full/go_201011-assocdb-data.gz (下载最新的)

ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/gene_info.gz

ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/gene2accession.gz

ftp://ftp.pir.georgetown.edu/databases/idmapping/idmapping.tb.gz

以上数据均下载最新的。

? 下载local_b2g_db_tutorial_0609.zip. 在blast2go的网站上下载。

2. 本地化构建

? 更改数据存放目录

如果默认安装Mysql数据库的话,是装在C盘的,但是一般C盘的空间比较小,而要导入的数据很大,所以要改变一下Mysql 的数据存储目录。

查看路径:mysql > show variables like “%dir%”; 在这个命令的结果中会看到datadir的路径,下边就是将这个路径改到别的位置。

改变路径:

停止mysql服务:net stop mysql; 更改my.ini中的datadir信息,并将原来的data目录copy到更改以后的路径中;重启服务:net start mysql.

? 创建数据库和表

在local_b2g_db_tutorial_0609 中有个b2g_db.sql文件,该文件是用来构建b2g数据库和建立相应表的文件,可以直接导入到mysql 中。

原始的这个文件有几个错误,要改一下:

1) 原始第9行:GRANT * , 改为 GRANT ALL.

2) 原始第10行:添加 use b2g;

3) 原始第26行:’description’ text NOT NULL default ‘’, 将default ‘’去掉。

这样,这个文件就可以直接导入了。

导入:sh> mysql –uroot –p < c:/b2g_db.sql

这样在原来的mysql数据库中就多了一个b2g的数据库,同时这个库中还有三个表。自己查看一下,同时查看一下现在的数据存放目录是否改变了。

? 导入数据:

下边要导入已经下载好的4个数据文件。先都解压了,数据还是比较大的。

1) 导入go_<YYYYMM>-assocdb-data数据(压缩包1.18G,解压后7.45G)

进入mysql:

sh> mysql b2g –s –b –uroot –p

-s : silent mode: produce less out and speed up

-b : suppress the beep when errors occur

然后 mysql> source c:/go_****-assocdb-data

时间很长,等吧。

? 导入gene2accession

mysql> load data local infile “path/gene2accession” into table gene2accession;

OK, 无错误

? 导入gene_info

Mysql> load data local infile “path/geneinfo” into table gene_info;

OK,无错误

? 导入PIR file(idmapping)

这个需要通过blast2go界面进行导入。Blast2go下的Tools-> DB configuration, 改变db-host, name, password,一般变为localhost, root , ***,然后选择 tools-> import PIR mapping to a local B2G-DB,导入。

3. 总结

? 这里导入的数据仅仅解决了mapping的步骤,其他的步骤还需要通过网络,并没有本地化,mapping的速度是最慢的,本地化后会快很多。

? 检测是否构建成功:在blast2go的主界面中点击绿色的箭头,出现图形说明数据库已经建好了。

4. 可能出现的错误

? Network Connection Problem Premature EOF.过早结束。这个错误可能是由于杀毒软件造成的,关掉杀毒软件试试。不想关的话,放宽一下杀毒软件的过滤条件试试。

? Blast2go的blast步骤需要多作几次,直到最后两次的miss blast一样为止,一般不存在blast结果的序列还是很少的。如果你没有大型的服务器,个人觉得通过NCBI blast反而比自己本地blast要快。

? 富集分析:有时不报错,但是长时间不出结果,可能是杀毒软件的问题,关掉就很快出结果了。如果P值全为1,也这么做,试试看了。

? Could not create the java virtual machine的问题,可能是启动的blast2go需要的内存太多,设定一个小的内存使用量就可以了。

? Blast2go 会自动覆盖重复记录。会用后边的记录覆盖前边的记录。如果前面导入的结果为20个hit,后面相同记录为19个hit,那么最终的结果为19个hit.所以再比对nr和swissprot的时候,应该分开计算结果,然后再合并。

? Blast2go导入本地blast结果文件,受到序列条目和文件大小的限制,3000条序列一个文件是可以的(测试过),占内存很严重。文件大小在100M左右是可以的。

? 用独立的blast程序比对swissprot数据库出现问题,xml结果中hit-id不正确,导致blast2go无法识别,可能是formatdb时出现了错误,自己检查一下。

? 一般GO 分类中,biological process的节点很多,在blast2go中,这步出图的时候总是容易卡死,需要改变一下blast2go配置文件中图形节点的最大值,改大点应该可以出来。

5. 建议

? 富集分析做barchart的时候,用p-value比较好,可以在图形中显示over 和under。不推荐用FDR。

? Blast2go出来的分类饼图是不包括unknown类别的,个人建议用blast2go出来的数据重新画一个分布饼图,将unknown类放进去。

? 做blast的时候HSP的长度最好设定一下。

可能碰到的问题:http://www.blast2go.org/tut

Blast2GO 最新网址:http://www.blast2go.com/b2ghome,现在已经提供收费业务了,估计一点一点就会全部商业化了。个人建议还是学习人家的原理,如何mapping,如何打分,即使全部收费了也对我们的分析没多大影响,不能总被别人牵着鼻子走。

whybiocc原文链接

Perl教学视频:探索Perl的世界

非常好的perl视频教学,适合初学者哦。感谢Superor的无私奉献!
写在前面.非常非常感谢 Superor 拿出自己的时间,为中国的 Perl 界做出了第一个中文视频教程,象别的语言都有很好的教程。Perl 的相比起来还是少.看视频,在入门时还是相当方便的,就象电影来看就好了。我基本 Superor 老师每出一集我都看了。希望大家也认真看看。

记的,学习时要多写,只能看明白,只有 5% 是你的,练习都做一做,就有 30% 是你的啦。其它的如果能根据教程,自己写出自己要的程序,才 80% 是你的.

再次感谢 Superor 老师.

注意下面的内容,如果加 .zip 可以直接下载的。

第1集:第一章 Perl的概述
http://www.boobooke.com/v/bbk2869

第2集:第二章 Perl的简单变量
http://www.boobooke.com/v/bbk2969

第3集:第二章 Perl的字符串变量
http://www.boobooke.com/v/bbk3074

第4集:第二章 字符串变量和小结
http://www.boobooke.com/v/bbk3195
——————————————————————–
第5集:第三章 perl中的运算符
http://www.boobooke.com/v/bbk3335

第6集:第三章 perl中的运算符
http://www.boobooke.com/v/bbk3370

第7集:第三章 perl中的运算符优先级
http://www.boobooke.com/v/bbk3403
——————————————————————–
第8集:第四章 perl中的控制结构
http://www.boobooke.com/v/bbk3428

第9集:第四章 perl中的控制结构
http://www.boobooke.com/v/bbk3448
——————————————————————–
第10集:第五章 列表与数组
http://www.boobooke.com/v/bbk3529

第11集:第五章 列表与数组
http://www.boobooke.com/v/bbk3530

第12集:第五章 列表与数组
http://www.boobooke.com/v/bbk3531
——————————————————————–
第13集:第六章 关联数组
http://www.boobooke.com/v/bbk3600

第14集:第六章 关联数组
http://www.boobooke.com/v/bbk3601

第15集:第六章 关联数组
http://www.boobooke.com/v/bbk3602
——————————————————————–
第16集:第七章 文件
http://www.boobooke.com/v/bbk3681

第17集:第七章 文件
http://www.boobooke.com/v/bbk3682

第18集:第七章 文件
http://www.boobooke.com/v/bbk3683

第19集:第七章 文件
http://www.boobooke.com/v/bbk3684
——————————————————————–
第20集:第八章 正则表达式
http://www.boobooke.com/v/bbk3748

第21集:第八章 正则表达式
http://www.boobooke.com/v/bbk3749

第22集:第八章 正则表达式
http://www.boobooke.com/v/bbk3750

第23集:第八章 正则表达式
http://www.boobooke.com/v/bbk3751

第24集:第八章 正则表达式
http://www.boobooke.com/v/bbk3752
——————————————————————–
第25集:第九章 格式化输出
http://www.boobooke.com/v/bbk3784

第26集:第九章 格式化输出
http://www.boobooke.com/v/bbk3785
——————————————————————–
第27集:第十章 函数
http://www.boobooke.com/v/bbk3799

第28集:第十章 函数
http://www.boobooke.com/v/bbk3800

第29集:第十章 函数
http://www.boobooke.com/v/bbk3801
——————————————————————–
第30集 第十一章 Perl引用
http://www.boobooke.com/v/bbk3851

第31集 第十一章 Perl引用
http://www.boobooke.com/v/bbk3852

第32集 第十一章 Perl引用
http://www.boobooke.com/v/bbk3853

第33集 第十一章 Perl引用
http://www.boobooke.com/v/bbk3854
——————————————————————–
第34集 第十二章 Perl包和模块
http://www.boobooke.com/v/bbk3915

第35集 第十二章 Perl包和模块
http://www.boobooke.com/v/bbk3916

第36集 第十二章 Perl包和模块
http://www.boobooke.com/v/bbk3917
——————————————————————–
第37集 第十三章 类和对象
http://www.boobooke.com/v/bbk3992

第38集 第十三章 类和对象
http://www.boobooke.com/v/bbk3993

第39集 第十三章 类和对象
http://www.boobooke.com/v/bbk3994

第40集 第十三章 类和对象
http://www.boobooke.com/v/bbk3995

 

 

升级到 Ubuntu 11.04 Natty 的四种方法

以下是分别是在线及离线升级到 Ubuntu 11.04 Natty 的四种方法,你可以酌情选择其中一种对你最有利的方法来升级。( 核心提示:升级有风险,操作需谨慎! )

– 在线升级

1 GUI 方式:

在终端里输入以下命令

sudo update-manager -d

就会打开升级工具,可以看到升级到 11.04 的字样 ( 如下图),直接按 upgrade 升级吧。

2 CLI 方式

修改 /etc/update-manager/release-upgrades 文件,把里面的

Prompt=lts

改为

Prompt=normal

保存后退出,再执行

sudo do-release-upgrade -d

在升级过程中会提示修改 source.list 中的源地址,按 y 继续,之后就等待它自动升级吧,升级完后再重新启动就可以了。

# 以上两种方式与升级 10.10 的方式雷同,详情见: 如何从 Ubuntu 10.04 升级到 10.10 一文。

–  离线升级

3 下载 ISO 镜像后刻盘升级

从 Ubuntu 11.04 开始,Ubuntu 的安装程序已支持升级功能,用户下载 ISO 并制作成光盘或 USB 盘后,从 Live CD 启动,如果你的硬盘已安装了 Ubuntu ,在安装过程中会提示可以进行升级,按照提示就可以进行升级操作了,如下图。

4 利用 alternate ISO 镜像来离线升级

这个方法不需要制作光盘或 USB 盘就可以在当前系统中进行升级。而这里我们要利用到的 Ubuntu ISO 镜像不是通常使用的 ISO ,而是 Ubuntu alternate ISO ,你可以到以下地址下载:

http://cdimage.ubuntu.com/daily/current/

下载完后你就可以离线升级了,首先加载 ISO 文件。

sudo mount -t iso9660 -o loop ~/maverick-alternate-i386.iso /cdrom

然后运行光盘中的 cdromupgrade 程序就可升级了。

sudo /cdrom/cdromupgrade

详情见: 利用 ISO 镜像来离线升级 Ubuntu 一文。

另外,还有一种就是直接修改源的方法来升级,这种方法相对以上来说比较复杂一点,不推荐。

Ubuntu 10.10+Win7 双系统重装 Win7 后恢复 Ubuntu 引导方法

起因:
虽然一直在ubuntu下工作,但是前几天突然发现dreamweaver有wordpress的代码提示功能,让小狼心动不已,所以就打算在一直当成游戏机的win7上去搭建iis的php环境,鼓捣了一阵子后….悲剧地发现竟然无法打开was服务,说是找不到这个服务,百度,google了一阵,发现只有两个办法,尝试了一下都不成功,没办法.只能选择重装了,正好装个windows server 2008感觉感觉服务器版的windows有什么优点。

 

装完server 2008之后重启就更加悲剧地发现grub启动菜单不见了….不是重装了windows之后又要重装ubuntu吧….配置了好久的说,OMG!小狼决定说什么也不能重装ubuntu,就虚心地向google求救,经过一段时间的折腾,终于成功引导回ubuntu。现在就说说一下引导过程吧,注意了小狼用的是liveCD方法,就是装系统时用的光盘,没有的童鞋可以跳过了,当然想参考一下的也可以继续往下看。

恢复引导方法:

1.放进liveCD,重启,看到有界面出来的时候,选择试用,不要点安装。

2.进入ubuntu试用版后,打开终端,在左上角的应用程序->附件->终端那

3.输入以下命令:

sudo fdisk -l   //得到的结果类似下面。查看ubuntu的根目录在那,这里没办法直接看出来,只能靠你自己识别,可以从分区的大小判断是不是根分区,就是在装ubuntu时,挂载点为 / 的那个分区

fdisk

 

从图中的结果看出来,根分区在sda12.因为小狼记得分/分区的时候是分了20G的大小,并且当时是先分了/分区,然后再分了一个20G的/home分区的。所以判断出sda12是/分区,而不是sda13,虽然它也是20G.把sda12记住。

注意:如果分区的时候,你单独把boot分区分出来了,还要多一步工作,就是找出boot分区:

从上图可以看出,boot分区在sda8,因为它是最小的,只有200M.(你装ubuntu的时候分了多少就是多少)

记住sda8。

4.输入

sudo mount /dev/sda8 /mnt

因为小狼的单独把boot分区分出来了,并且它的位置在sda8.如果你没有单独把boot分区分出来.那就修改一下位置,改为

sudo mount /dev/你的/分区所在位置 /mnt

5.输入

sudo grub-install –root-directory=/mnt /dev/sda8

同样,如果你没有把boot分区单独分出来就改成

sudo grub-install –root-directory=/mnt /dev/你的/分区的位置

这里应该不会有什么问题,因为如果位置不对,无法安装,你可以一直输这个命令直到位置对了为止.

6.如果出现了no error report。那你就差不多成功了.然后sudo init 6.重启。

7.重启之后你会无奈地发现……windows也无法启动了,进入的是grub的命令行…..不要怕。进到这里你已经离成功不远了.

输入:

root (hdX,Y)   //x为硬盘位置,如果你只有一快硬盘,X=0,如果有多块,相应设置x。Y为boot分区所在位置,这里是8.如果没有单独分boot分区,y就是你的/分区所在位置

linux /vmlinuz-2.xxxxx-generic root=/dev/sda12(无论你有没有把boot分区单独分出来,这里都要写/根分区的位置,否则无法完成启动,这里可以按tab完成填写)

如果没有单独把boot分区分出来,就是

linux /boot/vmlinuz-2.xxxxx-generic root=/dev/sda12
initrd /initrd.img-2.xxxxx-generic

initrd /boot/initrd.img-2.xxxxx-generic
boot

到这里已经差不多完成了.因为你已经可以进入原来的ubuntu了,但是如果就这样不管了,那么下一次重启还需要重复一次上面的工作。这也太渗人了。。。

那最后就修复一下grub吧.

打开终端,输入

sudo update-grub

看到

Generating grub.cfg …
Found linux image: /boot/vmlinuz-2.6.35-27-generic
Found initrd image: /boot/initrd.img-2.6.35-27-genericFound Windows Server 2008 (loader) on /dev/sda1
done

恭喜,现在已经全线完工了。赶快重启一下看看熟悉的grub引导菜单是不是回来了~

http://wowubuntu.com/fix-grub.html

Firefox 启用不兼容扩展的通用方法

每次 Firefox 出现较大的版本升级,总有几个扩展不兼容。或者想尝试各种测试中的 Beta 版,扩展不兼容是首先要解决的问题。虽然说可以安装 Nightly Tester Tools 来强制启用,但是这个问题根本就不需要安装一个扩展来解决,而且它目前还不兼容 Firefox 4.0。

[Firefox 技巧]启用不兼容扩展的通用方法[图] | 小众软件

最简单的办法就是配置一下 about:configFirefox 官方有详细的说明,只需新建一个 Extensions.checkCompatibility 就行了。

该通用方法是:在地址栏输入 about:config,点击右键,选择“新建→布尔”,在弹出窗口输入 extensions.checkCompatibility.<version>,确定之后,选择 false

那么 <version> 究竟该替换成什么呢?请看下面的例子:

  • Firefox 3.6b2 -> extensions.checkCompatibility.3.6b
  • Firefox 3.6pre -> extensions.checkCompatibility.3.6p
  • Firefox 3.6Firefox 3.6.8 -> extensions.checkCompatibility.3.6
  • Firefox 3.7a1 -> extensions.checkCompatibility.3.7a
  • Firefox 4.0b2pre -> extensions.checkCompatibility.4.0b
  • SeaMonkey 2.1a1 -> extensions.checkCompatibility.2.1a

<version> 的规律是:取版本号前三个字符组成的小数 + 1 个字母。