首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

IFS变量对加双引号和不加双引号变量的区别对待

IFS(Internal Field Seprator) 变量 IFS 变量是一个特殊的环境变量,叫做内部域分隔符。IFS 环境变量定义了 bash shell 用作字段分隔符的一系列字符。...IFS对待未加双引号的变量 比如在 bash shell 中输入以下代码: IFS=: _str_="hello:world" for i in $_str_; do echo $i; done 会得到以下结果...: hello world 原因是引用字符串变量 _str_ 没有加双引号时,Shell 在 for 语句中根据 IFS 变量将字符串 _str_ 进行切割,切割成很多个字符串,然后逐个 echo 3...IFS对待加双引号的变量 在 Shell 中输入以下代码: IFS=: _str_="hello:world" for i in "$_str_"; do echo $i; done 会得到以下结果:...hello world 原因是引用字符串变量 _str_ 加了双引号时,表示将其当作一个整体来处理,IFS 不会起作用,所以上述 for 循环只会循环一次。

3.4K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    在Bash命令中展开单引号内的变量?

    问题 我想从一个 bash 脚本中运行一个包含单引号且单引号内有其他命令和一个变量的命令。 例如:repo forall -c '.......$variable "'" 如果我将变量的值直接替换进去,命令就能正常执行。 请告诉我哪里出了错。 回答 在单引号内,所有内容都会被原样保留,无一例外。...这意味着你必须先关闭引号,插入你需要的内容,然后再重新打开引号。...引号(根据具体情况使用单引号或双引号)并非用来分隔单词,而是用于禁用对多种特殊字符的解释,比如空格、$、;等。 不要拼接由 Shell 解析的字符串 你应绝对避免通过拼接变量来构建 Shell 命令。...使用位置参数会更好——这样是安全的,不会被利用: script='echo "arg 1 is: $1"' /bin/sh -c "$script" -- "$myvar" 注意在给 script 变量赋值时使用了单引号

    14910

    C语言变量声明加冒号的用法

    一、位 域的定义和位域变量的说明位域定义与结构定义相仿,其形式为: struct 位域结构名 { 位域列表 }; 其中位域列表的形式为: 类型说明符 位域名:位域长度 例如: struct bs {...int a:8; int b:2; int c:6; }; 位域变量的说明与结构变量说明的方式相同。...例如: struct bs { int a:8; int b:2; int c:6; }data; 说明data为bs变量,共占两个字节。其中位域a占8位,位域b占2位,位域c占6位。...又: 1:指针类型变量不能指定所占的位数 2....在声明成员变量时,可以用 变量名 :bit数; 来确定结构体类型的成员变量的值所占的字位数,如果在实际应用中,该变量的值超出了在声明它时所声明的字位数,那么溢出的部分将会丢失。

    2.8K10

    Java 变量

    # Java 变量 变量是程序的基本组成单位 简单的原理示意图 变(变化)量(值)的介绍 概念 变量使用的基本步骤 变量快速入门 变量使用注意事项 程序中+号的使用 数据类型 整数类型 基本介绍 整型的使用细节...浮点类型 基本介绍 说明一下 浮点型使用细节 Java API 文档 字符类型(char) 基本介绍 字符类型使用细节 ASCII码(了解) Unicode 编码介绍(了解) 布尔类型:boolean...Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。...# 整数类型 # 基本介绍 Java 的整数类型就是用于存放整数值的,比如 12 , 30, 3456 等等 # 整型的使用细节 # 浮点类型 # 基本介绍 Java 的浮点类型可以表示一个小数,比如...# 浮点型使用细节 # Java API 文档 # 字符类型(char) # 基本介绍 字符类型可以表示单个字符,字符类型是 char,char 是两个字节(可以存放汉字),多个字符我们用字符串

    88630

    JAVA 变量

    变量 5.1 变量概述 变量:在程序运行过程中,其值可以发生改变的量。 从本质上讲,变量是内存中的一小块区域,其值可以在一定范围内变化。...5.2 使用变量时的注意事项 在同一对花括号中,变量名不能重复。 变量在使用之前,必须初始化(赋值)。 定义long类型的变量时,需要在整数的后面加L(大小写均可,建议大写)。...定义float类型的变量时,需要在小数的后面加F(大小写均可,建议大写)。因为浮点数的默认类型是double, double的取值范围是大于`的,类型不兼容。...(a); } } 案例二 /* 变量使用的注意事项: 名字不能重复 变量未赋值,不能使用 long类型的变量定义的时候,为了防止整数过大,后面要加L float类型的变量定义的时候...,为了防止类型不兼容,后面要加F */ public class VariableDemo02 { public static void main(String[] args) { //定义byte

    62540

    java环境变量_java环境变量

    我们需要把 jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好 PATH变量后,就可以在任何目录下执行javac...我们 需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。 3. JAVA_HOME环境变量。...如何安装配置JAVA环境变量 JDK:安装jdk 随意选择目录 只需把默认安装目录 \java 目录即可; 环境变量: 1.安装完成后,右击”我的电脑”,点击”属性”,选择”高级系统设置”; 2.选择...变量设置参数如下: 变量名:JAVA_HOME 变量值:C:\Program Files (x86)\Java\jdk1.8.0_91 // 要根据自己的JDK实际安装路径配置 变量名:CLASSPATH...变量名:Path 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; JAVA_HOME 设置 PATH设置 CLASSPATH 设置 这是 Java 的环境配置

    1.7K20
    领券