shell详解

============================================================================
1、shell详解:
shell是基于c语言的基础上编写的程序,是用户与Linux内核之间沟通的桥梁;shell既是一种命令语言,又是一种程序语言。
shell是只一种应用程序,这个应用程序提供一个界面,用户通过这个界面访问操作系统内核的服务。

2、shell脚本:
是一种为shell编写的脚本程序;shell脚本就是将各种命令通过逻辑语句组合而成的程序,shell脚本需通过Linux命令、正则表达式、管道命令、数据流、重定向等语法规则来完成指定任务。

3、shell的两种工作模式:
交互式:用户输入一条命令,shell解释器并执行一条
4、批处理:
用户实现编写一个shell脚本(script),其中包含诸多命令,shell会一次执行完所有的命令。
5、查看系统所有可用的shell解释器

cat 、etc/shells

6、查看当前的shell解释器

echo $SHELL

7、一条完整的shell脚本则应包括:
脚本声明(#!):告知系统用何种shell来解释
注释信息(#):对可执行语句或程序功能做介绍,可以不写
可执行语句:执行的具体命令。
实例一:
简单脚本书写:

vim nanqiao.yan.sh

    #!/bin/bash
         # For Example nanqiao.yan.com
         pwd
         ls –al

实例二:

vim nanqiao.yan.sh

            #!/bin/bash
    echo "Hello World !" 

8、脚本执行的三种方式:
1)作为可执行程序运行:
脚本文件路径: /Example.sh
Sh脚本文件路径: sh Example.sh
Source脚本文件路径: source nanqiao.yan.sh
只要脚本文件路径没有写错,sh 或 source命令可以直接执行该脚本,
#使脚本具有执行权限

chmod +x./nanqiao.yan.sh

#   chmod u+x nanqiao.yan.sh
    #执行脚本
     ./nanqiao.yan.sh  

2)作为解释器参数运行:
这种方式是直接运行解释器,其参数就是shell脚本的文件名。这种方式运行的话,不需要在第一行指定解释器的信息。

/bin/sh test.sh

    #   /bin/php test.php

[地址:南乔.颜] (http://lqy.com)

============================================================================

原文地址:http://blog.51cto.com/13852427/2136089

时间: 2024-10-08 23:36:02

shell详解的相关文章

Linux的Bash Shell详解

一.Bash Shell概述 1.什么是bash         bash是Bourne Again Shell的简称,是从unix系统中的sh发展而来的,是用户和Linux内核交互的工具,用户通过bash操作内核完成系统的使用和管理. 2.shell的种类         /bin/sh(已经被/bin/bash替代)         /bin/bash(默认的shell)         /bin/ksh(源自贝尔实验室,兼容bash)         /bin/tcsh(整合C shell

linux shell详解

shell工作原理 Linux系统提供给用户的最重要的系统程序是Shell命令语言解释程序.它不属于内核部分,而是在核心之外,以用户态方式运行.其基本功能是解释并执行用户打入的各种命令,实现用户与Linux核心的接口.系统初启后,核心为每个终端用户建立一个进程去执行Shell解释程序.它的执行过程基本上按如下步骤:  (1)读取用户由键盘输入的命令行.  (2)分析命令,以命令名作为文件名,并将其它参数改造为系统调用execve( )内部处理所要求的形式.  (3)终端进程调用fork( )建立

每篇半小时1天入门MongoDB——3.MongoDB可视化及shell详解

本篇主要介绍MongoDB可视化操作以及shell使用及命令,备份恢复.数据导入导出. MongoVUE安装和简单使用 使用mongo.exe 管理数据库虽然可行,功能也挺强大,但每次都要敲命令,即繁琐枯燥而且效率低下.MongoDb在Windows下的可视化操作的管理工具非常多,笔者从中找了几款使用了一翻,最后挑了一款MongoVUE来最简单介绍,因为笔者觉得MongoVUE界面看上去舒服些. 下载地址:http://www.mongovue.com/downloads/ 注意:官方提供的是收

SHELL 详解

http://blog.csdn.net/vah101/article/details/6173488 ( a=2;b=4;c=9; ) 子shell 环境 { a=2;b=4;c=9; } 当前shelll环境 ((整型算术表达式 )) 返回0 /1 [[条件表达试]] 0/1 [] 0/1 $(命令)= `命令` 返回结果 [[email protected] ~]# b=`date`[[email protected] ~]# echo $bMon May 23 23:59:44 CST

Shell [[]]详解:检测某个条件是否成立

[[ ]]是 Shell 内置关键字,它和 test 命令类似,也用来检测某个条件是否成立. test 能做到的,[[ ]] 也能做到,而且 [[ ]] 做的更好:test 做不到的,[[ ]] 还能做到.可以认为 [[ ]] 是 test 的升级版,对细节进行了优化,并且扩展了一些功能. [[ ]] 的用法为: [[ expression ]] 当 [[ ]] 判断 expression 成立时,退出状态为 0,否则为非 0 值.注意[[ ]]和expression之间的空格,这两个空格是必须

hbase shell基础和常用命令详解

HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper作为协同服务. 1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实现,它利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase

linux shell 字符串操作(长度,查找,替换,匹配)详解

linux shell 字符串操作(长度,查找,替换,匹配)详解 在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系列操作符号,可以达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快. 一.判断读取字符串值 表达式 含义 ${var} 变量var的值, 与$var相同     ${var-DEFAULT} 如果var没有被声明, 那么就以$DEFAULT作为其值 * ${va

adb shell 命令详解,android

http://www.miui.com/article-275-1.html http://noobjava.iteye.com/blog/1914348 adb shell 命令详解,android 博客分类: android 常用:1.进入模拟器的shell模式 :  adb shell 2.安装应用程序:  adb install -r 应用程序.apkadb installadb install <apk文件路径> :这个命令将指定的apk文件安装到设备上adb install  -r

hbase shell基础和常用命令详解(转)

HBase shell的基本用法 hbase提供了一个shell的终端给用户交互.使用命令hbase shell进入命令界面.通过执行 help可以看到命令的帮助信息. 以网上的一个学生成绩表的例子来演示hbase的用法. name grad course math art Tom 5 97 87 Jim 4 89 80 这里grad对于表来说是一个只有它自己的列族,course对于表来说是一个有两个列的列族,这个列族由两个列组成math和art,当然我们可以根据我们的需要在course中建立更