テキスト行のペアの順序を逆にする必要があります例:
- ファーストライン1
- セカンドライン1
- ファーストライン2
- セカンドライン2
- ファーストライン3
- セカンドライン3
に
- セカンドライン1
- ファーストライン1
- セカンドライン2
- ファーストライン2
- セカンドライン3
- ファーストライン3
それを自動化する方法を探しています(ソートするのに650行あります)、魔法の解決策はありますか?ありがとう
以下の両方のソリューションでは、回線が実際にペアになっている必要があります。そうしないと、最後の行が印刷されません。
sed -n 'h; s/.*//; n; G; p' /tmp/foo
awk -F'\n' 'NR%2==1 {line=$0}; NR%2==0 {print $1 "\n" line}' /tmp/foo
より明白なシェルバージョン:
while read -r firstline ; read -r secondline
do
printf '%s\n%s\n' "$secondline" "$firstline"
done