Unixのコマンドについて読んでいますが、cp
オプションの1つは次のとおりです。
cp -f : 必要に応じてターゲットファイルを削除して強制的にコピーします。
だからこれがどのように機能するかをテストしたいと思い、次のことをしました。特定のディレクトリから root として「rootfile」というファイルを作成しました。
-rw-r--r--. 1 root root 0 Jan 5 20:27 rootfile
その後、「User」という一般的なユーザーとして「Userfile」という別のファイルを作成しました。
-rw-rw-r--. 1 User User 0 Jan 5 20:27 Userfile
これで、通常のユーザーアカウント「User」としてログインするときに、次のコマンドを使用して、「rootfile」という既存のルートファイルの「Userfile」ファイルに対して簡単なcpを実行しようとしました。
cp Userfile rootfile
これが私が得るものです:
cp: 'rootfile' 一般ファイルを生成できません: 権限が拒否されました。
既存のルートファイルを上書きする権限がないため、これは完全に正常な現象です。
これで、「」オプションを使用してコマンドを適用します-f
。
cp -f Userfile rootfile
すべてがうまく機能し、エラーも報告されません。これで、「rootfile」というファイルを上書きする権限がない場合、これがどのように可能かについて質問があります。ファイルを含むフォルダに対する権限があるためですか?この-f
オプションは実際にどのように機能しますか?
挨拶