首先我们先来看看我们系统上有那些shell
$ cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/screen
在这里我们主要来介绍Linux下预设的Bash shell的功能
再这先介绍一个自定义别名的命令alias,它可以自定义一个命令代替一个过长的命令
alias lm='ls -al'
就可以用lm代替上面的命令
下面来介绍本文的重点,shell下查看内部还是外部指令;
下面通过代码来演示以下效果:
type cat
cat is /bin/cat
加-t
type -t cat
file
type cd
cd is a shell builtin
可以看到这时一个shell内部命令
其他的大家可以自己试试来观察效果。
接下来我们来介绍本文的另一个重点--变量
首先我们自己定义一个变量
name="kkk"
下面我们就可以使用自定义的变量name
echo $name
kkk
但当我们在不同的脚本下时,变量name就不灵了,如下
echo $name
//什么都没有
然后用exit命令退回原先bash,那我们就可以用以下命令指定name为环境变量
export name
然后在不同的bash我们也能使用我们定义的变量了,当我们不想用变量那么时可以执行下面命令:
unset name
然后我们在看看shell下的环境变量,输入env,查看环境变量,然后用下面指令可以查看你想看的环境变量:
echo $SHELL
/bin/bash
当输入以上命令时,执行可以看到想看的环境变量在那个路径下
也可以用read+变量名,然后出现空白行,等待你的输入,代替name="hhh",效果都是一样
大家快去试试吧。