简介
Bash 是 Unix 系统和 Linux 系统的一种 Shell(命令行环境),是目前绝大多数 Linux 发行版的默认 Shell。
shell的种类
- Bourne Shell(sh)
- Bourne Again shell(bash)
- C Shell(csh)
- TENEX C Shell(tcsh)
- Korn shell(ksh)
- Z Shell(zsh)
- Friendly Interactive Shell(fish)
bash是最常用的shell。
#查看shell种类 $ echo $SHELL /bin/bash
进入与退出方法
#进入
$ bash
#退出
$ exit
查看当前所在目录
$ pwd
/home/me
常用命令1:文件管理
1.1 cat 命令
用于连接文件并打印到标准输出设备上
#把file1的文档内容加入行号输入到file2 $ cat -n file1.txt>file2.txt #把file1的文档内容加入行号(空白行不加)输入到file2 $ cat -b file1.txt>file2.txt
1.2 less 命令
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件
#查看文件 $ less log2013.log #查看进程信息通过less分页显示 $ ps -ef | less #浏览多个文件,输入n切换到log2014 输入p切换到log2013.log $ less log2013.log log2014.log
1.3 more 命令
以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。
#一次显示3行 $ more -3 file.txt #从第三行开始显示file文档内容 $ more +3 file #逐页显示file文件内容,如有连续两行以上空白行则以一行空白行显示 $ more -s file
1.4 mv 命令
用来为文件或目录改名、或将文件或目录移入其它位置
#将文件 aaa 更名为 bbb $ mv aaa bbb #将info目录放入logs目录中。注意,如果logs目录不存在,则该命令将info改名为logs $ mv info/log #再如将/usr/student下的所有文件和目录移到当前目录下 $ mv /user/student/*
1.5 tail 命令
#显示文件aaa.txt文件的最后100行 $ tail -n 100 aaa.txt
1.6 vi 命令
#编辑文件file $ vi file
--- 退出编辑:
输入命令的方式为先按[ESC]键,然后输入
- :w(写入文件)
- :w!(不询问方式写入文件)
- :wq(保存并退出)
- :q(退出)
- q!(不保存退出)
常用命令2:文件、目录操作命令
2.1 ls 命令
功能:显示文件和目录的信息
#以默认方式显示当前目录文件列表 $ ls #显示所有文件包括隐藏文件 $ ls -a # 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行 $ ls -l #显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G) $ ls -lh #显示文件,按照修改时间排序 $ ls -lt
2.2 cd命令
#切换到当前目录下的dir目录 $ cd dir #切换到根目录 $ cd / #切换到到上一级目录 $ cd .. #切换到上二级目录 $ cd ../.. #切换到用户目录,比如是root用户,则切换到/root下 $ cd ~
2.3 cp命令
copy文件
#将文件source复制为target $ cp source target #将/root下的文件source复制到当前目录 $ cp /root /source #将整个目录复制,两目录完全一样 $ cp –av soure_dir target_dir
2.4 rm命令
功能:删除文件或目录
#删除某一个文件 $ rm file #删除时候不进行提示。可以于r参数配合使用 $ rm -f file #删除当前目录下叫dir的整个目录 $ rm -rf dir
2.5 mv命令
将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令
#将文件source更名为target $ mv source target
2.6 diff
#比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出 $ diff dir1 dir2 #比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的 $ diff file1 file2 #比较文件,显示两个文件不相同的内容 $ comm file1 file2
常用命令3:显示操作历史命令
#所有的操作前加上行号,最近的操作在最后面,行号最大 $ history ... 498 echo Goodbye 499 ls ~ 500 cd #搜索某个以前执行的命令,可以配合grep命令搜索操作历史 $ history | grep /usr/bin #清除历史 $ history -c
正则表达式规则
详情请查看:http://tool.oschina.net/uploads/apidocs/jquery/regexp.html