コマンドラインツールを使用するたびに出力が明確に解釈できることを確認したいと思います。他のコンピュータでは、特定のパスの下にあるすべてのシンボリックリンクを見つけてコンソールに印刷するシェルスクリプトを作成します"<Escaped Path To Symbolic Link>" \e[91m=>\e[0m "<Escaped Path To Target>"
。スクリプトはANSIエスケープコードを解析し、<Escaped Path To Symbolic Link>
それぞれシンボリックリンクとその宛先へのパスであり、印刷できない文字はコンソールに<Escaped Path To Target>
(ここでは16進数で)表示されるようにエスケープされます。\xHH
H
結論として言えば、矛盾はありません。シンボリックリンクまたはそのターゲットパスにが含まれている場合、=>
区切り文字は赤いテキストとして表示され、区切り文字で区切られます。どちらのパスにもANSIエスケープコードが含まれている場合、エスケープ文字はコンソールにマークされて\e
赤以外の文字が存在する可能性を排除します=>
。改行文字はでレンダリングされ、\n
二重引用符はで表示されます\"
。
tree
私は何らかの方法で出力をより明確にする3つの方法を知っています。
-q
tree
印刷できない文字が で表示されます?
。出力に与える可能性のある影響はすべてキャンセルされます。-C
ぬりえをオンにしてください。と一緒に使用すると、-F
追加の文字が付いた名前とは異なる色で区別されます。これにより、名前が等号で終わるファイルをソケットと区別できます。
両方のオプションを使用すると、印刷できない文字を置き換えた文字がどの文字を表すかが不明になり、?
実際にはファイルまたはフォルダ名の一部である疑問符と区別できなくなります。->
シンボリックリンクが指すシーケンスがパスにある場合、パスの空白がに変換されるため、区別が可能です\
。
出力を完全に明確にするにはどうすればよいですか?