~によるとhttps://www.geeksforgeeks.org/rev-command-in-linux-with-examples/
Linuxのrevコマンドは、1文字ずつ行を置き換えるために使用されます。
例えば
wolf@linux:~$ rev
Hello World!
!dlroW olleH
rev
実際の適用例は何ですか?
なぜ文字列を裏返すのですか?
答え1
非標準rev
ユーティリティは、文字列の一方向で操作を表現または実行する方が簡単ですが、逆の場合に便利です。
例えば、最後テキスト行のタブを使用してフィールドを区切りますcut
(テキストが標準入力に達すると仮定)。
rev | cut -f 1 | rev
「最後のフィールド」をとして表現する方法がないので、行をcut
反転して最初のフィールドを取得する方が簡単です。明らかにを使用する方がawk -F '\t' '{ print $NF }'
良い解決策だと思うかもしれませんが、常に最善の解決策を最初に検討するわけではありません。
(現在)承認された回答最後から計算してテキスト行からフィールドを切り取り(選択)するには?と一緒にこのアプローチを使用しますrev
が、ランナーの答えは代替案を示しています。
もう1つの例は、大きな整数にカンマを挿入することで次のように12345678
なります12,345,678
(右から始めて3つのグループの元の数字)。
echo '12345678' | rev | sed -e 's/.../&,/g' -e 's/,$//' | rev
また、見ることができます文字列反転を何に使用していますか?より多くの例については、SoftwareEngineering SEのウェブサイトをご覧ください。
答え2
具体的な例を挙げると、rev
生物情報学でよく使われるDNA配列の逆補完を助ける便利なツールです。
覚えてくださいDNAヌクレオチドからなる二本鎖ポリマーである。通常、DNAは単にヌクレオチドの最初の文字(A、C、G、T)としてモデル化されます。あるチェーンの「順序」が分かると、もう一方のチェーンも知られています。 Aは常にTとペアになり、Cは常にGとペアになるためです。したがって、二本鎖DNA配列は次のようになり得る。
ACGTGTCAT
TGCACAGTA
DNAと2本鎖に関するもう1つの事実は、方向性があり、一般に5'末端から3'末端に「読み込まれる」ことです。このストランドは逆平行方向性を有し、反対方向に読み取ることができる。下の画像をご覧ください。
5' ACGTGTCAT 3'
3' TGCACAGTA 5'
配列が非常に長くなる可能性があるので(長さが数千または数百万のヌクレオチド)、鎖を決定することが有用であることがよくあります。したがって、これはプログラム的に行われます。便利な方法はrev
(およびtr
)を使用することです。
echo ACGTGTCAT | tr ACGT TGCA | rev
ATGACACGT
答え3
双方向認識端末(UTF-8以前でも)以前は、テキストファイルをヘブライ語で表示するために使用できました(アラビア語は文字を表現に変換する必要があるため、より複雑です)。これを論理物理方向に変換します。
答え4
テキストファイル形式のストリップレイアウト(ASCIIアート)がある場合は、反転してアセンブリを案内するはんだ付け面の写真を作成します。