一个计算机技术爱好者与学习者

0%

Shell简介

Shell 是什么?
Shell 这个单词的原意是“外壳”,跟 kernel(内核)相对应,比喻内核外面的一层,即用户跟内核交互的对话界面。

具体来说,Shell 这个词有多种含义。

首先,Shell 是一个程序,提供一个与用户对话的环境。这个环境只有一个命令提示符,让用户从键盘输入命令,所以又称为命令行环境(command line interface,简写为 CLI)。Shell 接收到用户输入的命令,将命令送入操作系统执行,并将结果返回给用户。

其次,Shell 是一个命令解释器,解释用户输入的命令。它支持变量、条件判断、循环操作等语法,所以用户可以用 Shell 命令写出各种小程序,又称为脚本(script)。这些脚本都通过 Shell 的解释执行,而不通过编译。

最后,Shell 是一个工具箱,提供了各种小工具,供用户方便地使用操作系统的功能。

对于用户来说,Shell是最重要的实用程序,深入了解和熟练掌握Shell的特性极其使用方法,是用好Unix/Linux系统的关键。可以说,Shell使用的熟练程度反映了用户对Unix/Linux使用的熟练程度。

Shell 有两种执行命令的方式:
交互式(Interactive):解释执行用户的命令,用户输入一条命令,Shell就解释执行一条。
批处理(Batch):用户事先写一个Shell脚本,其中有很多条命令,让Shell一次把这些命令执行完。

Shell脚本是解释型语言,不需要编译。Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。

Unix/Linux 上常见的 Shell 脚本解释器有 bash、sh、csh、ksh 等,习惯上把它们称作一种Shell。我们常说有多少种 Shell,其实说的是 Shell 脚本解释器。

Bash 是大多数 Linux 标准默认的 Shell,因此是我们学习的重点。

参考文档:

阅读全文 »

bash_profile和bashrc是啥?

bash_profile和bashrc都是linux里的初始化脚本,作用是对shell环境进行初始化。在安装和配置软件的时候,经常需要修改这两个配置文件,以便每次登录自动生效或者每次执行脚本都自动生效。

这两个文件的区别是什么?它们有什么联系?什么情况下需要修改bash_profile?什么情况下需要修改bashrc?本文就来详细了解一下,主要引用阮一峰大佬的Bash 启动环境

阅读全文 »

前言

如果只是想要一个tomcat环境,很简单,直接拉取一个tomcat镜像就可以了。
本文中,我们在centos7镜像的基础上,学习使用Dockerfile构建Tomcat镜像。同时会对比手工构建镜像和使用Dockerfile构建镜像的不同,以便更好地理解构建过程。

阅读全文 »

什么是Dockerfile?

正如《Docker入门篇》一文中所说,容器技术包括容器镜像和容器运行时。其中容器镜像是一个软件集装箱,包含软件运行需要的所有文件。
那么,怎样制作一个容器镜像呢?两个方法:第一个方法是修改容器运行时,然后提交修改变成新容器镜像。第二个方法就是使用Dockerfile。

Dockerfile是一个文本文档,其中包含一些指令(类似于shell命令)。Docker可以通过阅读Dockerfile中的指令,来自动构建镜像。

更多内容,参考Dockerfile reference菜鸟Docker DockerfileDockerfile 使用介绍

本文,我们就来学习一下Dockerfile的编写和使用。

阅读全文 »