このパイプラインは、他の最速の回答よりも重要な要因により高速です(結果を参照)。とを使用trしtacます。データに存在しない2つのASCIIバイト(\ x00- \ x7F)を利用する必要があります。  
\x00通常はそのままで良い選択\x01ですが、データにない任意のASCIIバイトを使用できます。
この例では、区切り文字としてSPACEおよびTABを使用しています。区切り文字は、マルチバイトまたはシングルにすることができます。出力区切り文字は単一のスペースです。   
これがコマンドです。ファイル名はnumberof fields_xを示しますnumber of lines  
 <"$file" tr ' \t\n' '\0\0\1' |tr -s '\0' '\n' |tac |tr '\n' ' ' |tr '\1' '\n'
使用されていないバイトを確認する必要がある場合は、このオプションのawkスクリプトで事前に確認できます。全体の時間は、このオプションのスクリプトを実行している場合でも、他の方法よりもはるかに高速です(これまでのところ:)。前処理スクリプトは次のとおりです。
o=($(<"$file" char-ascii-not-in-stream)); x="${o[0]}"; y="${o[1]}"
<"$file" tr ' \t\n' "$x$x$y" |tr -s "$x" '\n' |tac |tr '\n' ' ' | tr '$y' '\n' >"$file".$user
これはawkスクリプトです。 char-ascii-not-in-stream
#!/usr/bin/awk -f
{c[$0]} END{for(i=0;i<=127;i++) {if(sprintf("%c", i) in c);else {printf "\\%03o ",i}}}
このスクリプトの2番目の時間セットには、char-ascii-not-in-streamの時間が含まれます。      
Peter.O {tr,tac,tr} ==== file_10_x10000
real    0m0.013s    0m0.015s
user    0m0.020s    0m0.020s
sys     0m0.008s    0m0.012s   
user11136 {python} ===== file_10_x10000
real    0m0.057s
user    0m0.048s
sys     0m0.008s
jmp {python} =========== file_10_x10000
real    0m0.160s
user    0m0.160s
sys     0m0.000s
rush {awk} ============= file_10_x10000
real    0m0.121s
user    0m0.120s
sys     0m0.000s
##############################################
Peter.O {tr,tac,tr} ==== file_1000_x1000
real    0m0.048s    0m0.059s
user    0m0.040s    0m0.040s
sys     0m0.040s    0m0.048s
user11136 {python} ===== file_1000_x1000
real    0m0.158s
user    0m0.136s
sys     0m0.028s
jmp {python} =========== file_1000_x1000
real    0m0.327s
user    0m0.320s
sys     0m0.008s
rush {awk} ============= file_1000_x1000
real    0m0.832s
user    0m0.820s
sys     0m0s012s
##############################################
Peter.O {tr,tac,tr} ==== file_1000000_x50
real    0m5.221s    0m6.458s
user    0m4.208s    0m5.248s
sys     0m2.624s    0m2.396s
user11136 {python} ===== file_1000000_x50
real    0m16.286s
user    0m10.041s
sys     0m5.148s
jmp {python} =========== file_1000000_x50
real    0m22.845s
user    0m20.705s
sys     0m1.140s
rush {awk} ============= file_1000000_x50
real    0m44.793s
user    0m43.583s
sys     0m0.848s
##############################################
               
              
perl -lane 'print join " ", reverse @F'