()与{}差在哪?
嗯,这次轻松一下,不讲太多… ^_^
先说一下,为何要用()或者{}好了。
许多时候,我们在shell操作上,需要在
一定的条件下执行多个命令,也就是说,
要么不执行,要么就全执行,而不是每次
依序的判断是否要执行下一个命令。
或者,要从一些命令执行的先后次序中得到结果,
如算术运算的2*(3+4)那样…
这时候,我们就可以引入”命令群组
“(command group
)
的概念:将许多命令集中处理。
No one can escape
()与{}差在哪?
嗯,这次轻松一下,不讲太多… ^_^
先说一下,为何要用()或者{}好了。
许多时候,我们在shell操作上,需要在
一定的条件下执行多个命令,也就是说,
要么不执行,要么就全执行,而不是每次
依序的判断是否要执行下一个命令。
或者,要从一些命令执行的先后次序中得到结果,
如算术运算的2*(3+4)那样…
这时候,我们就可以引入”命令群组
“(command group
)
的概念:将许多命令集中处理。
exec跟source差在哪?
这次让我们从CU shell版的一个实例帖子来谈起吧:
例中的提问原文如下:
帖子提问:
cd /etc/aa/bb/cc可以执行
但是把这条命令放入shell脚本后,shell脚本不执行!
这是什么原因?
意思是:运行shell脚本,并没有移动到/etc/aa/bb/cc目录。
问var=value 在export前后的差在哪?
这次让我们暂时丢开command line
,
先了解一下bash变量(variable)吧…
所谓的变量,就是利用一个固定的”名称”(name),
来存取一段可以变化的”值”(value)。
“”(双引号)与’’(单引号)差在哪?
还是回到我们的command line
来吧…
经过前面两章的学习,应该很清楚当你在shell prompt
后面敲打键盘,
直到按下Enter
键的时候,你输入的文字就是command line
了,
然后shell
才会以进程的方式执行你所交给它的命令。
但是,你又可知道:你在command line
中输入的每一个文字,
对shell
来说,是有类别之分的呢?
简单而言,(我不敢说精确的定义,注1),command line
的每一个charactor
, 分为如下两种:
shell
来说没特殊功能;shell
来说,具有特定功能的特殊保留元字符。别人echo、你也echo,是问echo知多少?
承接上一章介绍的command line
, 这里我们用echo
这个命令加以进一步说明。
温习
标准的command line
三个组成部分:command_name option argument
echo
是一个非常简单、直接的Linux命令:
|
|
echo
将argument送出到标准输出
(stdout
),通常是在监视器(monitor)上输出。
shell prompt(PS1)与Carriage Return(CR)关系
当你成功登陆一个shell终端的文字界面之后,大部分的情形下,
你会在屏幕上看到一个不断闪烁的方块或者底线(视不同的版本而别),
我们称之为游标
(cursor
).cursor
作用就是告诉你接下来你从键盘输入的按键所插入的位置,
且每输入一个键,cursor
便向右移动一个格子,
如果连续输入太多的话,则自动接在下一行输入。
假如你刚完成登陆,还没有输入任何按键之前,
你所看到的cursor
所在的位置的同一行的左边部分,我们称之为提示符
(prompt
)。
何为shell?
shell
是什么东西之前,不妨让我们重新审视使用者
和计算机系统
的关系:
(此处为使用者和计算机系统的关系图)
我们知道计算机的运作不能离开硬件,但使用者却无法直接操作硬件,
硬件的驱动只能通过一种称为“操作系统
(OS
,Opertating System
)”的软件来管控。
事实上,我们每天所谈的“linux
”,严格来说只是一个操作系统
(OS
),
我们称之为“内核
(kernel
)”。
然而,从使用者的角度来说,使用者没有办法直接操作一个kernel
,
而是通过kernel
的“外壳”程序,也就是所谓的shell
,来与kernel
沟通。
这也正是kernel
跟shell
的形象命名的的关系。如图:
(此处为kernel–>shell关系图;)
完全开源、极致省力、界面美观、功能完整
–JumpServer的特性
Jumpserver Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。
共产主义是一种伪科学, 演变成一种伪宗教, 最终表现为僵化的集权式的邪恶政治集团!
Richard Pipes (《共产主义实录》作者)
Linux系统是一个多用户、多任务的操作系统
任何一个要想使用系统内部资源的用户,必须首先向Linux系统管理员申请一个账号,然后以这个用户的身份登录到系统中。这个账号一方面可以帮助系统管理员对使用系统的用户进行管理,并限制他们对系统资源的访问;另一方面也可以为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的口令。用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。
Linux下用户是根据角色定义的,具体分为三种角色:
用户和用户组的对应关系有:一对一、一对多、多对一和多对多。
下图展示了这种关系:
首先需要在购买的VPS上安装Python
、pip
和shadowsocks
yum install python-setuptools && easy_install pip
pip install shadowsocks