Shell 跳过文本文件中以'#';经科恩希尔(ksh)

Shell 跳过文本文件中以'#';经科恩希尔(ksh),shell,unix,scripting,ksh,Shell,Unix,Scripting,Ksh,我正在尝试编写一个脚本,它读取一个文本文件,并将每一行保存为一个字符串。我还希望脚本跳过任何以哈希符号开头的行。有什么建议吗?您不应该将跳过的行留给ksh。例如,这样做: grep -v '^#' INPUTFILE | while IFS="" read line ; do echo $line ; done 而不是echo部分,做任何你想做的事情 或者如果ksh不支持此语法: grep -v '^#' INPUTFILE > tmpfile while IFS="" read lin

我正在尝试编写一个脚本,它读取一个文本文件,并将每一行保存为一个字符串。我还希望脚本跳过任何以哈希符号开头的行。有什么建议吗?

您不应该将跳过的行留给
ksh
。例如,这样做:

grep -v '^#' INPUTFILE | while IFS="" read line ; do echo $line ; done
而不是
echo
部分,做任何你想做的事情

或者如果
ksh
不支持此语法:

grep -v '^#' INPUTFILE > tmpfile
while IFS="" read line ; do echo $line ; done < tmpfile
rm tmpfile
grep-v'^#'INPUTFILE>tmpfile
而IFS=“”读取行;不要重复$line;完成
您不应将跳过的行保留到
ksh
。例如,这样做:

grep -v '^#' INPUTFILE | while IFS="" read line ; do echo $line ; done
而不是
echo
部分,做任何你想做的事情

或者如果
ksh
不支持此语法:

grep -v '^#' INPUTFILE > tmpfile
while IFS="" read line ; do echo $line ; done < tmpfile
rm tmpfile
grep-v'^#'INPUTFILE>tmpfile
而IFS=“”读取行;不要重复$line;完成
读取时-r行;做
[[“$line”=*()\*]&继续(&C)
#使用“$line”执行某些操作
完成<文件名
在ksh手册页中查找“文件名模式”或“文件名生成”;做 [[“$line”=*()\*]&继续(&C) #使用“$line”执行某些操作 完成<文件名
在ksh手册页中查找“文件名模式”或“文件名生成”。

如果有一百万行,该怎么办……你会选择一百万行吗?不,我不会选择,因为不会有一百万行。我还说,一根弦,比如一根弦。如果有一百万行呢……你会选一百万行吗?不,我不会选,因为不会有一百万行。我还说,一个字符串,就像一个字符串一样。谢谢你的建议,我得到了‘标准输出上的写入错误管道正在关闭’任何想法??谢谢你的建议,我得到了‘标准输出上的写入错误管道正在关闭’任何想法??