• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
hitandy
博客园    首页    新随笔    联系   管理    订阅  订阅

Linux Shell 学习---Shell 简介

什么是Shell
     Shell 是kernel的一个外壳,是一个命令解析器,负责用户与内核的交互,shell中可以运行子shell. linux 系统下面可以有多个shell,可以通过/etc/shells文件查看当前系统的可用Shell,用户登录时,init程序为每一个用户启动一个shell用于解析用户输入的命令,通过使用echo $SHELL 显示当前运行的shell。

Shell的特性:
     1.别名:通过使用alias命令可以为命令设置别名,提供用户个性设置。如:alias 'll=ls -l' 
     2.命令替换``。如:执行命令ls `cat myfile` -l 将cat myfile地执行结果传递给ls进行替换
     3.后台处理,将任务放在后台进行处理,前台可以继续进行操作。nohup tar -czf filename &将压缩操作放置在后台执行。
     4.变量(下一次详细介绍)
     5.管道 |。将一个命令的输出作为另一个命令的输入。如:ls -l / |more
     6.重定向。使用操作符<>进行输入输出的重定向。
     7.模式匹配。通过正则表达式进行模式匹配。

Shell脚本
     Shell脚本类似于批处理可以方便的执行大量命令,同时由于Shell脚本是一种程序设计语言,功能非常强大。
     一个简单的例子:
    #!/bin/bash
    #注释,第一行格式固定
    #定义变量
    printstring="Hello Shell";
    #输出变量内容
    echo ${printstring};
    编写shell脚本存储在文件中,需要设定用户对文件的执行权限,才可以执行,一下简介以下文件权限的设置命令chmod。

chmod命令:
    chmod [who] operator [permission] filename
    who:用户。主要有:文件拥有者,组用户,其他用户
    opeartor:+ ,- 增加或删除
    permission: 权限设置 r,w,x(执行)     -----T,S位不做介绍
   
    chmod命令有两种模式:绝对模式和符号模式
    符号模式:chmod u+x file1 增加拥有者的执行权限
    绝对模式:用数字表示权限,三位分别对应文件拥有者,组用户和其他用户。r=4,w=2,x=1。如:chmod 700 file1 设置文件拥有者可读,可写,可执行的权限,其他所有用户无任何权限。
    
umask 
   创建文件和目录的时候系统根据umask的值,设定模人的权限。对应入下表所示:
   umask  文件   目录
       0       6      7
       1       5      6
       2       4      5
       3       3      4
       4       2      3
       5       1      2
       6       0      1
       7       0      0

系统在/etc/profile中设定umask值,可以通过umask命令改变默认值。一般为022建议不要改动,影响系统的安全性

下一次简单介绍shell脚本编程的内容。

 

posted @ 2008-04-27 10:48  hitandy  阅读(393)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3