私はこれがどのように機能するのか少し混乱していますdirs
。文書には次のように記載されています。
目次
引数がない場合は、ディレクトリスタックの内容を印刷します。コマンドを使用してこのスタックにディレクトリを追加するか、
pushd
コマンドcd
をpopd
使用してディレクトリを削除します。
Q1.私はpopd
Norを使用しませんが、私が訪問したディレクトリを追跡しているpushd
ことがわかりました。dirs
cd
次へ追加、スタックのディレクトリを削除しない)
質問2長いセッションでは、通常は長いディレクトリのリストがcd
印刷dirs
されますが、このリストは最後のディレクトリを最初に印刷し、最後のディレクトリで終わります。したがって、長いリストがあると、画面がスクロールして最新のディレクトリのリストを簡単に見ることができません。ディレクトリ(通常私が最も興味を持っているディレクトリ)。
ディレクトリリストを逆順に印刷するには?
試しましたが、dirs | sort -r
アイテムが正しくソートされていません。たとえば、次のようになります。
20 /foo20/bar
2 /foo2/bar
19 ...
18
...
16
11
10
1
0
ソートされていないソースは次のとおりです。
1 /foo/bar
2 /foo2/bar
3 ...
..
9
10
11
..
20
21
..
30
ベストアンサー1
sort
デフォルトでは、ソートはASCII値に基づいているため、数値が異なる数値は正しくソートされません。この-n
オプションを使用して、先行数値を基準にソートするように指示できます。
dirs -v | sort -nr
または の出力がdirs
すでにソートされているが逆順に変更したい場合は、次のtac
コマンド (reverse cat
) を使用できます。
dirs -p | tac