2
/ home / user1 / fooから〜/ fooを取得する方法は?
Bashプロンプトは\wエスケープシーケンスをサポートしています。 \w the current working directory, with $HOME abbreviated with a tilde (uses the value of the PROMPT_DIRTRIM variable) 任意の文字列に対して同様の略語を取得する方法はありますか?つまり、HOME = / home / user1の場合、次のようなことを行う一般的なコマンドはありますか /home/user1 → ~ /home/user1/a/1 → ~/a/1 /home/user2/b/2 → ~user2/b/2 /root → ~root 確かに、sedでsomethingいことを試すこともできますが、いずれにしても、私が望む結果が得られる可能性は低いです。:-) この背後にある動機は、端末のタブのタイトルをできるだけ短くしたいということです。したがって、可能な場合は作業ディレクトリを省略します。 更新:満足のいく解決策が簡単に入手できるとは思えないので、物事を十分に高速に保ちたいので、今は簡単な pwd | sed -e "s|/root|~root|" -e "s|/home/user1|~| そしてルートのために似たようなもの。私はマシン上の唯一のユーザーであるため、これは現在多かれ少なかれ機能しています。誰かがmagical-tool-that-solves-all-problems思い付く場合に備えて質問を公開しておきます(elispで書かれていないことが理想的です...)。