scp
scp -r '/home/usrname/project/XXXX.fa' server_username@XX.XX.X.XX:~/filename/
scp將本地文件上傳到服務器(或者是別人)。server_username是在服務器上的用戶名。你要把文件傳到哪里,就在哪里打開終端。比方說你要把服務器上的文件傳到本地,就在本地打開終端來scp。
scp commands總結git clone
git clone 'clone or download按鈕下的HTTPS' '要clone過來的目錄'md5sum
md5sum 'XX/XX/filename'
輸入兩個文件看兩個文件是否完全一樣。check ubuntu version
lsb_release -aubuntu 16.04 更新 r-base
試試這個:https://stackoverflow.com/questions/55929757/installing-r-3-6-on-ubuntu-disco-19-04Print出fasta文件中每個reads的count數(shù)
grep -v '>' XXXX.fasta | awk '{print length}'還是grep
zgrep的時候,要查找的字符沒有顏色標記
標準輸出再解壓,然后pip給grep,即有標記
gzip -cd XXX.fastq.gz | grep -n 'string'壓縮
保留原始.gz文件 并 解壓到當前路徑
gunzip -c 'XXXX.fastq.gz' > 'XXXX.fastq'
保留原始文件 并 壓縮到當前路徑
gzip -c 'XXXX.fastq.gz' > 'XXXX.fastq'不保留原文件的話,就gzip 'XXX.fastq',默認為.gz
參考這個連接解壓顯示末10行
unzip XXX.gz -c | tail -n 10建軟連接,用scp傳輸
比方說要傳輸給別人的文件分布在各個文件夾里,可以先新建一個文件夾,把各個文件的軟鏈接(像快捷方式)放在里面,再scp給別人
ln -s 'XXX/XXX/XXX.fa' 'XXX/X/X.txt' softlinktmp/
cd softlinktmp/
scp * XX@....:/XX/XX/XX
- 登錄服務器,寫一個如下所示的.json, 保存在
~/.jupyter/jupyter_notebook_config.json
{
"NotebookApp": {
"ip": "*",
"open_browser": false
}
}
- 在服務器里運行
jupyter lab試一下
我在這里報錯:KeyError:'allow_remote_access'參考
服務器中vim打開vim ~/.jupyter/jupyter_notebook_config.py, 添加c.NotebookApp.allow_remote_access = True,保存。再試一下就可以運行了。 - 在本地ssh:
ssh -L 8000:127.0.0.1:8888 username@XX.XX.X.XX
進入服務器終端后,運行jupyter lab
會發(fā)現(xiàn)一個token碼:
The jupyter notebook is running at: http://...../?token=XXXXXXXXXXXX - 復制上述token碼,在本地瀏覽器中
http://127.0.0.1:8000,如下所示:
輸入token碼即login可使用了。
另外如果要access本地的文件,可以直接拖拽到jupyter lab的左側文件欄,就將文件upload到服務器上了。
查看路徑中所有文件的大小
du -h就顯示所有文件human readable sizeanaconda教程:(暫時夠用了)
https://zhuanlan.zhihu.com/p/32925500
在conda里裝個qiime1虛擬環(huán)境
conda --version先看看你的conda裝了沒
conda env list看看已經(jīng)建好的環(huán)境都是啥
conda create --name qiime1建個叫qiime1的conda環(huán)境
conda activate qiime1到qiime1環(huán)境里去
conda list看看里面有什么(新建的就是空的)
conda install -c bioconda qiime在這個環(huán)境里安裝qiime1,安裝好了再conda list一下看看
print_qiime_config.py直接在終端輸入看看
conda deactivate退出conda一個疑惑:我用11中提到的方法在本地打開了在服務器上運行的jupyter lab,然后試圖用
subprocess.Popen()來運行命令行,進入服務器我賬戶下的一個conda環(huán)境中用qiime1,但是一直報錯
nCommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.\nTo initialize your shell, run\n\n $ conda init <SHELL_NAME>\n\nCurrently supported shells are:\n - bash\n - fish\n - tcsh\n - xonsh\n - zsh\n - powershell\n\nSee 'conda init --help' for more information and options.\n\nIMPORTANT: You may need to close and restart your shell after running 'conda init'
即使我在subprocess.Popen()中conda init bash了,也沒法重啟shell....?
最后我只好寫XXX.py,在服務器終端我的conda里運行。在conda里安裝了Multiqc,但是沒法update,總是v1.0,要裝v1.6的
參考 https://github.com/ewels/MultiQC/issues/729
conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda
conda install -y -c bioconda multiqc multiqc=1.6在服務器里,想把自己所有的撒比進程都kill掉
pkill -u your_user_name
查看進程:ps -ef
參考一個文件夾的大小 disk usage
du -sh XXX/ordu -h XX/硬盤disk free
df -hhtop的解讀
在win10的ubuntu終端

PID:進程編碼
USER:用戶名:開這個進程的人
PR:進程的優(yōu)先級
NI:進程的優(yōu)先級:最小-20,最大20
VIRT:進程占用的虛擬內存值 (kb, =SWAP+RES)
RES:進程占用的物理內存值(kb)
SHR:進程使用的共享內存值(kb)
S:進程的狀態(tài),其中S表示休眠,R表示正在運行,Z表示僵死狀態(tài),N表示該進程優(yōu)先值是負數(shù)
%CPU:進程占用的CPU使用率
%MEM:進程占用的物理內存占總內存的百分比
TIME+:該進程啟動后占用的總的CPU時間
COMMAND:進程啟動的啟動命令名稱
只看某個user的進程:u 然后選擇user, Enter
conda install出現(xiàn)報錯:Segmentation fault(core dumped)
不用把conda清空重新裝:
conda install spyder
然后再install一次即可Linux系統(tǒng)圖形界面卡死,kill掉進程
你手賤點錯了東西,linux的圖形界面卡死了。終端ctrl + alt + t也打不開,這周你暴力關主機重啟兩次了,不想再折騰命苦的電腦了。
Ctrl + Alt + F1(F1-6都行)打開終端字符界面,整個顯示屏變成黑底白字。不要孩怕,輸入你的用戶名和密碼進入終端,和圖形界面上的終端一樣的使用。通過top或者htop找到你要kill的PID:
kill -9 PID
然后再top或者htop一下,看看內存還在不在。
還在的話切換回圖形界面Ctrl + Alt + F7
要是你問我Ctrl + Alt + F1都沒有反應怎么辦,等我遇到了再說。
....沒想到這么快就遇到了,徹底卡死,只好按關機鍵暴力重啟了=_=tmux
https://linuxize.com/post/getting-started-with-tmux/
分屏之后如果要調整各屏幕的大小:
Ctrl+b+Alt+↑向上調整,↓就向下調整,左右同理。
要退出(但是不關閉)sessions,則Ctrl+b+d,然后想再進入則tmux attach即可一個文件夾里有多少個文件
cd XX/
ls | wc -l在ENA上下載數(shù)據(jù)
下載整個project的序列數(shù)據(jù)用這個腳本試試:
https://github.com/EnzoAndree/getENA
下載samples的metadata:
通過biosample的API獲取json文件,比方說:
https://www.ebi.ac.uk/biosamples/api/samples/SAMEA104228123
response = requests.get('https://www.ebi.ac.uk/biosamples/api/samples/{0}'.format('SAMEA104228123'))
content = response.content.decode('utf-8')
content_js = json.loads(content)['description']
# json.loads(content) 是一個字典,可以在里面找你要的Metadata了
在服務器上安裝conda
參考https://stackoverflow.com/questions/54226763/installing-anaconda-on-server在服務器上運行jupyter lab, 想要用某個conda的kernel
參考這個連接https://medium.com/@nrk25693/how-to-add-your-conda-environment-to-your-jupyter-notebook-in-just-4-steps-abeab8b8d084
conda install -c anaconda ipykernel
python -m ipykernel install --user --name=conda的名稱
重啟一下jupyter lab的kernel,然后在kernel選擇里選擇你的conda即可 (好炫啊...還能這樣搞)在conda里pip install
你想用conda安裝一個包,但是這個包似乎沒有conda安裝的途徑。conda之外是python3.5, conda里是3.6的環(huán)境。你想在conda里安裝3.6的版本。
先進到conda里來:
(condaname)$ python3 -m pip install XXXX --user(在conda里python3是3.6的。 --user是因為我在服務器里,不能sudo)htop kill 進程
F6sort: 按照左邊的提示選擇按照什么來sort,enter
F9選中某個進程之后,快速按兩下F9,按9,看到左邊顯示“Sigkill”,enter即可kill掉該進程Ctrl + Z
將正在運行的東西掛起(stopped),然后按fg 后回車恢復。在服務器上用別人的conda
問到別人conda的路徑:
conda activate /XX/username/anaconda/envs/conda_name/print出一個directory里有多少個file
ls -1 | wc -l把shell中的Output輸出到file
$ cmd... >> XX.txt是標準輸出,要輸出error:
$ cmd... &>> XX.txt
