windows系统中Linux用法

  1. Linux是什么?一种操作系统,多用户、多任务
  2. 安装gitforwindows实现部分Linux命令:Windows系统中可以实现上百个Linux命令,但无法安装Linux软件
  3. 在图形界面打开terminal或看到如下界面,此为我们大部分时候的工作环境

 

ct:用户名

ehbio:如果是登录的远程服务器,则为宿主机的名字

~:代表家目录,在我们进入新的目录后,这个地方会跟着改变

$:用来指示普通用户输入命令的地方

 

  1. Linux所有目录都在根目录下,用/表示。在访问目录是一般加上/指示相对于绝对路径。登录上之后即在家目录下(~或/home/ct)
  2. 目录结构
  1. /:根目录,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者
  2. /bin:bin就是二进制的引文缩写,在一般的系统当中,都可以在这个目录下找到Linux常用的命令。系统所需要的那些命令位于此目录。/usr/bin/usr/local/bin
  3. /etc (Editable Text Configuration): 这个目录是最重要的目录之一,存放了系统管理时要用到的各种配置文件和子目录。
  4. /home:如果建立一个用户,用户名是“XX”,那么在/home目录下就有一个对应的/home/XX的路径,用来存放用户的主目录
  5. /lib: lib是库(library)的英文缩写,主要用来存放系统动态连接共享库。千万不要对这个目录进行操作,发生问题时系统将无法工作
  6. /mnt: 用于存放挂载储存设备的挂载目录,比如磁盘阵列、U盘等。
  7. 下面以Win10 + Rstudio +gitforwindows 运行Linux命令为例

Linux基本命令: [ngs0@localhost ~]$ 命令[-选项] 参数1 参数2 ……

说明:命令永远以可执行程序开始;[-选项]的方括号表示该项目是可选的,不需实际输入;不同项之间以空格分隔,命令行以回车结束并即刻执行;Linux区分大小写

    8. 常用命令

pwd #显示当前工作目录(print working directory)

扫描二维码关注公众号,回复: 5314729 查看本文章

cat #查看文件(concatenate files and print),与<<END连用用于读入大段数据。输入cat <<END之后,回车,会看到终端出现一个大于号,大于号后面可以输入内容,再回车,继续输入内容,直到我们输入END (大写的,与上面一致),输入过程结束,我们输入的内容都显示在了屏幕上

ls #显示当前文件夹(list)

ls -l #列表显示

ls –l dir #显示目录下dir下的文件

mkdir #新建文件夹 (make directory)

mkdir test #创建目录

 

cd #切换工作目录(change dir)

cd test #进入test目录

cd ..#后退到上一级目录,.代表上级目录,..代表上一级目录,../../表示上两层目录

cd ./test 等同于cd test

cp #拷贝文件,原文件移动到目标位置(copy)

cp test.sh.file_temp.txt #复制文件

cp test.sh test #复制文件到指定目录

 

mv #移动或改名文件(move)

mv test.sh temp.sh #移动,不更改目录则为改名

 

rm #删除文件(remove)

rm test/test.sh #删除文件

rm –r test #删除文件夹

 

Fastq文件操作

gunzip:解压文件

head example.fq 显示文件头,查看钱6行可使用-n 6

tail example.fq 显示文件尾

less –S example.fq 按页查看文件,-S不换行,空格翻页,q退出

 

获取所有样品名字

cut -f 1 metadata.txt

获取所有样品名字时跳过第一行

tail -n +2 metadata.txt | cut –f 1

 

sed替换文字内容

sed ‘s/original/new’文件A:文件A中的原始的替换成新的

例:metadata中Beijing写错了,需要替换为Nanjing

sed ‘s/Beijing/Nanjign/’ metadata.txt

tr:字符替换工具

 

程序中几个符号

=:一个等号表示赋值

==:表示判断两侧的变量是否相等,如FNR==1,若相等返回True

!=:表示判断两侧的变量是否不相等,若不等,返回False

+=:自加操作a+=1等同于a=a+1

%:取余数

+,-,*,/:加减乘除

&&,||,!:逻辑与,逻辑或,逻辑非

():一般用于函数中,传递参数

[]:一般用于索引列表或字典,取出列表中第几位元素,或字典中某个key对应的value

{}:代码块,多行语句放在一起,属于一个层级

“”,‘’:双引号和单引号括起的是字符串,bash中双引号中的变量可以解析,单引号不可以。同样的引号不可以嵌套,如awk“{print“ehbio”}”是不对的,要写成awk‘{print“ehbio”}’或awk“{print‘ehbio’}”

 

/t:代表TAB键

*:代表任意字符

|:管道符,传递数据,上一条命令的输出作为下一条命令的输入

`>`是一个重定向符号,即把前面命令的输出写入到`>`后面的文件中

-:表示标准输入,一般用于1个程序需要多个输入的时候

<:标准输入,后面可以跟可以产生输出的命令,一般用于1个程序需要多个输入的时候

# cat命令之前也用过,输出一段文字
# diff是比较2个文件的差异的,需要2个参数
# - (短横线)表示上一个命令的输出,传递给diff
# < 表示其后的命令的输出,也重定向给diff

ct@ehbio:~$ cat <<END | diff - <(echo "1 2 3" | tr ' ' '\n')

> 2
> 3
> 4
> END
0a1
> 1
3d3
< 4

 

快捷键:

Tab键:自动补全或提示相关结果

Ctrl+C:中止命令

Ctrl+A:回到命令的行首,用于修改命令或注释掉命令

!!:表示上一条命令

# !!表示上一条命令
# :gs表示替换,把上一个命令中全部的ehbio替换为ehbio3; g: global; s: substitute
ct@ehbio:~/ehbio_project$ !!:gs/ehbio/ehbio3
#cut -f 1 -d ' ' ehbio3.fa | tail -n 4

which:表示查看命令的路径

注意:命令跟参数之间要有空格

猜你喜欢

转载自blog.csdn.net/qq_42458954/article/details/84898704