今天入门Shell脚本编程:今天的目标是完成冒泡排序,遇到了很多问题,总结了一下:

我从c转到shell遇到了这样的一些情况:

1:首先这几个符号非常重要

$变量:把变量的值拿出来使用(所以赋值语句应该是a=$b,如果写成$a=$b那就相当于把变量的值拿出来给把变量的值显然不合理,初学常错)

{变量}:其实很多情况不用加也可以通过解释,但是它起到了一个界定变量名范围的作用,所以尽量所有变量都加上能避免很多奇怪的错误

‘字符串’”字符串“:用来把字符串赋值给变量也是一个界定的作用前者不管你是什么都原封输出,后者能把变量的值读出来输出

` 命令` 反引号用于把命令执行的结果插入到一个命令的当前位置

2.read命令:

-p 打印一些字符串常用来作为输入提示(引号的问题我也遇到了,后面会讲);

-s 不回显输入内容 ;

-a array 将输入作为数组的内容按顺序放到数组中;

-d delim(助记delimit):持续输入知道delim被读到位置,甚至输入回车也不会停;

-t second:等待second秒后停止输入;

以上都是我通过man查找摘取的对我有用的参数;

3.数组

大致了解了数组的定义后我遇到了一些问题,总结如下:

数组的成员个数 :${#array[@]}

数组的上界:expr ${#array[@]} - 1

数组的遍历:${array[@]}

数组下标的遍历(在for中使用):for i in ' seq 0 'expr ${#array[@]} - 1' '

今天就写这些,明天试试break的用法写一个Joseph,和case语句,上传一个冒泡的shell表达方式:

学习shell中遇到的一些基础问题总结的更多相关文章

  1. shell脚本学习--shell中的变量$

    $$ :Shell本身的PID(ProcessID) $! :Shell最后运行的后台Process的PID $? :最后运行的命令的结束代码(返回值) $- :使用Set命令设定的Flag一览 $* ...

  2. 学习 shell脚本之前的基础知识

    转载自:http://www.92csz.com/study/linux/12.htm  学习 shell脚本之前的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写sh ...

  3. 学习shell脚本之前的基础知识

    日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么你就不算一个合格的管理员.目前很多单位在招聘linux系统管理员时,shell脚本的编写是必考的项目.有的单位 ...

  4. 菜鸟教程之学习Shell script笔记(中)

    菜鸟教程Shell script学习笔记(中) 以下内容是学习菜鸟教程之shell教程,所整理的笔记 菜鸟教程之shell教程:http://www.runoob.com/linux/linux-sh ...

  5. linux学习(十)Shell中的控制语句

    目录 1. 条件测试语句 1.1 test语句 1.2[]语句 1.3文件测试 1.4字符串测试 1.5数值测试 1.5逻辑操作符 @(Shell中的控制语句) 1. 条件测试语句 测试语句十Shel ...

  6. 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧

    目录 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧 25.1 Shell中的色彩处理 25.2 awk基本应用 25.2.1 概念 25.2.2实例演示 25.3 awk ...

  7. 『忘了再学』Shell基础 — 32、Shell中test测试命令详解

    目录 1.test测试命令 (1)test命令介绍 (2)test命令使用方式 (3)示例 2.按照文件类型进行判断 3.按照文件权限进行判断 4.两个文件之间进行比较 5.两个整数之间比较 6.字符 ...

  8. 学习Shell脚本编程(第3期)_在Shell程序中使用的参数

    位置参数 内部参数 如同ls命令可以接受目录等作为它的参数一样,在Shell编程时同样可以使用参数.Shell程序中的参数分为位置参数和内部参数等. 3.1 位置参数 由系统提供的参数称为位置参数.位 ...

  9. shell中case的用法学习笔记

    这篇文章主要为大家介绍shell中的case语句:可以把变量的内容与多个模板进行匹配,再根据成功匹配的模板去决定应该执行哪部分代码. 本文转自:http://www.jbxue.com/article ...

随机推荐

  1. (原) 1.2 Zookeeper伪集群安装

    本文为原创文章,转载请注明出处,谢谢 Zookeeper伪集群安装 zookeeper单机安装配置可以查看 1.1 zookeeper单机安装 1.复制三份zookeeper,分别为zookeeper ...

  2. go语言 类型:数组切片

    初看起来,数组切片就像一个指向数组的指针,实际上它拥有自己的数据结构,而不仅仅是个指针.数组切片的数据结构可以抽象为以下3个变量: 1.一个指向原生数组的指针: 2.数组切片中的元素个数: 3.数组切 ...

  3. swift学习笔记之-扩展(Extensions)

    //扩展(Extensions) import UIKit /*扩展(Extensions):扩展 就是为一个已有的类.结构体.枚举类型或者协议类型添加新功能.这包括在没有权限获取原始源代码的情况下扩 ...

  4. SharePoint 2013 重命名网站集名称(SharePoint 2013 rename site collection)

    最近使用SharePoint中,遇到一个需要重命名网站集的需求,主要是网站用数据库备份/还原的方式,想要改网站集的地址,然后搜了一下PowerShell: $site = Get-SPSite -Id ...

  5. 兼容Android的水波纹效果

    Android的水波纹效果只有高版本才有,我们希望自己的应用在低版本用低版本的阴影,高版本用水波纹,这怎么做呢?其实,只要分drawable和drawablev21两个文件夹就好了. 普通情况下的se ...

  6. Service和Thread的关系及如何启用Service,如何停用Service

    Service和Thread的关系: 不少Android初学者都可能会有这样的疑惑,Service和Thread到底有什么关系呢?什么时候应该用Service,什么时候又应该用Thread?答案可能会 ...

  7. 使用ContentProvider访问其他应用的SharedPreferences数据

    @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs ...

  8. 【C语言】C语言static和extern区别

    目录: [static] [extern] 1.static · 定义一个内部函数/变量. · 声明一个内部函数/变量. 2.extern · 定义一个外部函数/变量. · 声明一个外部函数/变量. ...

  9. Android 手机卫士--事件传递&响应规则

    问题的提出: 本文地址:http://www.cnblogs.com/wuyudong/p/5911187.html ,转载请注明源地址. 前面的文章实现了点击SettingItemView条目的时候 ...

  10. 【代码笔记】iOS-抽屉效果的实现

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...