Shell就是一个命令语言解释器,用来解释用户的命令,然后去执行linux内核,shell自己内部拥有一些指令集,应用程序也可以调用shell。
1. type 命令(bash内部命令),通过其可以知道每个命令是否为bash内部或者是外部命令;
2. shell的变量功能,比如说不同的用户读有不同的邮箱,而所有的用户只需要知道打开邮箱的命令(而不是自己的特定的邮箱), 那么把用户名设置成变量,在不同的用户登录不同的邮箱;其实理解变量和变成语言中的变量没有什么实质性的区别;
3. 变量的显示和设置:echo,unset;
echo $myname //显示变量myname的内容
unset myname //取消变量myname
4. 环境变量的功能:换将变量可以完成很多功能,包括主文件夹的变换、提示符的显示、执行文件查找的路径等,如果想要知道shell环境中有多少个环境变量,
env就可以查看所有的环境变量;
set 查看所有变量,包括非环境变量;
5. pwd命令 查看当前完整的工作路径;cd进入当前目录
6. cat的三个作用:
1) 一次显示整个文件,cat filename
2) 从键盘上创建一个文件, cat > filename, 创建完成之后键入enter且Ctrl+D就可以退出!
只能创建,不能编辑已有文件
Eg:
$cat <<EOF>> cat.txt
我是一个文件;
我是一个文件
EOF
3) 将几个文件合并成一个文件:cat file1 file2 > file3
cat的参数:
-n 由1开始对所有输出的行数进行编号
-b 和-n相似,只不过对于空白行不编号
-s 当遇到有连续的两行以上的空白行,就代换为一行的空白行
-v 即show-nonprinting
Cat创建文件的几种方法,(之前的内容会覆盖掉!)
1) cat<<EOF 以EOF输入字符为标准输出结束
2) cat>filename 创建文件filename,以ctrl+d作为输入结束 ;要求输入时没有’>’
3) cat>filename<<EOF 以EOF作为输入结束
7. type命令用来显示指定命令的类型,一个命令的类型可以有如下几种:
1) alias
2) keyword,Shell保留字
3) function函数,Shell函数
4) built(bash内建命令),Shell内建命令
5) file,磁盘文件,外部命令
6) unfound
它是Linux系统的一种自省机制,比如:内建命令可以用help获取帮助,外部命令用man或者info获取帮助
type的参数
1) -a 显示所有可能的类型
2) –p只返回外部命令的信息,相当于which命令
3) –f 只返回shell函数的信息
4) –t只返回指定类型的信息
Which命令:当要在Linux上查找某个文件,但是不知道放到哪了,就可以which
它只会在PATH变量指定的路径中去搜索某个系统命令的位置,并且返回第一个搜索结果
注意:不同的PATH下相同的命令,结果肯定不同
Which的参数:
1) –n 指定文件名的长度,指定的长度必须>=所有文件中最长的文件名
2) –p 与-n参数相同,但此处的包括了文件的路径
3) –w 指定输出时栏位的宽度
4) –v 显示版本信息
which which –> 用which去找出which
which cd ->会输出找不到命令 因为cd是bash的内部命令