LIUNX操作入门加集群

liunx操作入门

命令格式:命令+选项+文件
command [-optons [parameter]] [FILE]

ssh

ssh 用户名@ip地址
ssh xiongxiangyi@10.225.3.1
在这里插入图片描述

su 切换用户

w命令

查看当前使用集群用户
在这里插入图片描述

free -g 查看电脑内存使用状况

在这里插入图片描述

top看下大家有没有跑命令

实时查看系统运行状况

在这里插入图片描述

sleep暂停系统几秒

后加&放到后台
在这里插入图片描述

ifconfig 查看一些网络参数

在这里插入图片描述

echo 输出命令

echo{1..10}

在这里插入图片描述

history 查看历史命令

在这里插入图片描述

mkdir创建文件夹

mkdir -p tmp

cd 移动目录

cd ~ 回到自己的目录

cat 查看文档

cat >
快速输入脚本
cat -n 文件|grep 匹配内容 与grep -n 效果一样
在这里插入图片描述

cat ../sample.txt | tail -n +2#从sample.txt文件的第二行开始现实重点是通过tail命令调控

wget 下载

head

more 慢慢查看文件

less

less -S 文件 可以规范查看文件行和列清楚

VI 文本处理

grep

grep -n 匹配字符 文件
#返回匹配的行数和行内容,没有-n则只返回行内容

cut

cut -f 1 test.bad
cut表示我想按列提取文本,显示文件的第一列。在这里插入图片描述可以通过使用管道|awk来扩展数据结构,$0代表着所有的数据,$1,2,3,4分别为第1:4列。

在这里插入图片描述

awk

awk 'print "http:genome.usc.edu/cgi-bin/das/hg38/dna?segment="$1":$2","$3'}'  文件名
# 双引号把常量括起来,就是不是变量的量如"asdadw"前面没有$符号。

学习吧

sort 排序

sort -k2,2nr 文件名|cut -f -1-3
-k2 -----第二列
2n------第二列看成数字
r----return反过来排

tr替换命令

在这里插入图片描述

软件安装

基础安装

1、先搜索安装软件下载地址
在这里插入图片描述
2、先为软件设置一个安装文件名字按自己习惯来
在这里插入图片描述

wget https://nchc.dl.sourceforge.net/project/bowtie-bio/bowtie2/2.4.1/bowtie2-2.4.1-linux-x86_64.zip 
#下载软件包

在这里插入图片描述

unzip bowtie2-2.4.1-linux-x86_64.zip 
#解压软件包

在这里插入图片描述查看下解压的文件,绿色的为可执行文件
在这里插入图片描述
全路径调用,方便调用就加入环境变量
在这里插入图片描述

samtools安装
下载好包

解压j
tar xvfj samtool-1.10.tar.bz2
x----解压的意思
v-----弹出选项告诉你解压了啥
fj 文件类型
在这里插入图片描述
没有看见samtools
安装后需要make一下
在这里插入图片描述

在这里插入图片描述

就安装成了

快速启动方法
1、将程序位置赋值给变量使用$bowtie2 调用程序

bowtie2='/ldfssz1/ST_META/P18Z10200N0127_VC/tianliu/xiong/tools/bowtie2/bowtie2-2.4.1-linux-x86_64/bowtie2'

在这里插入图片描述
2、

alias bowtie2='/ldfssz1/ST_META/P18Z10200N0127_VC/tianliu/xiong/tools/bowtie2/bowtie2-2.4.1-linux-x86_64/bowtie2'

直接使用程序bowtie2相当于快捷方式
在这里插入图片描述
3、环境变量

export PATH="$PATH:/ldfssz1/ST_META/P18Z10200N0127_VC/tianliu/xiong/tools/bowtie2/bowtie2-2.4.1-linux-x86_64/"`

在这里插入图片描述
查看安装的版本

bowtie2 --version

在这里插入图片描述

conda类似于aptget

conda 包 install

shell脚本

for i in $wkd/*sra
do 
	echo $i
	nohup fsatq &
done
source activate rna
bin_trim_galore=trim_galore
dir='/home/project/airway/clear'
cat $1 |while read id 
do
   arr=(${id})
   fq1=${arr[0]}
   fq2=${arr[1]}
 nohup $bin_trim_galore=trim_galore -q --phred33 --length 36 --stringency 3
 done
 source deactibate
bash qc.sh config #config是传递进去的参数congfig 就是输入的值$1

什么是变量?
shell表格非常严格的
参数 $0
在这里插入图片描述

在这里插入图片描述
$1
在这里插入图片描述
外部参数传递进去了
在这里插入图片描述

注意 1 的 正 确 书 写 其 实 是 1的正确书写其实是 1{1},所以要注意规范防止出错到了${10}以来上就不能缩写了

通配符
*号这一类的

echo S[12]*
输出一类相似的东西

标准头文件
#!/bin/bash

循环的使用

ls sRR103952* |while read id;do echo $id;done
for i in {20..30};do echo SSR10395${i}.fsatq.gz;done
for i in SSR103952*;do echo ${i},done
for i in 'ls SSR103952*';do echo ${i},done #' '这个括号有点捕获的意思

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
批量软连接
ls /pbulice/project/RNA/ariway/raw_faq/*gz | while read id;ln -s $id $(basename $id);done
在这里插入图片描述任何脚本存在两中输出一种标准输出一种—1or—2

脚本

bed=exon_probe.hg38.gene.bed
for bam in /home/project/*.bam
do 
file=$(basename $bam)
sample=$(file%%.*)
echo $sample
export total_reads=$(samtools idxstats $bam|awk -F '\t' '{s+$3}END{print s}')# 为了把变量带入子程序中运行
echo The number of reads is $total_reads 
beadtools 

关于返回值的捕抓方式两种$()和’ '两个中间都是捕抓内容。

tmp='date'
echo $tmp
tmp=$(date)
echo='date'

可以通过借用捕抓捕抓出来的数据1,2两种欧
在这里插入图片描述

cut -f 2 configmapping|while read id;do echo $(basename $id);done|cut -d '_' -f 1

关于任务后台运行调到前台运

Shell支持作用控制,有以下命令实现前后台切换:

  1. command& 让进程在后台运行
  2. jobs 查看后台运行的进程
  3. fg %n 让后台运行的进程n到前台来
  4. bg %n 让进程n到后台去
  5. kill %n 杀死job  PS:"n"为jobs命令查看到的job编号,不是进程编号.
    fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的.

###可以通过对命令的组合调用后台将前台命令终止到后台然后后台启动运行
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200829073022512.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTUwMzAxOQ==,size_16,color_FFFFFF,t_70#pic_center
在这里插入图片描述

通过使用命令对集群的上自己的任务进行操作

nohup
qsub 提交任务
qstat -u username(这是你的用户名)
qdel -j id (删除服务器上的对应id的任务)

 qsub -clear -cwd -l vf=4g,num_proc=4 -P P18Z10200N0127 -q st.q seqcat.sh 
qstat|tail -n +3|awk '{print $1}'|while read line;do qdel $line;done
#直接移除所有的任务

从集群下载文件的方法:
除了xshell中的xftp以后的命令方法

sz

scp

上面这两个命令都可以下载资料下来,但是sz命令需要安装lr和sz支持就需要超级权限,由于公司服务器没有统一安装这两个命令也没有权限所以不测试了,这里scp,scp是通过ssh的方法进行下载,例如我现在电脑使用的系统是liunx的所以我使用这个命令就很方便。
== 我只在liunx系统上试过这个命令==
```powershell
scp xiongxiangyi@xx.xxx.x.x:/ldfssz1/ST_META/P18Z10200N0127_VC/xiongxiangyi/work/1.assay/03.profile/metaphlan3/FP200000077TR_L01_37.mp3_vir.profile /home/xiongxiangyi/Downloads
#@前面是你的用户名每个集群账户都有的东西,xxx处为你要下载位置的集群ip地址后面加:加全路径, 后面为你现在想要下载到的目录。

__移动到下载目录查看__文件已经下载过来了
在这里插入图片描述

通配符

就是通过一些简单的特殊表达形式来表达一类类似的东西。
D后面的*就是通配符,来暗指一类相似的文件。[]
在这里插入图片描述

脚本

一般格式,通过脚本来实现批量操作数据,或者运行流程

#!/bin/bash
#
#脚本内容
#!/bin/bash #bin下面有个bash
#MD5 
#前面这里写一些头文件,不影响运行,但是可以方便别人的查阅
#可以将参数什么的放这里
#写脚本要注意所有情况

捕获

$()或者:``
通过捕获可以获取输出值并赋值给变量

xiongxiangyi@xiongxiangyi-PC:~$ a=$(ls ./)
xiongxiangyi@xiongxiangyi-PC:~$ echo $a
模板 Desktop Documents Downloads Music mywork.sh Pictures Videos work.py
xiongxiangyi@xiongxiangyi-PC:~$ 

%%.*删除两个点后面的部分

export bead=llll
echo $bid
perl -e 'print $ENV{bed}'

脚本要写好

cut -f 2 config.mopping | while read id  ;do echo $(basename $id) ;done |cut -d"_" -f 1  1>a  

文本处理

awk\grep\sed\paste\cat\diff\wc\vim

grep -w 匹配出你要的东西
grep -v
https://www.cnblogs.com/kevingrace/p/9299232.html

通过大概的方法来观察数据的ID

head -1 ample.txt|tr '\t'  '\n'|cat -n
cut -f1 sample.txt|sort -u
cut -f1 sample.txt|sort |unique -c|sort -k1,1 -r|head -20
awk '{print $1}' sample.txt|paste -s -d +|bc
#bc是简易计算器

666

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值