Bash 如何使用换行符作为输出记录分隔符从对话框重定向stderr?

Bash 如何使用换行符作为输出记录分隔符从对话框重定向stderr?,bash,dialog,stdout,separator,Bash,Dialog,Stdout,Separator,每次运行命令时,我都希望stderr重定向到/tmp/test。测试文件应该有以换行符分隔的记录,而不是转到同一行 如果我对option域名服务器和option路由器的输入分别为192.168.0.1和192.168.0.2,那么这两个选项将出现在同一行。他们应该分道扬镳 我正在使用这些IP地址: 192.168.0.1 192.168.0.2 使用此命令行: $ dialog --title "Inputbox - Example" \ --inputbox "option domain-na

每次运行命令时,我都希望stderr重定向到/tmp/test。测试文件应该有以换行符分隔的记录,而不是转到同一行

如果我对option域名服务器和option路由器的输入分别为192.168.0.1和192.168.0.2,那么这两个选项将出现在同一行。他们应该分道扬镳

我正在使用这些IP地址:

  • 192.168.0.1
  • 192.168.0.2
  • 使用此命令行:

    $ dialog --title "Inputbox - Example" \
    --inputbox "option domain-name-servers" 8 50 "option domain-name-servers " \
    --inputbox "option routers" 8 50 "option routers " \
    2> /tmp/test
    
    使用
    --单独的小部件
    标志 您可以使用--separate小部件标志强制小部件由换行符而不是默认的制表符分隔。例如:

    dialog --separate-widget $'\n' \
           --title "Inputbox - Example" \
           --inputbox "option domain-name-servers" 8 50 "option domain-name-servers " \
           --inputbox "option routers" 8 50 "option routers " \
           2> /tmp/test
    

    这是最后的代码。dhcpd.conf现在将为InputBox中的每个输入提供正确的输出和换行符

    #!/bin/bash
    
    dialog --title "DHCP-CONFIGURATION" \
    dialog --separate-widget $'\n' \
    --inputbox "option domain-name-servers" 8 50 "option domain-name-servers "
    --inputbox "option routers" 8 50 \ "option routers " 
    --inputbox "ddns-update-style" 8 50 \ "ddns-update-style"
    --inputbox "subnet and netmask" 8 50 \ "subnet and netmask "
    --inputbox "range" 8 50 \ "range "
    --inputbox "default-lease-time" 8 50 \ "default-lease-time "
    --inputbox "max-lease-time" 8 50 \ "max-lease-time "
    --inputbox "}" 8 50 \ "} "
    2> /tmp/dhcpd.conf