私が読んだフォルダからコンテンツをコピーするには、次のようにします。
cp -rfva ../foldersource/. ./
しかしこれも効果がある
cp -rfva ../foldersource/* ./
違いはありますか?
たとえば、次のようにファイルを起動したい場合:
rm -rf ../foldersource/.
エラーが発生します。
rm: rejet delete folder '.' or '..':
しかし、アスタリスクだけを撮ってください。
rm -rf ../foldersource/*
それでは、Asteriskはどこでも良い選択でしょうか?
ベストアンサー1
この2つの形態の議論には根本的な違いがあります。何が起こっているのかを理解することが重要です。
引数はそれであれ他で../foldersource/.
あれ、変更されずにコマンドに渡されます。単にディレクトリを指す標準のUnixルールとは異なり、末尾の点が特別な意味を持つかどうかは、コマンドによって異なります。cp
rm
rm
cp
まず、../foldersource/*
シェルによって拡張されました。今後コマンドは引数が渡されても実行されます。したがって、拡張バージョンなどはrm
見たことがありません。オペレーティングシステムでは、コマンドに渡すことができる引数の数は通常数百に制限されるため、これは重要です。../foldersource/*
../foldersource/file1.ext ../foldersource/file2.ext ../foldersource/childfolder1