Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用gsub删除空白的awkshell脚本_Shell_Awk_Gsub - Fatal编程技术网

使用gsub删除空白的awkshell脚本

使用gsub删除空白的awkshell脚本,shell,awk,gsub,Shell,Awk,Gsub,我有一个shell脚本,我想导出'data'变量,其中没有任何空格。我试过gsub(),但似乎没能成功 export data="`grep -e 'P/N :' "$xfile" | awk '{print substr($3,3)}' `" if [ "$data" = "" ] && [ "$skipdata" = "0" ] then export data="`grep -e 'P/N:' "$xfile" | awk '{print substr($2,3)}'

我有一个shell脚本,我想导出'data'变量,其中没有任何空格。我试过gsub(),但似乎没能成功

export data="`grep -e 'P/N  :' "$xfile" | awk '{print substr($3,3)}' `"
if [ "$data" = "" ] && [ "$skipdata" = "0" ]
then
  export data="`grep -e 'P/N:' "$xfile" | awk '{print substr($2,3)}' |
    awk '{ if (index($1,"-D") != 0)
            $1 = (substr($1, 1, (index($1,"-D") -1))) "-DIE" }
            { print $1 }' `"

  if [ "$data" = "" ]
  then
    export data="`grep -e 'CUST PART NO:' "$xfile" | awk '{print substr($4,3)}' |
    awk '{ if (index($1,"-D") != 0)
            $1 = (substr($1, 1, (index($1,"-D") -1))) "-DIE" }
            { print $1 }' `"
  fi
fi
最终,我希望$data不包含空格。我可以这样做吗

export data="awk '{gsub($data," ","");print}"

我认为正确的语法是

gsub(/[[:blank:]]+/,"")
所以你可能需要

data=$(awk '{gsub(/[[:blank:]]+/,""); print}' <<< "$data")

data=$(awk'{gsub(/[:blank:]+/,“”);print}'我认为正确的语法是

gsub(/[[:blank:]]+/,"")
所以你可能需要

data=$(awk '{gsub(/[[:blank:]]+/,""); print}' <<< "$data")

data=$(awk'{gsub(/[:blank:]+/,“”);print}'我认为正确的语法是

gsub(/[[:blank:]]+/,"")
所以你可能需要

data=$(awk '{gsub(/[[:blank:]]+/,""); print}' <<< "$data")

data=$(awk'{gsub(/[:blank:]+/,“”);print}'我认为正确的语法是

gsub(/[[:blank:]]+/,"")
所以你可能需要

data=$(awk '{gsub(/[[:blank:]]+/,""); print}' <<< "$data")

data=$(awk'{gsub(/[:blank:]+/,“”);print}'看起来您的脚本应该像这样编写:

data=$(awk -F':' '
$1 ~ /^(P\/N[[:space:]]*|CUST PART NO)$/ {
    sub(/-D.*/,"-DIE",$2)
    gsub(/[[:space:]]+/,"",$2)
    print $2
}
' "$xfile")

我们可以以此为起点,如果它不能完全满足您的要求,则更新您的问题,以包括$xfile中的一些示例行和您所需的输出。

看起来您的脚本应该像这样编写:

data=$(awk -F':' '
$1 ~ /^(P\/N[[:space:]]*|CUST PART NO)$/ {
    sub(/-D.*/,"-DIE",$2)
    gsub(/[[:space:]]+/,"",$2)
    print $2
}
' "$xfile")

我们可以以此为起点,如果它不能完全满足您的要求,则更新您的问题,以包括$xfile中的一些示例行和您所需的输出。

看起来您的脚本应该像这样编写:

data=$(awk -F':' '
$1 ~ /^(P\/N[[:space:]]*|CUST PART NO)$/ {
    sub(/-D.*/,"-DIE",$2)
    gsub(/[[:space:]]+/,"",$2)
    print $2
}
' "$xfile")

我们可以以此为起点,如果它不能完全满足您的要求,则更新您的问题,以包括$xfile中的一些示例行和您所需的输出。

看起来您的脚本应该像这样编写:

data=$(awk -F':' '
$1 ~ /^(P\/N[[:space:]]*|CUST PART NO)$/ {
    sub(/-D.*/,"-DIE",$2)
    gsub(/[[:space:]]+/,"",$2)
    print $2
}
' "$xfile")

我们可以以此为出发点,如果它不能完全满足您的要求,那么请更新您的问题,以包括$xfile中的一些示例行和所需的输出。

当我不确定函数调用语法、参数等时,我会执行
man(g)awk
并搜索该函数。您尝试过吗?您会在那里找到答案。您的脚本存在足够多的问题,不值得将其用作起点并尝试更正。只需发布一些示例输入和预期输出,以便我们可以向您展示如何从一开始就编写它。当我不确定函数调用时我会做一个
man(g)awk
并搜索该函数。您尝试过吗?您会在那里找到答案。您的脚本存在足够多的问题,不值得将其用作起点并尝试更正。只需发布一些示例输入和预期输出,以便我们可以向您展示如何从一开始就编写它。当我不确定函数调用时我会做一个
man(g)awk
并搜索该函数。您尝试过吗?您会在那里找到答案。您的脚本存在足够多的问题,不值得将其用作起点并尝试更正。只需发布一些示例输入和预期输出,以便我们可以向您展示如何从一开始就编写它。当我不确定函数调用时我会做一个
man(g)awk
并搜索该函数。您尝试过吗?您会在那里找到答案。您的脚本存在足够多的问题,不值得将其用作起点并尝试更正。只需发布一些示例输入和预期输出,我们就可以向您展示如何从头开始编写。