shell 初学者 必读 ,强烈推荐新手读

时间:2022-09-26 18:10:56

背景:

很多人从C/C++转化而来,看了学习文档之后,踩入了很多坑

1 对变量赋值 不要有空格

a=123 # 正确
a = 123 # 错误

2  if语句 [] 要留有空格,变量最好加""

if [ "$a" -eq 10]  # 对的
if [$a -eq 10] # 错的

3 很多情况下希望输出“!”  这个时候要用单引号

echo ‘ok!'       #对的
echo “error!” #错误的

4 位置参数超过10 要用上大括号  小于10的可以不用

echo ${10}     #正确,表示打印第10个变量
echo $10 #也正确,不过表示的是第一个变量后面加一个0

5 牢记未初始化的变量为null ,不为0

6 if 语句里的双引号

if [ -n "$a" ]        # right
if [ -n $a ] #error

7 子shell的操作不会影响父shell

子shell:

#!/bin/bash
STRING_TEST="test"
export STRING_TEST

父shell:

echo $STRING_TEST

8 dos 风格的\r\n 在bash中是不合法的

dos2unix  需要转换一下

9 在参数传递中出现空格

以上内容出现在

shell 初学者 必读 ,强烈推荐新手读的更多相关文章

  1. Linux PATH环境变量及作用(初学者必读)

    Linux PATH环境变量及作用(初学者必读) < 什么是环境变量,Linux环境变量有哪些?Linux打包(归档)和压缩 > <Linux就该这么学>是一本基于最新Linu ...

  2. Web 开发人员和设计师必读文章推荐【系列三十】

    <Web 前端开发精华文章推荐>2014年第9期(总第30期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  3. Web 开发人员和设计师必读文章推荐【系列二十九】

    <Web 前端开发精华文章推荐>2014年第8期(总第29期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  4. Web 前端开发人员和设计师必读文章推荐【系列二十八】

    <Web 前端开发精华文章推荐>2014年第7期(总第28期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  5. Web前端开发人员和设计师必读文章推荐

    推荐一个很好的学习资源: Web前端开发人员和设计师必读文章推荐[系列一] Web前端开发人员和设计师必读文章推荐[系列二] Web前端开发人员和设计师必读文章推荐[系列三] Web前端开发人员和设计 ...

  6. 基于物品的协同过滤推荐算法——读&OpenCurlyDoubleQuote;Item-Based Collaborative Filtering Recommendation Algorithms” &period;

    ligh@local-host$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.3 基于物品的协同过滤推荐算法--读"Item-Based ...

  7. Web前端开发人员和设计师必读文章推荐【系列十】

    <Web前端开发人员和设计师必读文章推荐系列十>给大家带来最近两个月发布在<梦想天空>的优秀文章,特别推荐给 Web 开发人员和设计师阅读.梦天空博客关注 前端开发 技术,展示 ...

  8. linq&comma;sql&comma;lambda转换工具&lpar;推荐新手,初学者多多使用&rpar;

    http://files.cnblogs.com/CielWater/Linqer.rar Linqer用于将sql语句转换为linq语句(暂不支持多表连接查询) http://files.cnblo ...

  9. &period;NET平台技术体系梳理&plus;初学者学习路径推荐&plus;我们的愿景与目标

    文章出自:http://www.cnblogs.com/ice-river/p/3475041.html 一 .NET平台技术体系梳理 .NET平台应用领域众多(桌面开发,web开发,移动开发),不断 ...

随机推荐

  1. C&num;学校班级自动升级实现代码

    代码逻辑如下: //班级自动升级 //获取该学校还没有毕业的班级 List<ClassInfoes> classinfoeslist = classinfoesbll.GetList(Sc ...

  2. hdu3374 KMP&plus;最大最小表示法

    这题要求的是字符串左移时字典序最小和最大的第几次出现,并求出现次数.考虑一会可以发现,出现次数和循环节是有关系的. 出现了几次,就是循环了几次,如果循环节是他本身,也就是无循环,那这个字符串不管怎么移 ...

  3. 如何解决android logcat不打印信息在android开发中

    用eclipse进行android开发中经常遇到logcat无任何信息输出,这给我们调试程序带来很大的不便.解决办法:window-->show view-->选择android下的dev ...

  4. ArcGIS许可启动问题

    前段时间,由于360常常删除重要文件终于发生在我身上.不得已换了电脑管家,清理后再次打开License Server Administrator时,发现启动项怎么也点不动了.而打开服务管理器,却发现A ...

  5. Android反编译工具

    1:先安装androidfby工具 2:安装jdk并设置环境变量 3:下载一个apk数据包 4:打开反编译工具页面,点击"浏览"找到所要测试的apk包 5:反编译成功之后,会生成相 ...

  6. bug:逆向思维的延伸

    哈哈,我又来了. 前段时间自己出了一个bug,说起来也属于比较常见的类型 A业务需要做一个活动,需要B业务判断,如果是通过A业务跳转至B业务的用户,则在B页面给这类用户展示一个对应的弹窗.(A是新增业 ...

  7. &lbrack;国嵌笔记&rsqb;&lbrack;020&rsqb;&lbrack;ARM家族大检阅&rsqb;

    ARM芯片:2440(arm9) 6410(arm11) 210(cortex-A8) ARM核:arm9(arm-v4) arm11(arm-v6) cortex-A8(arm-v7) 指令架构:a ...

  8. C&num; 1-2&plus;3-4&plus;5&period;&period;&period;&plus;m的几种方法

    class Program { //第一种(1-2)+(3-4)+(5-6)...+m public static void Test(int m) { ; == ) { z = -(m / ); } ...

  9. Openwrt Support MINI-PCIE EC20 &lpar;6&rpar;

    1      Scope of Document This document describes MINI PCIE usb hardware design, for EC20 4G module 2 ...

  10. Scrum Meeting 10&period;29

    成员 今日活动 明日计划 用时 徐越 配置tomcat+eclipse 将上届后端代码迁移到服务器 4h 赵庶宏 与数据库连接的java代码学习及编写,测试代码 进行数据库的建立并学习数据库方面的知识 ...