shell环境设定

shell也是应用程序,工作于用户模式;运行为进程;


shell进程用于提供命令行界面:提供一系列工作特性,有些特性可以自行设定;


bourn: shell, bsh --> sh

BSD: Berkeley System Distribution, csh


korn --> ksh


bash --> Bourn Again SHell, bash


/etc/shells: tcsh, dash

/sbin/nologin: 不能登录

# useradd -s /sbin/nologin mongodb


解释器:

理解其它命令,并且让命令执行起来;

理解语句,并且能根据流程控制机制让语句按需执行;


编译器:

理解源程序,并且能够将源程序转换为二进制格式,而后让其够执行;


程序文件:源代码

解释器:

由解释器负责读取一句执行一句;

编译器:

事先,将整个程序转换成二进制格式,而后执行;


程序开发语言:

解释型语言:perl, python, ruby, bash

也称为动态语言

编译型语言:C, C++, C#

也称为静态语言


变量:内存空间,可用于存储数据

变量类型:数据存储格式,数据表示范围;

整型

浮点型

字符型

布尔型


整数:11, 4bits, 8bits

1011

字符:ASCII, 所有基本字符共128个,至少7bits来表示所有的基本字符;

1:8bits

1: 8bits

浮点:11.00,近似值

单精度

双精度


要使用变量,其步骤通常是:

1、声明:要指定其类型;

声明的同时,给其一个初始值,这个叫做变量的初始化;

2、赋值:

int V=3;


bash: 交互式接口,提供编程环境


变量:

弱类型语言:

1、不强制区分变量类型,无论存储什么数据,默认均以字符格式存储;

2、不需要事先声明;用到时,直接使用,直接赋值;


定义变量:

[set] VAR_NAME=Value


引用变量:

${VAR_NAME}


撤消变量:

unset VAR_NAME


bash变量类型:

本地变量:只对当前shell进程有效;对其子shell及其它shell都无效;

局部变量:local VAR_NAME=Value,仅对局部代码有效,其作用范围不包括当前shell的所有位置;

环境变量:export VAR_NAME=Value, 对当前shell及其子shell有效;

位置变量:$1, $2, ...

特殊变量:$$, $!, $#, $?


bash变量也可声明,甚至可以指定类型:declare

declare -i VAR_NAME: 声明一个整型变量

declare -x VAR_NAME: 声明一个环境变量

declare -a VAR_NAME: 声明一个数组


bash查看环境变量的命令:

printenv

export


查看所有变量:

set


变量引用:${VAR_NAME}

变量替换:只有在双引号中才能实现,


bash的引号:

双引号:弱引用,可以实现变量替换;

单引号:强引用,不替换,而显示字符串本身;

反引号:命令引用, ``, $()

`date`



bash特性:

变  量

快捷键

命令别名

命令行展开:{}, ~

管道

输入、输出重定向

编程

命令行补齐

路径补全



bash的快捷键:

Ctrl+a: 跳至命令行首

Ctrl+e:           尾

Ctrl+u: 删除命令行首至当前光标所在处的内容

Ctrl+k: 删除当前光标所有处至命令行尾的内容

Ctrl+l: 清屏,相当于clear命令

Ctrl+c: 取消或终止;

Ctrl+z: 将当前命令送至后台


你可能感兴趣的:(shell,用户模式,环境设定)