shell and shell scripts
Unix shell是命令行解释器或shell,可为类Unix操作系统提供命令行用户界面。 shell既是交互式命令语言又是脚本语言,操作系统使用它通过shell脚本来控制系统的执行。
当shell完成执行程序后,它将在屏幕上将输出发送给用户,这是标准输出设备。 因此,它被称为命令解释器。
shell解释器有很多种其中最常用的是bash,Linux中默认的shell是Bourne-Again shell(简称bash)
查看系统中所有的shell解释器
1 | cat /etc/shells |
查看当前的shell解释器
1 | echo $SHELL |
创建shell脚本
shell脚本是一种计算机程序,旨在由Unix shell(命令行解释器)运行。 shell脚本的各种“方言”被认为是脚本语言。 shell脚本执行的典型操作包括文件操作,程序执行和打印文本。
1.使用文本编辑命令如vim
创建shell脚本
1 | vim filename.sh |
2.按i
进入insert模式
3.脚本以#!/bin/bash
开始
4.代码
5.保存脚本文件
6.执行脚本文件bash filename.sh
vim cheat sheet
vim常用
i - 光标前插入模式
Esc - 退出插入模式
:w - 保存文件但不退出文件
:wq or :x or ZZ - 保存并退出文件
:q! or ZQ - 强制退出文件且不保存改动
shell脚本包括:
- 脚本申明:
#!
告知系统用何种shell来解释 - 注释信息:
#
进行注释 - 可执行语句:命令
如果采取在自己电脑上先建了txt文件然后修改后缀为sh,然后直接进行bash的时候会报
1 | $'\r': command not found |
这是由windows电脑上我们看不到的换行符造成的,dos2unix
命令可以修改换行符使得其与Unix兼容。
1 | sudo apt-get install dos2unix |
例如可以用这样一个简单的shell脚本test.sh
,执行bash test.sh
后返回的是当前目录下的所有fasta文件名。
1 |
|