[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
いくつかの GNU プログラム (少なくとも、cp
と mv
) では、
source 引数を処理する前に、その引数の末尾にスラッシュが付いていたら、
それを除去することができるようになっている。‘--strip-trailing-slashes’
オプションを使用することによって、この動作が有効になる。
これが役に立つのは、source 引数の末尾にスラッシュが付いていて、
しかも、その引数がディレクトリへのシンボリックリンクを指定しているかもしれないときだ。
そうした状況は、実のところ、それほど珍しくない。
と言うのも、シェルの中には、そうしたシンボリックリンクに対してファイル名の補完を行うとき、
末尾にスラッシュを自動的に付加するものがあるからだ。
このオプションを指定しないと、たとえば mv
は、(システムの
rename 関数を通してだが、) 末尾にスラッシュが付いていることを、
「シンボリックリンクの参照をたどれ」という指示として解釈しなければならず、
その結果、シンボリックリンクではなく、間接的に参照されているディレクトリの方をリネームしなければならなくなる。
こうした動作がデフォルトになっているのは意外に思えるかもしれないが、POSIX
で要求されている動作であり、POSIX 規格のほかの部分とも首尾一貫している。
This document was generated on June 7, 2022 using texi2html 1.82.