如何使用循环从文本文件中获取行作为参数
How can I take lines from a text file as an argument using a loop
如果我有一个名为 inventory.txt 的文本文件,如下所示:
america
mexico
england
如果我 运行 这段代码,america
只需要 运行 秒
while read line;
do
while getopts "U:D:" opt;
do
case $opt in
U)
SOURCE=$OPTARG
echo "SOURCE : $SOURCE"
SITEID=$line
echo "SITE : $SITEID " >&2
;;
D)
DEST=$OPTARG
echo "DESTINATION : $DEST" >&2
;;
esac
done
done < inventory.txt
如何对我的文本文件中的所有行执行此操作?
首先解析参数,然后再通过你的文件:
while getopts "U:D:" opt;
do
case $opt in
U)
SOURCE=$OPTARG
;;
D)
DEST=$OPTARG
;;
esac
done
while read line;
do
echo "SOURCE : $SOURCE"
SITEID=$line
echo "SITE : $SITEID " >&2
echo "DESTINATION : $DEST" >&2
done < inventory.txt
如果我有一个名为 inventory.txt 的文本文件,如下所示:
america
mexico
england
如果我 运行 这段代码,america
while read line;
do
while getopts "U:D:" opt;
do
case $opt in
U)
SOURCE=$OPTARG
echo "SOURCE : $SOURCE"
SITEID=$line
echo "SITE : $SITEID " >&2
;;
D)
DEST=$OPTARG
echo "DESTINATION : $DEST" >&2
;;
esac
done
done < inventory.txt
如何对我的文本文件中的所有行执行此操作?
首先解析参数,然后再通过你的文件:
while getopts "U:D:" opt;
do
case $opt in
U)
SOURCE=$OPTARG
;;
D)
DEST=$OPTARG
;;
esac
done
while read line;
do
echo "SOURCE : $SOURCE"
SITEID=$line
echo "SITE : $SITEID " >&2
echo "DESTINATION : $DEST" >&2
done < inventory.txt