gpt4 book ai didi

linux - 这里是 ksh 中的字符串

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:37:41 26 4
gpt4 key购买 nike

下面的脚本有什么问题?

#!/bin/bash
a="\\\"P1\\\"\\\"P2\\\"\\\"P3\\\"\\\"P4\\\"\\\"P5\\\""
awk 'BEGIN{FS=OFS="\\\\\\\""} {$10="";NF-=2}1' <<< "$a"

输出:

\\\"P1\\\"\\\"P2\\\"\\\"P3\\\"\\\"P4\\\"

它在 bash 中工作,但我在 ksh 中测试并收到以下错误消息:

#!/usr/bin/ksh
a="\\\"P1\\\"\\\"P2\\\"\\\"P3\\\"\\\"P4\\\"\\\"P5\\\""
b=$(awk 'BEGIN{FS=OFS="\\\\\\\""} {$10="";NF-=2}1' <<< "$a")
.sh: syntax error: `< ' unexpected

我在 ksh shell 中遇到问题,但这有效

b=` echo $a | sed -e 's/\\\\"[^"]*\\\\"$//g' `

最佳答案

这里的字符串语法<<<bash ksh 不支持的功能.只需将您的命令更改为:

b=$(echo "$a" | awk 'BEGIN{FS=OFS="\\\\\\\""} {$10="";NF-=2}1')

关于linux - 这里是 ksh 中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24876289/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com