问题:我有一个CSV转储文件,超过250,000行。当我使用while read
时,需要一段时间(无意冒犯)。我想回到最后的10,000行来完成我需要做的事情,而不是250,000行。
代码片段:我的当前代码如下:
IFS=","
while read line
do
awk_var=`echo "$line" | awk -F" " '{print $0}'`
var_array=($awk_var)
read -a var_array <<< "${awk_var}"
echo "${var_array[1]}"
done </some_directory/directory/file_in_question.csv
问题:如何在使用bash脚本读取file_in_question.csv
时,结合tail -n10000
和while read line
命令使用?
awk_var=$(echo "$line" | awk -F " " '{print $0}')
与awk_var=$(echo "$line")
完全相同,与awk_var=$line
完全相同,只是在第一种情况下使用$line
可以减少两个外部命令、一个子shell和几行代码。此外,var_array=($awk_var)
是错误的,并且您稍后会用read
覆盖awk_var
。 - Etan Reisner