【问题标题】:Stdout: User file name inputstdout:用户文件名输入
【发布时间】:2022-01-05 15:13:25
【问题描述】:

我正在编写一个数据格式化 bash 脚本。该脚本读取用户在终端中输入的文件名。当然,当在该目录中找不到该名称下的文件时,程序将以 stderr 输出结束。我现在正在尝试实现一个(while)循环,它递归地询问用户输入,直到找到匹配的文件,然后继续执行我的数据格式化命令。希望得到一些帮助:)

【问题讨论】:

    标签: bash while-loop user-input stdout


    【解决方案1】:

    我现在正在尝试实现一个递归的 (while) 循环

    我建议不要为此使用递归。做一个简单的循环。它可能看起来像这样:

    while true; do
        IFS= read -rp 'File: ' file
        if [[ -e $file ]]; then
            break;
        fi
        echo "$file doesn't exist, try again"
    done
    
    # work with $file here
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-29
      • 2013-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多