我希望能够从中读取一组行 bash脚本中的文件。以下代码打印第一个 两次文件的行
#!/bin/bash
filename=$1
read -r line < "$filename"
echo $line
read -r line < "$filename"
echo $line
而我想打印第二行。 以下代码打印文件的所有行
#!/bin/bash
filename=$1
while read -r line
do
echo $line
done < "$filename"
但是在一个更复杂的脚本中 我不想插入复杂的逻辑来完成不同的任务 同时被迫从一个文件中读取每一行。 有人可以建议一种方法来做像
这样的事情 # Read in a line from a file.
# Do something with that line.
#
# Read in the next 5 lines from the file.
# Do something different with those lines.
#
# etc.
感谢。
答案 0 :(得分:2)
将整个代码包装在从文件重定向的块中:
na.vector <- df$Q17a_17 * df$Q17a_19 * df$Q17a_23
na.vector[!is.na(na.vector)] <- 0
num.vector <- as.numeric(df$Q17a_17 | df$Q17a_19 | df$Q17a_23)
df$new_column <- na.vector + num.vector
df <- df[ , -which(names(df) %in% c("Q17a_17", "Q17a_19", "Q17a_23"))]