Linux学习笔记(一):命令类型与常用命令

内部命令与外部命令

内部命令是 shell 程序的一部分,其中包含的是一些比较简单的 linux 系统命令,这些命令由shell程序识别并在 shell 程序内部完成运行,通常在 Linux 系统加载运行时 shell 就被加载并驻留在系统内存中。内部命令是写在 bash 源码里面的,其执行速度比外部命令快,因为解析内部命令 shell不需要创建子进程。比如:exit, history, cd, echo等。 外部命令是 Linux 系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。通常外部命令的实体并不包含在 shell 中,但是其命令执行过程是由 shell 程序控制的。shell 程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在 bash 之外额外安装的,通常放在/bin, /usr/bin, /sbin,/usr/sbin 等位置。 使用type命令可以区分内部命令

type cd  
cd is a shell builtin

type -a ls
ls is aliased to `ls --color=tty'
ls is /bin/ls

可以看出,cd是内部命令而ls是外部命令。

常用命令

ls: list cd 切换目录
~: 切换到家目录,cd不加任何参数也可以实现相同的效果。
~[USERNAME]: 切换到指定用户的家目录
-:切换到上一次的目录
type 查看命令类型
man 查看mannual
info 在线文档
/usr/share/doc 文档
date 日期
cal 日历

vim

SPACE 下一屏
ENTER 下一行
k 前一屏
b 前一行

/keyword 向后查找
?keyword 向前查找
n 下一个
N 前一个