将行传递给 cut 并分配给变量 (Bash)
Passing line to cut and assigning to variable (Bash)
我可以像这样读入并打印每个名字:
while read input;
do
echo $input | cut -d ',' -f 1
done
但是如果我尝试将它分配给一个变量并打印它不起作用。它只输出三个空行。 (我的档案里只有三条记录)。我也尝试了其他方法,但附上了我最近的尝试。
while read input;
do
firstName=$input | cut -d ',' -f 1
echo $firstName
done
这是我的用户列表的样子:
Jet,Black
Faye,Valentine
Radical,Edward
搞清楚。我以前尝试过这个解决方案,但忘记了 $input 前面的 echo。
while read input;
do
firstName=$(echo $input | cut -d ',' -f 1)
echo $firstName
done
需要放在子shell.
您应该可以执行以下操作:
firstName=$(echo $input | cut -d "," -f 1)
我可以像这样读入并打印每个名字:
while read input;
do
echo $input | cut -d ',' -f 1
done
但是如果我尝试将它分配给一个变量并打印它不起作用。它只输出三个空行。 (我的档案里只有三条记录)。我也尝试了其他方法,但附上了我最近的尝试。
while read input;
do
firstName=$input | cut -d ',' -f 1
echo $firstName
done
这是我的用户列表的样子:
Jet,Black
Faye,Valentine
Radical,Edward
搞清楚。我以前尝试过这个解决方案,但忘记了 $input 前面的 echo。
while read input;
do
firstName=$(echo $input | cut -d ',' -f 1)
echo $firstName
done
需要放在子shell.
您应该可以执行以下操作:
firstName=$(echo $input | cut -d "," -f 1)