Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从文本文件中读取一行,将其保存为变量,然后在bash命令中使用它_Bash - Fatal编程技术网

如何从文本文件中读取一行,将其保存为变量,然后在bash命令中使用它

如何从文本文件中读取一行,将其保存为变量,然后在bash命令中使用它,bash,Bash,我有一个list.txt文件,其中包含一列3个值(1、0、0),我希望将每行的值读入一个变量,然后在命令中使用它 我试着这样做: for i in {1..3} do a=`sed -n "$i"p list.txt` b="fslmaths HCP"$i".nii.gz -mul "$a" posMEM/HCP"$i".nii.gz" echo $b done 但我得到了以下结果: posMEM/HCP1.nii.gzz -mul 1 posMEM/HCP2.nii.gzz -mul

我有一个list.txt文件,其中包含一列3个值(1、0、0),我希望将每行的值读入一个变量,然后在命令中使用它

我试着这样做:

for i in {1..3}
do
a=`sed -n "$i"p list.txt`

b="fslmaths HCP"$i".nii.gz -mul "$a" posMEM/HCP"$i".nii.gz"
echo $b
done
但我得到了以下结果:

 posMEM/HCP1.nii.gzz -mul 1
 posMEM/HCP2.nii.gzz -mul 0
 posMEM/HCP3.nii.gzz -mul 0
我希望得到的是

fslmaths HCP1.nii.gz -mul 1 posMEM/HCP1.nii.gz
fslmaths HCP2.nii.gz -mul 0 posMEM/HCP2.nii.gz
fslmaths HCP3.nii.gz -mul 0 posMEM/HCP3.nii.gz

给定的代码对我有效!!!,为了改进,请在脚本中提供
list.txt
的完整路径。哦,这很奇怪,我尝试输入完整路径,这没有任何区别,您可以尝试在调试模式下运行脚本:
bash-x yourscript.sh
并查看发生了什么…
list.txt
可能包含dos
\r
字符。我只是将excel文件中的一列复制并粘贴到list.txt中。如果是,我如何删除\r给定的代码对我有效!!!,为了改进,请在脚本中提供
list.txt
的完整路径。哦,这很奇怪,我尝试输入完整路径,这没有任何区别,您可以尝试在调试模式下运行脚本:
bash-x yourscript.sh
并查看发生了什么…
list.txt
可能包含dos
\r
字符。我只是将excel文件中的一列复制并粘贴到list.txt中。如果是,如何删除该选项\r\n