フォルダという意味なのは分かりますが、/
一つ理解できないことがあります。
問題を説明するコマンド:
mv ~/Documents/newfolder ./anothernamefolder
なぜここにありますか/
?それは何をしますか?次のように入力できないのはなぜですか?
mv ~/Documents/newfolder . anothernamefolder
答え1
私のコメントリンクに従って(Linuxでは、./(ドットスラッシュ)とはどういう意味ですか?)、推測できるように、スラッシュ(/
)はディレクトリ「表現」です。
2 つの例では、スラッシュは異なることを示します。
mv ~/Documents/newfolder ./anothernamefolder
newfolder
Documents
ユーザーのホームディレクトリ()の下にあるディレクトリを~
現在のディレクトリ()に移動し、./
名前をanotherfolder
。
第二に
touch {jan,feb,mar,apr}_{2017..2019}/file{1..100}
複数のディレクトリのファイルをタッチします。
したがって、コマンドで指定されたディレクトリごとに{jan,feb,mar,apr}_{2017..2019}
create files file{1..100}
。
ここに「/」がなぜあるのでしょうか?それは何をしますか?次のように入力できないのはなぜですか?
上記のように./
現在のディレクトリを表現したものです。
使用したことがある場合
mv ~/Documents/newfolder . anothernamefolder
コマンドを実行すると、あいまいなリダイレクトを指定したため、エラーが発生します。
$ mv ~/Documents/newfolder . anotherfolder
usage: mv [-f | -i | -n] [-v] source target
mv [-f | -i | -n] [-v] source ... directory
ドットを使用して移動できますが、名前は変更されず、呼び出されたフォルダのみが.
移動されます。newfolder
$ mv ~/Documents/newfolder .
$ ls
newfolder
答え2
/
分離ディレクトリ(フォルダはGUI用語です)。
mv
-command/
の別々のパラメータ~
とDocuments
最初のパラメータでは、newfolder
それぞれが前のパラメータのサブディレクトリであることを意味します。
2番目のパラメータも同じです。これはファイルですanothernamefolder
。.
(.
このコンテキストでは)現在のディレクトリは./
必要ありません。
提案したように簡単に削除すると、/
コマンドの意味が変わります。つまり、(他にも)に~/Documents/newfolder
移動しようとします。これは不可能であり、エラーが発生します。.
anothernamefolder
mv