`
cfyme
  • 浏览: 275099 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

shell一些技巧和知识点

 
阅读更多

; 表示的是一个命令执行完, 忽略其返回值, 继续执行下一行 

&& 表示只有前面为true才继续执行后面的命令, 否则忽略, 可以理解为短路执行 

|| 表示子前面为false才继续执行后面的命令, 这个比以前看到的解释更容易理解 

凡是要输出字符串的, 最好用引号括起来, 否则容易被shell理解为命令, 这一点很容易疏忽 

{}是一种命令块的写法 

:可以看成append操作 

export用来将一个变量升级为环境变量 

str= 
这行代码表示将str这个变量设置为null 

${str:-+=expr} 这些操作忘记了, 还需要巩固一下 

source会将script看成当前shell进程的一部分, 而不是生成一个sub shell进程来执行脚本, source用来加载公共的函数, 可以理解为import 

exec用来结束当前shell进程, 并重新生成一个新的进程来执行脚本 

()用来将多个命令放到一个sub shell进程中去执行, 可以理解为将表达式变成函数 

{} 理解成匿名函数吧, 一般在awk中常见 

$()和``是一回事, 不过前者辨识度更高, 建议常用, 后者容易与''混淆, 另外一个前者嵌套起来更简单, 不过前者移植性较差 

${}除了用来界定变量之外, 还有一个功能实现字符串变量的substring操作, #表示去掉左边的, %表示去掉右边的, 单数表示最小匹配, 双数表示最大匹配, 可以通过键盘上#和%相对于$的位置来记忆, linux上的命令参数大部分记忆起来很伤脑筋:( 

${}还可以用来设置默认值, 这块更复杂, 不记也罢 

${#str}用来计算变量的字符长度 

()的另一个作用是用来定义一个数组, 而针对数组的访问则利用的是[], 注意数组的下标base是0, 另外@用来表示全部, 可以理解为all 

$(())只针对算数和逻辑运算, 里面的变量可以不用带上$前缀, 当然带上也不为错 

shell中的0表示true, 非零表示false 

(())用来直接进行运算, 会让我们的代码更简洁, 比如变量不用加$前缀 

$0表示的是脚本路径, $1...n代表的是脚本路径之后的参数 

函数可以理解为脚本中的脚本, 不过函数中$0表示的仍然是脚本路径, 而不是函数名 

$10不是表示第十个参数而是第一个参数后面带一个0 

一般#跟数量关系比较大, 比如${#str}表示变量长度, 而$#表示参数个数, 测试是否有传参数 [ $# = 0 ] 

 

转载地址:http://macrochen.iteye.com/blog/1823022

分享到:
评论

相关推荐

    Linux Shell常用技巧-带完整书签目录超清文字版.pdf

    以下是基于该文档可能涵盖的一些核心知识点的详细解释: 1. **Shell基础**:首先,你会了解到Shell是什么,它的作用以及如何在Linux环境中启动和退出Shell。常见的Shell类型有Bash、Sh、Csh、Zsh等,其中Bash...

    Linux与Unix shell编程指南(完整高清版)

    **知识点18:环境和 shell 变量** - 环境变量用于存储系统配置信息。 - shell 变量则用于在 shell 脚本中存储数据。 - 设置正确的环境变量对于系统管理至关重要。 **知识点19:引号** - 在 shell 脚本中正确使用...

    Shell 脚本专家指南

    通过掌握上述知识点,IT专业人员将能够编写高效、健壮的Shell脚本来自动化和简化日常的IT任务,从而提升工作效率并减少重复性劳动。这些知识点构成了Shell脚本编写的核心,并且是任何Shell脚本专家必须熟练掌握的...

    C语言中文网shell脚本教程

    以下是其中涉及的一些关键知识点: 1. **Shell命令的本质** Shell命令在Linux系统中是操作系统与用户交互的接口,它们是可执行的程序,可以执行特定的操作。了解命令的选项和参数至关重要,这些参数用于定制命令的...

    维护常用linux命令\shell技巧

    以下是一些关于“维护常用Linux命令\Shell技巧”的详细知识点: 1. **基本命令操作**: - `ls`:列出目录内容。 - `cd`:切换目录。 - `pwd`:显示当前工作目录。 - `mkdir`:创建新目录。 - `rm`:删除文件或...

    linux shell example例子

    从给定的Linux Shell脚本示例中,我们可以提炼出一系列关键知识点,这些知识点涵盖了Shell编程的基本...这些知识点覆盖了Shell编程的基础到进阶技巧,是理解Linux Shell脚本机制和高效自动化任务处理的重要组成部分。

    Pure JS (6.1):使用 Rhino Shell 和 Debugger 运行和调试 JS

    9. **命令行技巧** - 了解Rhino Shell的命令行快捷方式和提示,提高代码调试和运行效率。 通过以上知识点,开发者可以提升JavaScript在非浏览器环境下的开发和调试能力,特别是在Java生态系统中的运用。

    shell中文教程从零基础开始

    环境变量和配置文件的管理是另一个关键知识点,如PATH环境变量的设置可以方便地调用系统路径中的命令,~/.bashrc文件的编辑则能定制个人Shell启动时的行为。 最后,教程可能还会涵盖一些进阶主题,比如Shell脚本中...

    UNIX shell范例精解(第4版)

    所以,我只能根据标题和标签来生成知识点。 标题中提到的《UNIX shell范例精解(第4版)》表明这本书是一本关于UNIX shell编程的书籍,而且已经发行到了第四版,说明该书有一定的受众基础和受欢迎程度。UNIX shell是...

    RHCE知识点汇总

    ### RHCE知识点汇总 #### 一、系统配置与管理 1. **路由IP流量和创建静态路由** ...以上内容覆盖了RHCE考试中涉及的关键知识点和技术细节,通过深入学习这些内容,考生可以更好地准备并通过RHCE认证考试。

    Shell脚本编程入门与进阶技巧指南

    使用场景及目标:帮助读者掌握Shell脚本的基本语法和常用命令,通过实战练习巩固所学知识点,能够编写和调试复杂的脚本程序,提高自动化运维的能力。 阅读建议:本文提供了丰富的代码示例和详细的操作步骤,建议读者...

    visual c++ windows shell programming.rarvisual c++ windows shell programming

    通过《Visual C++ Windows Shell Programming》这本书,读者可以系统地学习到以上这些知识点,并逐步掌握使用Visual C++进行Windows Shell编程的高级技巧。书中可能还会涵盖如何处理异步操作、性能优化、错误处理等...

    shell编程和linux命令详细学习pdf

    【部分内容】包含了一系列零散的Linux命令输出和Shell脚本的片段,我们可以从中提取一些知识点: 1. ls -l:列出文件的详细信息。例如,“ls -l”将显示当前目录下的文件和文件夹的详细列表,包括权限、所有者、...

    Bourne Shell及shell编程.pdf

    本文档旨在深入探讨Bourne Shell的基础知识、关键特性和shell编程技巧,以帮助读者更好地理解和利用这一工具。 #### Shell基础 **环境与选项:** - **环境设置**:shell的运行环境可以通过环境变量进行定制,例如`...

    ICS lab9 shell lab

    在这个实验中,你可能会学习到以下核心知识点: 1. **基础命令**:了解并使用基本的Unix/Linux命令,如`cd`(改变目录)、`ls`(列出目录内容)、`echo`(打印输出)、`cat`(查看文件内容)等。 2. **变量与环境...

    Linux+Shell命令行及脚本编程实例详解-刘艳涛.mobi kindle版

    本书偏重于实践教学,在讲解理论知识时,通过一些典型实例让读者了解理论知识在实际环境中的应用,并对易混淆和较难理解的知识点做了重点分析,以加深读者对知识的理解。另外,作者专门为本书录制了高清配套教学视频...

    经典Shell语句大全

    以下是一些核心的Shell知识点: 1. **基本命令**: - `ls`:列出目录内容。 - `cd`:切换当前工作目录。 - `pwd`:显示当前工作目录。 - `mkdir`:创建新目录。 - `rm`:删除文件或目录(需小心使用)。 - `...

    RTEMS Shell User’s Guide

    ### RTEMS Shell用户指南:关键知识点解析 #### 引言 RTEMS(实时嵌入式微内核系统)Shell用户指南...通过理解和应用指南中的知识点,用户可以充分发挥RTEMS Shell的功能,提高开发效率,确保系统的稳定性和安全性。

Global site tag (gtag.js) - Google Analytics