Shell俗称壳

shell

 

(计算机壳层)

编辑 锁定

 
在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于 DOS下的command和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。
 
中文名
外文名
shell
性    质
命令解析器
用    途
接收用户命令

shell术语

编辑
window7中包含的shell window7中包含的shell
同时它又是一种 程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在 高级语言中才具有的控制结构,包括循环和分支。
排序算法中,Shell是 希尔排序的名称。
基本上shell分两大类:
一:图形界面shell(Graphical User Interface shell 即 GUI shell)
例如:应用最为广泛的 Windows Explorer (微软的windows系列操作系统),还有也包括广为人知的 Linux shell,其中 linux shell 包括 X window manager (BlackBox和FluxBox),以及功能更强大的CDE、GNOME、KDE、 XFCE。
二:命令行式shell(Command Line Interface shell ,即CLI shell)
例如:
bash / sh / ksh / csh(Unix/linux 系统)
MS-DOS系统)
cmd.exe/ 命令提示字符( Windows NT 系统)
Windows PowerShell(支援 .NET Framework 技术的 Windows NT 系统)
传统意义上的shell指的是命令行式的shell,以后如果不特别注明,shell是指命令行式的shell。
文字操作系统与外部最主要的接口就叫做shell。shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。
shell提供了你与操作系统之间通讯的方式。这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被重复使用。本质上,shell script是命令行命令简单的组合到一个文件里面。
Shell基本上是一个命令 解释器,类似于 DOS下的command。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourne shell (sh)和C shell (csh)。
交互式shell和非交互式shell
交互式模式就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。当你签退后,shell也终止了。
shell也可以运行在另外一种模式:非交互式模式。在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。
shell的类型
UNIX中主要有:
Bourne shell (包括 sh,ksh,and bash)
Bourne shell ( sh)
Korn shell ( ksh)
Bourne Again shell ( bash)
POSIX shell ( sh)
C shell (包括 csh and tcsh)
C shell ( csh)
TENEX/TOPS C shell ( tcsh)
Bourne Shell
首个重要的标准Unix Shell是1970年底在V7 Unix(AT&T第7版)中引入的,并且以它的创始科技部基础条件平台“国家气象网络计算应用节点建设”(2004DKA50730)资助者Stephen Bourne的名字命名。Bourne shell 是一个交换式的命令 解释器和命令编程语言。Bourne shell 可以运行为login shell或者login shell的子shell(subshell)。只有login命令可以调用Bourne shell作为一个login shell。此时,shell先读取/etc/profile文件和$HOME/.profile文件。/etc/profile文件为所有的用户定制环境,$HOME/.profile文件为本用户定制环境。最后,shell会等待读取你的输入。
C Shell
Bill Joy于20世纪80年代早期,在伯克利的 加利福尼亚大学开发了C shell。它主要是为了让用户更容易的使用交互式功能,并把ALGOL风格的语法结构变成了C语言风格。它新增了命令历史、别名、文件名替换、 作业控制等功能。
Korn Shell
有很长一段时间,只有两类shell供人们选择,Bourne shell用来编程,C shell用来交互。为了改变这种状况,AT&T的bell实验室David Korn开发了Korn shell。ksh结合了所有的C shell的交互式特性,并融入了Bourne shell的语法。因此,Korn shell广受用户的欢迎。它还新增了数学计算,进程协作(coprocess)、行内编辑(inline editing)等功能。Korn Shell 是一个交互式的命令解释器和命令编程语言.它符合POSIX——一个操作系统的国际标准.POSIX不是一个操作系统,而是一个目标在于应用程序的移植性的标准——在 源程序一级跨越多种平台。
Bourne Again Shell (bash)
bash是 GNU计划的一部分,用来替代Bourne shell。它用于基于GNU的系统如Linux.大多数的Linux(Red Hat,Slackware,Caldera)都以bash作为缺省的shell,并且运行sh时,其实调用的是bash。
POSIX Shell
POSIX shell 是Korn shell的一个变种. 当前提供POSIX shell的最大卖主是 Hewlett-Packard。在HP-UX 11.0,POSIX shell 就是/bin/sh,而 bsh是/usr/old/bin/sh.
各主要操作系统下缺省的shell:
AIX下是Korn Shell.
Solaris缺省的是Bourne shell.
FreeBSD缺省的是C shell
HP-UX缺省的是POSIX shell.
Linux是Bourne Again shell.
Windows PowerShell是一种新的交互式的命令行和基于任务脚本编写技术,它使信息技术(IT) 管理员能够全面地自动操作和控制系统管理任务,从而提高了管理员的生产力。Windows PowerShell 包括多个系统管理实用工具、一致的语法和命名惯例、及对普通管理数据更好地导航,如登记、证书存储 或 Windows Management Instrumentation (WMI)。Windows PowerShell 还专门针对 IT 管理,提供直观的 脚本编写语言。
Shell也是一个VB函数,它的作用是运行程序,语法是Shell(命令字符串[,窗口类型])

shellshell 命令

编辑
常用命令
cat 文件名 输出文件内容到基本输出(屏幕 or 加>fileName 到另一个文件)
cb 格式化 源代码
chmod //change mode,改变文件的权限
cp copy
date 当前的时间和日期
echo $abc 在变量赋值之后,只需在变量前面加一个$去引用.
lint 语法检查程序
ls dir
man help
more type
du 查看磁盘空间状况
ps 查看当前进程状况
who 你的用户名和终端类型
定义变量 name=abc? (bash/pdksh) || set name = abc (tcsh)
mkdir 创建目录
rmdir 删除目录
cd 进入目录
rm 删除文件
more 显示文件
echo 显示指定文本
mv 改文件名 /移动文件
pwd 显示目录路径命令

shell用途

编辑
使用用户的缺省凭证和环境执行 shell。
在UEFI环境下,EFI的Shell环境提供了一组丰富的扩展和增强的命令,在以后的计算机中,传统的DOS界面将会被SHELL环境所取代,所有的.exe文件将不会在以后支持SHELL的环境中出现,取而代之的文件后缀是.efi。在SHELL环境下,分为IA32和X64,32位的*.efi文件不能在X64的计算机中运行。

shell单词Shell

编辑
shell
n.
1. 壳,果壳;荚[C][U]
2. 贝壳,甲[C][U]
3. 壳状物;外壳;套,罩[C]
4. 有甲壳的软体动物[C]
5. 缄默;冷淡,矜持[C]
6. 锥形小啤酒杯[C]
7. (计划等的)梗概,轮廓[C]
8. 炮弹;lie qiang子弹;弹壳[C]
9. 轻快的赛艇[C]
10. (房屋的)骨架[C]
11. (人的)躯壳[C]
12. 地壳;薄硬岩层[C]
13. 【电脑】壳, UNIX操作系统中的一部分,是使用者与系统的界面
vt.
1. 剥...的壳;剥
2. 为(麦穗等)去壳
3. 用 贝壳铺;给...装壳体
4. 炮轰;射击
vi.
1. (种子等) 脱壳
2. (金属等)剥落,成碎片落下[(+off)]

shell描述

编辑
shell 命令重新初始化用户的登录会话。当给出该命令时,就会重新设置进程的控制终端的端口特征,并取消对端口的所有访问。然后 shell 命令为用户把进程凭证和环境重新设置为 缺省值,并执行用户的初始程序。根据调用进程的登录 用户标识建立所有的凭证和环境。
如果在可信路径上调用 shell 命令,并且 /etc/security/user 文件中用户的 tpath 属性没有 always 值,那么就不维护终端的可信环境。
注:shell 命令不会重新设置用户的登录标识。
安全性
访问控制:该命令应该被 setuid 为 root 用户,以重新设置用户的进程凭证、授权执行(x)访问所有用户。该命令应该具有可信计算库属性。
文件访问:
方式 文件
r /etc/passwd
r /etc/group
r /etc/security/audit/config
r /etc/security/environ
r /etc/security/limits
r /etc/security/user
审计事件:
事件 信息
USER_Shell portname

shell示例

编辑
要在使用可信 shell(tsh)之后将会话重新初始化为缺省凭证和环境,请输入:
shell

shell文件

编辑
/usr/bin/shell 包含 shell 命令。
/etc/security/user 包含用户的扩展属性。
/etc/passwd 包含 用户标识
/etc/group 包含组标识。
/etc/security/audit/config 包含审计配置信息。
/etc/security/environ 定义用户的环境属性。
/etc/security/limits 定义每个用户的进程资源限制。
希尔(Shell)排序
希尔(Shell)排序是D.L.Shell于1959年提出的,他属于 插入排序方法,是不稳定的排序方法。
示例如下:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//希尔排序兄弟们
#include "iostream.h"
#include <process.h>
//using namespace std;//使用命名空间时,要将头文件中的.h去掉
#define N 50
void  shell_sort( int  a[], int  len)
{
     int  h,i,j,temp;
     for (h=len/2; h>0; h=h/2) //控制增量
     {
         for (i=h; i<len; i++) //这个for循环就是前面的直接插入排序
         {
             temp=a[i];
             for (j=i-h; (j>=0&&temp<a[j]); j-=h) //循环打印数组的每个元素
             {
                 a[j+h]=a[j];
             }
             a[j+h]=temp;
         }
     }
}
 
void  print_array( int  a[],  int  len)
{
     for ( int  i=0; i<len; i++)
     {
         cout<<a[i]<< "" ;
     }
     cout<<endl;
}
 
void  main()
{
     int  a[N];
     int  b;
     int  M;
     cout<< "请输入要排序的数目" <<endl;
     cin>>M;
 
 
     cout<< "请输入要排序的数" <<endl;
     for ( int  i=0;i<M;i++)
     {
         cin>>b;
         a[i]=b;
     }
     cout<< "beforeshellsort:" ;
     print_array(a,M);
     shell_sort(a,M); //进行shell排序
     cout<< "aftershellsort:" ;
     print_array(a,M);
     //return0;
     system ( "pause" );
}
这段代码在VC++ 6.0下编译通过

shellVB语句

编辑

shell含义

执行一个 可执行文件,返回一个 Variant ( Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。

shell语法

Shell(pathname[ ,windowstyle] )
Shell 函数的语法含有下面这些命名参数:
部分
描述
pathname
必要参数。 Variant ( String),要执行的程序名,以及任何必需的参数或命令行变量,可能还包括目录或文件夹,以及驱动器。
Windowstyle
可选参数。 Variant ( Integer),表示在程序运行时窗口的样式。如果 windowstyle 省略,则程序是以具有焦点的最小化窗口来执行的。
windowstyle 命名参数有以下这些值:
常量
描述
vbHide
0
窗口被隐藏,且焦点会移到隐式窗口。
VbNormalFocus
1
窗口具有焦点,且会还原到它原来的大小和位置。
VbMinimizedFocus
2
窗口会以一个具有焦点的图标来显示。
VbMaximizedFocus
3
窗口是一个具有焦点的最大化窗口。
VbNormalNoFocus
4
窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
VbMinimizedNoFocus
6
窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。

shell说明

如果 Shell 函数成功地执行了所要执行的文件,则它会返回程序的任务 ID。任务 ID 是一个唯一的数值,用来指明正在运行的程序。如果 Shell 函数不能打开命名的程序,则会产生错误。
注意 缺省情况下, Shell 函数是以异步方式来执行其它程序的。也就是说,用 Shell 启动的程序可能还没有完成执行过程,就已经执行到 Shell 函数之后的语句。

shell函数示例

示例一:
本示例使用 Shell 函数来完成一个用户指定的应用程序。
' 将第二个参数值设成1,可让该程序以正常大小的窗口完成,并且拥有焦点。 Dim RetValRetVal = Shell("C:\WINDOWS\CALC.EXE", 1) ' 完成Calculator。
示例二:
使用shell脚本调用linux中当前时间,并记录在log文件中,10秒后再次记录时间。
?
1
2
3
date >> /tmp/data .log
sleep10
date >> /tmp/data .log

Windows 元件

核心组件
Aero ClearType 桌面视窗管理员 DirectX
档案总管 任务栏 开始选单 Shell
特殊资料夹 文件关联 搜索 iFilters
图形设备接口 WIM 新一代TCP/IP通讯堆栈 .NET Framework
音效 打印 WSH JScript
组件对象模型 COM自动化 DCOM ActiveX
结构化储存 微软交易服务器(MTS) COM+  
 
管理工具
备份与还原中心 command.com Cmd.exe 控制面板
装置管理员 磁盘清理 磁盘重组工具 Driver Verifier
事件检视器 管理主控台 问题报告及解决方案 Sysprep
任务管理器 系统档案检查器 系统还原 Windows Installer
PowerShell Windows Update Windows系统评估工具 轻松传输
资源回收筒    
 
基本应用程序
小算盘 行事历 CD 播放程序 字符映射表
联络人 DVD 制作程序 传真和扫描 Internet Explorer
笔记本 Mail Outlook Express 放大镜
媒体管理中心 会议空间 Windows Mobile 装置中心 行动中心
Movie Maker 朗读程序 记事本 画图
相片图库 TrueType 造字程序 远端桌面协定 侧边栏
剪取工具 录音机 系统组态工具 Unix子系统
Windows Media Player Windows Speech Recognition WordPad Windows Messenger
剪贴簿    
 
内核
Ntoskrnl.exe 硬件抽象层 系统闲置行程 注册表
Svchost.exe Windows service 服务控制管理员 WOW
WOW64 DLL 可携式可执行档 NTLDR
启动管理员 Winlogon 复原主控台 Windows Vista I/O 技术
Windows还原环境 Windows预先安装环境 Kernel Patch Protection Windows系统函式库
 
服务
自动执行 智慧型背景传输服务 工作排程器 无线零组态服务
磁盘区阴影复制服务 Windows错误报告 多媒体类别排程服务 共同记录档案系统
SQL Server Data Services    
 
文件系统
NTFS Junction point 卷册挂载点 Reparse point
NTFS符号连线 可交易式NTFS(TxF) 加密档案系统 FAT32·FAT16·FAT12
exFAT 光碟文件系统 通用光碟格式 分散式文件系统
可安装文件系统    
 
服务器端
Windows网域 活动目录 DNS 群组原则
漫游式使用者设定档 分散式交易协调器 MSMQ SharePoint Services
Windows Media Services Rights Management Services IIS Terminal Services
Windows软件更新服务 网络访问保护技术 DFS Replication 远端差异压缩
Unix打印服务 Hyper-V   
 
架构
NT系统架构 物件管理员 启动流程 Kernel Transaction Manager
磁盘管理 安全帐户管理员(SAM) 资源保护子系统 本地安全认证子系统服务(LSASS)
主从式执行期子系统 行程管理员子系统   
 
安全
Active Directory 使用者帐户控制 BitLocker Security Essentials
资料执行防止 Protected Media Path Mandatory Integrity Control 使用者接口权限隔离
防火墙 资讯安全中心   
 
游戏
Chess Titans 新接龙 伤心小栈 德州扑克
笔迹球 Mahjong Titans 踩地雷 Purble Place
接龙 连环新接龙 Microsoft Tinker 立体弹珠台
 

《everything in the world》专辑曲目

《Wanting》专辑曲目

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值