linux - 如何将文本文件读取到参数

标签 linux bash shell

我有包含以下模式的文件

aaaa0000   aaaa0000@gmail.com
bbbb0001   bbbb0001@gmail.com
…

我需要从这个文件中读取值并将其放入变量 例如

  1. aaaa0000 应该是 user
  2. aaaa0001@gmail.com 应为电子邮件

当我尝试以下操作时

while IFS= read -r file; do

[[ $email == *@* ]] && [[ $user==“%s%18d\n”]]

我没有得到正确的值。 我应该如何更改它以将传播的用户和电子邮件值读取为变量?

最佳答案

将要解析内容的变量名称作为参数传递给 read:

while read -r user email; do
  echo "User <${user}> has email <${email}>"
done

有关广泛的讨论,请参阅 BashFAQ #1 .

关于linux - 如何将文本文件读取到参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46141757/

相关文章:

java - 如何使用java在不同机器上执行shell脚本

linux - 在某些模式之前添加文本时,在忽略大小写的情况下使用sed

linux - linux中的top命令

linux - 在 LInux 上使用 firefox 运行 selenium 测试

c - linux终端: Changing images: printing over already printed text游戏

Linux期望命令模拟

javascript - 多台机器上的 socket.io

linux - 如何使用 bash 加入两个文件并删除重复项?

java - 通过 Java JSch 库在远程机器上执行本地脚本

linux - 计算 shell 脚本每一步的时间并显示总执行时间