美文网首页
echo 输出有没有加"双引号"差别还是挺大的

echo 输出有没有加"双引号"差别还是挺大的

作者: 苍蝇的梦 | 来源:发表于2019-09-27 11:06 被阅读0次

2019-06-05 遇到的一点小问题
最近使用shell开发一个简单的后台,经常遇到echo输出时因为双引号有没有加上而导致输出内容不一致的问题,这边记录一下。
懒得写了,贴个例子;顺便再贴个刚好看到的文:在 Shell 中用 echo 输出变量丢失换行符的问题

#!/bin/sh
function test(){
    echo "==0========"
    lsscsi -s
    echo "==1========"
    echo $(lsscsi -s)
    echo "==2========"
    echo "$(lsscsi -s)"
    echo "==3========"
    local disk=$(lsscsi -s)
    echo $disk
    echo "==4========"
    echo ${disk}
    echo "==5========"
    echo "$disk"
    echo "==6========"
    echo "${disk}"
}
test

这边是运行后输出:

==0========
[0:0:0:0]    disk    ATA      Crucial_CT275MX3 R040  /dev/sda    275GB
[1:0:0:0]    disk    ATA      SanDisk SD9SN8W2 7000  /dev/sdb    256GB
[2:0:0:0]    disk    JMicron  Generic          0425  /dev/sdc   1.00TB
[3:0:0:0]    disk    SMI      USB DISK         1100  /dev/sdd   8.16GB
==1========
[0:0:0:0] disk ATA Crucial_CT275MX3 R040 /dev/sda 275GB [1:0:0:0] disk ATA SanDisk SD9SN8W2 7000 /dev/sdb 256GB [2:0:0:0] disk JMicron Generic 0425 /dev/sdc 1.00TB [3:0:0:0] disk SMI USB DISK 1100 /dev/sdd 8.16GB
==2========
[0:0:0:0]    disk    ATA      Crucial_CT275MX3 R040  /dev/sda    275GB
[1:0:0:0]    disk    ATA      SanDisk SD9SN8W2 7000  /dev/sdb    256GB
[2:0:0:0]    disk    JMicron  Generic          0425  /dev/sdc   1.00TB
[3:0:0:0]    disk    SMI      USB DISK         1100  /dev/sdd   8.16GB
==3========
[0:0:0:0] disk ATA Crucial_CT275MX3 R040 /dev/sda 275GB [1:0:0:0] disk ATA SanDisk SD9SN8W2 7000 /dev/sdb 256GB [2:0:0:0] disk JMicron Generic 0425 /dev/sdc 1.00TB [3:0:0:0] disk SMI USB DISK 1100 /dev/sdd 8.16GB
==4========
[0:0:0:0] disk ATA Crucial_CT275MX3 R040 /dev/sda 275GB [1:0:0:0] disk ATA SanDisk SD9SN8W2 7000 /dev/sdb 256GB [2:0:0:0] disk JMicron Generic 0425 /dev/sdc 1.00TB [3:0:0:0] disk SMI USB DISK 1100 /dev/sdd 8.16GB
==5========
[0:0:0:0]    disk    ATA      Crucial_CT275MX3 R040  /dev/sda    275GB
[1:0:0:0]    disk    ATA      SanDisk SD9SN8W2 7000  /dev/sdb    256GB
[2:0:0:0]    disk    JMicron  Generic          0425  /dev/sdc   1.00TB
[3:0:0:0]    disk    SMI      USB DISK         1100  /dev/sdd   8.16GB
==6========
[0:0:0:0]    disk    ATA      Crucial_CT275MX3 R040  /dev/sda    275GB
[1:0:0:0]    disk    ATA      SanDisk SD9SN8W2 7000  /dev/sdb    256GB
[2:0:0:0]    disk    JMicron  Generic          0425  /dev/sdc   1.00TB
[3:0:0:0]    disk    SMI      USB DISK         1100  /dev/sdd   8.16GB
.

在使用方法传参时,有没有加双引号也是有区别的。
第一个是只有一个参数传入,第二个是有三个参数传入。
顺便记录一下

function test(){
   echo ${1}=_=${2}=_=${3}
}
test "a b c"
# a b c=_==_=
test a b c
# a=_=b=_=c

相关文章

  • echo 输出有没有加"双引号"差别还是挺大的

    2019-06-05 遇到的一点小问题最近使用shell开发一个简单的后台,经常遇到echo输出时因为双引号有没有...

  • echo命令简要说明

    echo简单来说,就是输出语句。echo 123 输出123 也可以加上双引号echo -n表示输出...

  • php-入门

    一、echo语句 1.格式 echo是PHP中的输出语句,可以把字符串输出(字符串用双引号括起来,echo关键字与...

  • php语法

    1. echo是PHP中的输出语句,可以把字符串输出(字符串用双引号括起来)。 如下代码:

  • PHP学习笔记--入门篇

    一、Echo语句 1、格式 echo是PHP中的输出语句,可以把字符串输出(字符串用双引号括起来) 如下代码 注意...

  • Shell 的打印

    echo 可以使用echo对字符串进行打印,根据需求善用双引号和单引号。注意:echo 输出是自带换行的 开启转义...

  • PHP-Echo语句

    echo是PHP中的输出语句,可以把字符串输出(字符串用双引号括起来)。 如下代码: 注意echo关键字与字符串之...

  • Echo语句

    echo是PHP中的输出语句,可以把字符串输出(字符串用双引号括起来)。 如下代码: 注意echo关键字与字符串之...

  • PHP编程习惯

    1.字符串使用单引号比使用双引号高效 2.字符串使用echo输出比用print高效,且echo可以用逗号,连接 e...

  • 搜索技术之语言篇

    搜索语言。我这里列举最基础的5个搜索语言。 1、使用双引号“” 如果你输入“知识付费的机会”,加不加双引号差别是巨...

网友评论

      本文标题:echo 输出有没有加"双引号"差别还是挺大的

      本文链接:https://www.haomeiwen.com/subject/prpjxctx.html