首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >添加随机换行符的Bash脚本

添加随机换行符的Bash脚本
EN

Ask Ubuntu用户
提问于 2020-08-30 04:39:41
回答 1查看 317关注 0票数 0

好吧,一些背景信息。我一直在用Bash写一个项目,本质上看你是否在一台ubuntu计算机上做了某些事情,并对你的表现进行了评分,其中之一就是回答问题,或者禁用来宾帐户。运行的文件(init.sh)创建一个新的shell脚本(engine.sh),该脚本实际上根据用户希望分级的级别进行分级。

现在是问题:到目前为止,我向引擎输出的所有检查都正常工作,但是当我进行这个特定的检查(检查一个文件以获得特定的答案)时,它为引擎添加了一个换行符。

所涉职能:

代码语言:javascript
运行
复制
createVuln() {
    type="$1"
    points=$2
    var1="$3"
    var2="$4"
    var3="$5"
    var4="$6"
    var5="$7"
    test=$("$type" "test" "$var1" "$var2" "$var3" "$var4" "$var5")
    message="$("$type" "message" "$var1" "$var2" "$var3" "$var4" "$var5")"
    vuln="
if [ ${test} ]; then
    scorePoints \"$points\" \"$message\"
fi "
    echo "$vuln" >> vulns
    totalvulns=$(($totalvulns + 1))
    totalpoints=$(($totalpoints + $points))
}

createForensics() {
    outputType="$1"
    question="$2"
    answer="$3"
    fileName="$4"
    if [ "$outputType" = "test" ]; then
        touch "$fileName"
        echo "Forensics Question:" > "$fileName"
        echo "$question" >> "$fileName"
        echo "" >> "$fileName"
        echo "ANSWER: " >> "$fileName"
        mv "$fileName" "/home/$sysUser/Desktop/"
        echo "\"\$(grep \"ANSWER: $answer\" \"/home/$sysUser/Desktop/$fileName\")\" != \"\""
    elif [ "$outputType" = "message" ]; then
        echo "Solved ${fileName}"
    fi
}

如果我用

代码语言:javascript
运行
复制
createVuln createForensics 8 'What is the UID of the user root?' 0 'Forensics Question 1'

这将输出到秃鹫文件如下:

代码语言:javascript
运行
复制
if [ 
"$(grep "ANSWER: 0" "/home/user/Desktop/Forensics Question 1")" != "" ]; then
    scorePoints "8" "
Solved Forensics Question 1"
fi 

预期产出:

代码语言:javascript
运行
复制
if [ "$(grep "ANSWER: 0" "/home/user/Desktop/Forensics Question 1")" != "" ]; then
    scorePoints "8" "Solved Forensics Question 1"
fi 

显然,这些新线路使引擎失灵了。我复制的鉴证功能的代码并不能做到这一点。当我从终端运行时,createForensics函数中的实际回波不会输出换行符.事实上,if语句甚至可以正确地输出。那么是什么导致了这些新线路?!?

EN

回答 1

Ask Ubuntu用户

发布于 2020-08-31 13:28:56

我和我的朋友刚刚意识到: git没有推动一个特定的改变来解决这个问题是有问题的。有一个空行最初没有重定向到$fileName,您可以看到现在有一个重定向。我想,当我承诺和推动的时候,我决定不接受它。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1271230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档