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: 将当前命令送至后台



     本文转自ljl_19880709 51CTO博客,原文链接:http://blog.51cto.com/luojianlong/1362325 ,如需转载请自行联系原作者




相关文章
|
Java Shell 网络安全
springboot 远程调用shell脚本,环境为windows
本文是博主学习SpringBoot的记录,希望对大家有所帮助。
960 0
springboot 远程调用shell脚本,环境为windows
|
8月前
|
Java Linux Shell
Linux开发和编程指南:搭建环境、Shell脚本与常见编程语言配置及使用
Linux开发和编程指南:搭建环境、Shell脚本与常见编程语言配置及使用
745 0
|
5月前
|
关系型数据库 MySQL Shell
MySQL【实践 01】Linux 环境 MySQL 数据库备份 shell 脚本(脚本源码及说明+定时任务配置+数据库恢复测试)粘贴可以
MySQL【实践 01】Linux 环境 MySQL 数据库备份 shell 脚本(脚本源码及说明+定时任务配置+数据库恢复测试)粘贴可以
52 0
|
10月前
|
Shell 网络安全 Go
分享我的 Shell 环境,git 操作效率提升 100% !
本文分享我在工作中常用的环境变量 + Shell alias:比如 `git add .` 这样的命令,我只需要敲 `ga` 就好了!
52 0
|
11月前
|
Shell
Shell脚本一键配置LAMP环境-脚本实例和解释
Shell脚本一键配置LAMP环境-脚本实例和解释
90 0
|
Shell Linux 开发工具
自用easyswoole 环境部署shell脚本
自用easyswoole 环境部署shell脚本
64 0
|
存储 Kubernetes Shell
使用 shell 脚本二进制部署 k8s 环境 [支持 docker 和 containerd]
使用 shell 脚本二进制部署 k8s 环境 [支持 docker 和 containerd]
344 1
|
开发框架 .NET 应用服务中间件
|
关系型数据库 Shell MySQL
shell 脚本自动编译安装网站环境 nginx1.9.9 php7/8 mariadb10.11 c++ cgi-bin
1.ubuntu 搭建 nginx199 php-fpm7/8 mariadb10.11 c++ cgi-bin 2.mysql 重置 root 密码,创建 或删除 mysql 子库和子用户 3. ubuntu 搭建 c++ cgi-bin 4.自动生成 wwwconf 子站点 5. 建议选择 ubuntu20.04 版本
328 0
|
Shell
识别Shell环境类型
识别Shell环境类型
81 0
识别Shell环境类型