如果你熟悉DOS的话,你可以用dos中的command.com程序来帮助理解shell。它可以被认为是一种简化的shell。shell是用户和linux之间的接口,用户输入的每个命令都是由shell先解释,然后再传给linux内核的。有些命令是shell内建的,就好象dos的内部命令,例如显示当前工作路径命令pwd就是bash内部的;其它命令如同dos的外部命令是自己单独的程序。
shell的另外一个重要特性就是,它自身就是一个解释型程序设计语言。shell程序设计支持在高级语言里能够见到的绝大多数程序控制结构,关于这个,能够单独写一本书^_^。我们还是回到正题,不过我们可以知道,shell命令完全可以完成在dos中象bat程序一样的功能,而且更强、更方便、更随和——随便写一个命令列表的文本文件,指定一个shell执行它或者把它的属性改为可执行后直接运行就可以了。
shell在用户成功的登录系统后启动,并始终作为与系统内核交互的手段,直至退出系统。
◆常用的shell
在linux系统里,可以使用多种不同类型的shell。一般来说,在/etc目录下会有个shells文件,该文件是目前系统中可用的shell类型列表。一般包括如下几行:
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh
而最常用的主要是Bourne shell(sh),C shell(csh)和Bourne Again Shell(bash)三种。
sh是UNIX最初使用的shell,并且在每一种UNIX上都可以使用。它在编程方面非常优秀,但和用户的交互却比较逊。
csh更多的考虑了界面的友好性,但普遍的认为C Shell的编程接口不如sh。由于它的编程语法和c比较相近,所以它还是被许多C程序员所使用。
bash是sh的扩展,并与sh完全兼容,并在吸取c和kon shell的优点的基础上对sh增加了和增强了很多特性。它是大多数linux系统中默认的shell。下面我们将主要介绍bash的简单使用。
bash的环境变量的设置主要是在/etc/profile文件里,每个用户还可以在自己的主目录(刚登录系统后的当前路径)中的.bash_profile文件中定义自己的个人环境变量。注意,以点“.”开头的文件在linux中是隐藏文件,使用ls的-a参数才能看见它们的存在。
我们比较关心的可能是这样的一行
PATH=”$PATH:/usr/X11R6/bin:/usr/sbin/:./”
通过下边的export语句,这一句就象dos中设置path路径一样,所不同的主要有以下三点:
a、形式上用冒号分隔各个路径单元,不象dos是用分号分隔;
b、内容上可以使用$PATH代替这个赋值等式前的路径设置(注意,linux是区分大小写的);
c、效果上这个路径决定了bash查找的绝对范围,不要认为bash会象dos自动先查找当前路径,除非你在PATH中进行了设置。
你可以使用echo $PATH来显示自己的当前PATH设置。
关于bash更详细的帮助可以通过man bash命令获得。
修改用户缺省shell设置可以参考《搞清linux的用户和组-基础篇》的有关内容。
linux Shell的操作
转载请注明出处:服务器评测 » linux Shell的操作
相关推荐
- *IOFLOOD.com █ 网络星期一 █ 30% 折扣即将结束
- *PLiKhost:廉价且可靠的印度尼西亚 (IIX) 专用服务器 – 雅加达
- *iWebFusion BF 优惠现已推出!**第二个月免费** Ryzen 9950X、EPYC、Intel Platinum 等!!
- DACENTEC >>> 专用服务器 – E5 RTO 套餐 – 24/7/365 现场支持 – 99.99% SLA
- *廉价专用服务器★起价 28 美元/月★12TB 磁盘促销★IPMI★双倍 RAM 和 XFER!
- *完全托管的 cPanel/DirectAdmin 服务器:AMD Ryzen 9 7950X3D|128GB RAM|2 x 4TB NVMe SSD
- *Tier.Net 服务器促销!新款 Intel 和 AMD 到货!Turbo Provisioning!全天候实时支持!
- [欧盟/匈牙利] 匈牙利的专用带宽服务器