【linux】学习笔记Chap_13_Shell_variable
【linux】学习笔记Chap_13_Shell_variable
子进程或子shell
在登陆后的shell可以作为父shell
如果输入vi 命令 进入 另一个进程 则称为子进程
如果输入 bash 也可以创建一个新的shell 也是子sell
global and local 变量
像IGNOREEOF就是全局变量,他们可以用于任何进程 而且变量唯一
环境变量全部用大写表示 一般以小写命令局部变量(shell)变量
全部变量既是shell 也是 environment 变量不存在单纯的环境变量
想比较单纯shell变量和全部变量可以使用env
若只在set中,不在env中就是纯shell变量 (set中变量也比env多)
两者都在的就是全部变量
默认创建的变量都是shell变量
创建环境变量-----export
export 来创建一个shell + environment 变量
1 | lthero=smart |
即可生效
或
1 | lthero=smart;export lthero |
又或
1 | export lthero=smart HOME="/etc/home".... |
查看环境变量-----env
env 可以查看全部的默认变量(环境变量)
用set 可以查看全部的shell 变量
删除变量
unset 删除一个变量
unset lthero HOME 只能用unset or un-export 删除shell&环境变量
echo 引号用法
echo '……'单引号内容的
"……"双引号内$() 可以起作用 $()表达执行某个命令
用\连接长内容
echo test stetz stet \
test test … \
可以换行 但内容是相连的,输出不会有换行
用引号连接长内容
echo **’**test stets stet
etste**’**
或者用"" 内容会保留输入格式 即有换行
命令分类
internal(builtin)内部原生命令
shell会查找命令的程序位置再执行
external外部命令
shell 会在 PATH这个环境变量中,优先查找外部命令程序位置
echo $PATH 可以查看全部外部命令存入位置 可以自己再添加 /bin:/usr/bin: … 用冒号分隔
type检测命令类型
可以用type 检测所用命令是否为原生命令
type date time set
一次查三个
date is /bin/date
time is a shell keyword //time 是keyword 也是原生在shell内部的命令
set is a shell builtin //原生命令
命令help
help 可以列出全部的builtin命令 其中 help也是builtin命令
对于内置命令,可以查看基本用法
” help 命令“ 和“命令 --help”一样
help -s pwd 将只显示其选项 参数
对于外置命令,用
“命令 --help”
export----添加自定义路径
对于已经设置好的PATH 可以用export 添加自己的路径
1 | exprot PATH="$PATH:/usr/bin/myfile" |
其中 myfile 里面可以放入自定义的shell
1 | exprot PATH="/usr/bin/myfile:$PATH" |
此用法将自定义路径添加到前面
添加到前面后,如果自己有同名的内置sh文件,shell 会优先执行自定义的,再执行内置的
设置PATH
1 | exprot PATH="/bin:/usr/bin:/usr/local/bin".... |
设置终端命令符号
在/root/.bashrc
中添加
1 | export PS1="\[\e[33;1m\]\u@\h:\w# \[\e[0m\]" |
32是绿色 33淡黄色
可以设置命令提示符 成为绿色 \u 命令 user \h hostname \w 是当前全路径 \W 只显示当前路径
修改后立即生效source /etc/profile
另外:
vim /etc/motd
可以修改连接上linux对话
如:Hello,Welcome to Linux!
/etc/profile.d
目录下添加自定义sh脚本将连接到linux时执行
上面PS1中的用法是一种特殊写法
\u代表 $USER(环境变量) 当前用户
\w代表$PWD 当前路径
\h代表$(hostaname) 主机名
\d代表date 时间
@代表time 运行时间
!代表历史命令
查看历史记录
history
history 将展示全部的历史记录 如果想要运行某条 num是命令编号
可以!num
将执行那条命令, !!
将自动执行上一条命令
fc
fc 将自动调用vim 编辑器修改命令 修改完成并自动r执行
fc -l 显示历史近20条命令
fc -s num
和 ! num
一样 执行指定命令
fc num
将编辑此命令