在.txt文件中查找最长行并使用"空格"填充所有行到该长度?

noe*_*ert 3 macos bash shell text

如何在.txt文件中找到最长的行,然后用空格填充其末尾的所有其他行?

我猜这很容易回答.我对使用awk,paste命令等知之甚少.也许有人可以帮助我.谢谢!

更具体一点......到目前为止,我可以做到以下几点.这将从.txt文件中获取最长的行:

awk '{ if (length($0) > max) {max = length($0); maxline = $0} } END { print maxline }' in.txt
Run Code Online (Sandbox Code Playgroud)

用空格填充行(直到50):

awk  'length <= 50 { printf "%-50s\n",$0 }' in.txt > out.txt
Run Code Online (Sandbox Code Playgroud)

我只是不知道将值从一行传递给另一行.

我为什么这么问?我想使用paste命令合并两个.txt文件.文本B将位于文本A的右侧.文本A中的行将具有不同的长度.因此,如果没有足够的空格,布局就不对了.

Ron*_*age 5

通常我发现这类问题是这个思考过程的结果:

  1. 我正在努力解决问题A.
  2. 我认为做B流程将解决A.
  3. 我会问如何实现流程B.

您将获得有关如何实现流程B的文字答案 - 但如果您包含问题A的上下文,您将获得更好的答案,并且可能以比流程B更简单的方式解决问题A.

那么,你想通过使文件中的所有行长度相同来解决什么问题?