我有一个文本文件,每行都是一个单独编码base64的单词。现在我想解码它。我正在尝试使用base64命令行,但我只在一行中获得所有单词,我希望每行都有一行。将文件的每一行管道到命令
例如,我的文件是:
Y2F0Cg==
ZG9nCg==
aG91c2UK
我想作为结果:
dog
cat
house
但我发现了:
dogcathouse
我觉得xargs的会有所帮助,但我没有明白这一点。
我有一个文本文件,每行都是一个单独编码base64的单词。现在我想解码它。我正在尝试使用base64命令行,但我只在一行中获得所有单词,我希望每行都有一行。将文件的每一行管道到命令
例如,我的文件是:
Y2F0Cg==
ZG9nCg==
aG91c2UK
我想作为结果:
dog
cat
house
但我发现了:
dogcathouse
我觉得xargs的会有所帮助,但我没有明白这一点。
使用base64 --decode
:
$ while read line; do echo $line | base64 --decode; done < file
cat
dog
house
注:我删除了这个答案,因为我认为l0b0的一个完全解决了这个问题。正如我所看到的问题仍然存在问题,我会取消删除该帖子以查看此解决方案是否有所帮助。
谢谢!解决了我的问题 – tpcordeiro
这对我的作品在base64
8.13:
base64 --decode test.txt
无需分割文件。你正在使用哪个版本?
好的,我认为有必要循环遍历文件。 – fedorqui
我用这个,但没有工作。我认为这是因为该文件不是完全base64编码的。实际上,每个单词都是单独编码的,然后将它们放在一起。 – tpcordeiro
您可以使用Python为(无需读取每行):
python -m base64 -d foo.txt
你可能想改变问题的标题,因为它实际上不是关于通过文件循环。 – l0b0
@ l0b0:我不这么认为。因为OP认为它需要循环。但是,有更好的解决方案可用。 – anishsane