相关疑难解决方法(0)

读取可能不以换行符结尾的面向行的文件

我有一个名为的文件/tmp/urlFile,其中每行代表一个 url。我正在尝试从文件中读取如下内容:

cat "/tmp/urlFile" | while read url
do
    echo $url
done
Run Code Online (Sandbox Code Playgroud)

如果最后一行不以换行符结尾,则不会读取该行。我想知道为什么?

是否可以读取所有行,无论它们是否以新行结束?

shell bash text-processing newlines

22
推荐指数
4
解决办法
2万
查看次数

Bash Read:读取逗号分隔列表,最后一个元素丢失

下面命令的输出对我来说很奇怪。为什么它不给我返回元素 5?

$ echo '0,1,2,3,4,5' | while read -d, i; do echo $i; done
0
1
2
3
4
Run Code Online (Sandbox Code Playgroud)

我希望也能返回“5”。运行GNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu)。添加逗号有效,但我的输入数据没有逗号。我错过了什么吗?

bash shell-script shell-builtin read

8
推荐指数
3
解决办法
3418
查看次数