美文网首页生信相关Biostar Handbook学习小组
Biostar_Handbook学习笔记(2)Linux命令行学

Biostar_Handbook学习笔记(2)Linux命令行学

作者: coldlandkuma | 来源:发表于2017-10-31 16:07 被阅读77次

    生物信息学数据的处理环境都是在unix环境中进行的,所以学习linux命令行下的命令就是必须的了,一直以来都没有系统的学习过命令行的使用,都是靠着需要的时候再去查的方式在学习,乘着这次学习Biostar_Handbook的机会来稍微系统的学习一下linux的命令行。将暂时想到的之前学到的命令以及新学习的命令记录下来,作为这一次学习的笔记。

    查看帮助文档

    可以通过man命令加其他的linux命令来查看其他命令的帮助文档,当然通过man man可以查看man的帮助文档。

    查看文件以及目录的命令

    cd打开指定目录
    cd ..可以打开上级目录
    cd /可以打开根目录
    cd ~可以打开当前账户的home目录
    仅输入cd也可以快速打开当前账户的home目录
    ls可以查看当前目录或指定目录下的文件目录
    添加-a参数可以查看目录下的所有文件(包含隐藏文件)使用la也可以达到同样的目的
    添加-l参数可以查看目录下的文件的详细信息(不包含隐藏文件)
    添加-sh参数可以显示目录文件总大小以及目录下的各文件的大小
    mv可以移动指定文件或目录到指定目录或修改文件名
    添加-r参数可以移动目录
    cp可以将文件拷贝至指定目录
    添加-r参数可以拷贝目录
    pwd可以打印当前的绝对路径

    新建以及删除文件或目录

    mkdir新建目录
    添加-p参数可以强制创建目录(当上级目录不存在时,同时创建上级目录)
    rmdir删除目录
    touth创建文件
    rm可以删除指定文件
    添加-r参数可以删除目录
    添加-f参数可以强制删除文件
    添加-i参数会在删除时询问是否删除文件

    文本的查看以及输出

    echo "xxx"表示打印xxx至屏幕
    echo "xxx" > yyy.yyy表示打印xxx并输出至yyy.yyy文件中,且覆盖原本内容(若没有该文件则创建该文件)
    echo "xxx" >> yyy.yyy表示打印并输出至yyy.yyy文件末尾(若没有该文件则创建该文件)
    echo $USER打印当前用户名
    echo $HOME打印当前账户的home目录路径
    echo $PATH打印当前的环境变量
    moreless都可以将文件中的内容打印至屏幕中,但是more只能下翻页,而less可以上下翻页。
    cat可以将单个或多个文件同时打印至屏幕中,可以通过cat xxx > yyy来快速合并文件或是拷贝文件。
    wc可以显示文件的行数,单词数和字符数,通过添加-l参数可以只查看该文件的行数。
    nano是一个unix自带的文本处理工具,可以进行简单的处理文件。

    grep的使用

    grep可以将文件中包含条件的字符的行打印出来
    创建一个文件opening_lines.txt,作为练习grep命令使用其中包含

    Call me Ishmael.
    The primroses were over.
    Now is the winter of our discontent.
    All children, except one, grow up.
    The Galactic Empire was dying.
    In a hole in the ground there lived a hobbit.
    It was a pleasure to burn.
    It was a bright, cold day in April, and the clocks were striking thirteen.
    It was love at first sight.
    I am an invisible man.
    It was the day my grandmother exploded.
    When he was nearly thirteen, my brother Jem got his arm badly broken at the elbow.
    Marley was dead, to begin with.
    

    输入grep was opening_lines.txt


    输入grep --color=AUTO was opening_lines.txt

    好像没有什么差别
    grep -v was opening_lines.txt可以显示不包含was的行

    unix管道命令

    在unix命令行中存在可以通过|将前面输出的内容向后输入的命令,我们称这种使用命令的方式为管道命令。
    grep was opening_lines.txt | wc -c表示输出文件opening_lines.txt中存在was的行中有多少字符


    grep was opening_lines.txt | sort | head -n 3 | wc -c表示将文件opening_lines.txt中存在was的行进行顺序排列后前三行的字符数

    总之管道命令只能将前面的输出输入后面,而无法反过来。

    vim的简单配置

    在命令行有时候会用到文本处理,使用vim对文本进行处理虽然开始的时候用着不习惯,但是简单配置了之后用着还是蛮舒服的。

    syntax on
    filetype indent plugin on
    set ruler
    set showcmd
    set number
    nnoremap <F2> :set nonumber!<CR>:set foldcolumn=0<CR>
    set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
    set termencoding=utf-8
    set encoding=utf-8
    set smartindent
    set tabstop=4
    set shiftwidth=4
    set expandtab
    set softtabstop=4
    set autoindent
    set hlsearch
    

    下载命令

    通过wgetcurl都可以对文件完成下载,其中的区别,我也没有弄清楚,但是使用curl下载时如果没有加上-o-O参数就会将结果输出到屏幕上。

    相关文章

      网友评论

      • 于勇_b72e:你们学习的biostar handbook书籍在哪看的啊?

      本文标题:Biostar_Handbook学习笔记(2)Linux命令行学

      本文链接:https://www.haomeiwen.com/subject/gbztpxtx.html