如果在shell脚本中是否有换行符,如何输出变量而不更改?
我有一个shell脚本,从另一个shell脚本获取输入。流在stdin上传输。 我需要将stdin流的所有字节捕获到shell脚本中的单个变量。然后,对它执行一些操作,并通过stdout将其发回。 我遇到的问题是有时输入文件中有一个尾随的换行符,但有时却没有。如果没有,那么我不想添加一个。但是,如果有一个尾随换行符,我想保留它。 问题在于,无论我尝试什么,系统总是输出没有尾随换行符(如同的情况) printf )或者它总是以换行符输出(如同的情况) echo )。 请告诉我一个过程的名称是什么(不是 echo 要么 printf )它简单地接受一个变量并逐字逐句地逐字节输出它。我已经尝试了所有可能的选择 printf 并且它们都不能保留尾随换行符。 谢谢。