读取nul分隔字段 [英] read nul delimited fields

查看:63
本文介绍了读取nul分隔字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

提供此文件

printf 'alpha\0bravo\0charlie' > delta.txt

我想将字段读入单独的变量.我使用的原因空分隔符是因为字段将包含文件路径,该文件路径可以包含除null外的任何字符.我尝试了以下命令:

I would like to read the fields into separate variables. The reason I am using a null separator is because the fields will contain file paths, which can contain any character except null. I tried these commands:

IFS= read mike november oscar < delta.txt
IFS=$'\0' read mike november oscar < delta.txt

但是字段没有正确分割

$ echo $mike
alphabravocharlie

推荐答案

作为一种解决方法,我创建了此函数

As a workaround, I created this function

function read_loop {
  while [ "$#" -gt 0 ]
  do
    read -d '' "$1"
    shift
  done
}

示例用法

read-nul mike november oscar < delta.txt

这篇关于读取nul分隔字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆