您的位置:首页 > 运维架构 > Shell

linux shell编程学习笔记(1)shell概述

2014-02-19 20:08 253 查看
1、什么是shell?
shell是一个命令解释器,类似window下的cmd.exe。
计算机实体部分就是硬件,驱动这些硬件的就是系统内核,而用户无法是无法与内核交流的。在linux环境下,我们通过shell与内核交流,进而使用计算机硬件资源。工作流程:
用户->shell->内核->硬件
用户<-shell<-内核<-硬件

2、
由于linux是开源开放的,对shell的选择也有多种。可查看当前系统支持什么shell(我的是RHEL6.4)
[root@mgm ~]# cat /etc/shells
/bin/sh //大多unix默认的shell
/bin/bash //大多linux默认的shell
/sbin/nologin //非登录用户所用的shell,如系统用户
/bin/dash
/bin/tcsh
/bin/csh

在redhat中, /bin/sh 只是/bin/bash的软链接而已
[root@mgm ~]# ll /bin/sh
lrwxrwxrwx. 1 root root 4 2月 18 16:20 /bin/sh -> bash
[root@mgm ~]#

3、查看当前系统默认的shell
[root@mgm ~]# echo $SHELL
/bin/bash
[root@mgm ~]

4、查看用户所用的shell
[root@mgm ~]# cat /etc/passwd | grep root
root:x:0:0:root:/root:/bin/bash

5、修改用户用的shell
#usermod -s /bin/sh 用户名

6、/sbin/nologin,有什么用处?适合什么用户使用?
系统将禁止此用户的本地登录
1)进程的所有者
2)访问服务的用户

本文出自 “小风” 博客,请务必保留此出处http://huanglianfeng.blog.51cto.com/4813074/1360819
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: