Linux cpコマンドを使用すると、ファイルとディレクトリをコピーできます。デフォルトでは、ファイルでのみ機能します。ディレクトリをコピーしようとしたとき。ターミナルで以下のエラーが発生します。
cp:-rが指定されていません。ディレクトリの省略
Linuxでこのエラーが発生する理由を理解し、解決策を見つけましょう。
まず、cpを再現しましょう:ディレクトリエラーを省略します
ファイルをsrc_file.txtから/home/ atechtown/dest_dirフォルダーにコピーしましょう。
cp src_file.txt /home/atechtown/dest_dir
これはファイルに対しては問題なく機能します。
それでは、ディレクトリに対してコマンドを実行して、何が起こるかを見てみましょう。ディレクトリをsrc_dirからdesk_dirにコピーします。
cp src_dir desk_dir cp: -r not specified; omitting directory 'src_dir'
copyコマンドの何が問題になっていますか?なぜエラーメッセージcpがディレクトリを省略しているのですか?
cp省略ディレクトリエラーソリューション
cp:ディレクトリエラーを省略すると、cpコマンドがデフォルトでファイルに対してのみ機能するため、ディレクトリがコピーされないことを示します。 単純に、引数として-rまたは-R(再帰的)を指定してcpコマンドを使用し、cpを解決します。ディレクトリエラーを省略します。
これがこのオプションの内容です
-R, -r, --recursive copy directories recursively
したがって、-rまたは-Rオプションを使用すると、ディレクトリ/サブディレクトリを再帰的にコピーできます。
次に、–rオプションを指定してcopyコマンドを実行しましょう。
cp -r src_dir dest_dir
または
cp -R src_dir dest_dir
これで、コマンドが正常に機能し、ディレクトリとコンテンツもコピーされていることがわかります。
概要
Linuxcpコマンドは非常に便利で強力です。デフォルトでは、ファイルに対してのみ機能します。ディレクトリをコピーするには、-rまたは-Rオプションを使用する必要があります。そうしないと、ディレクトリエラーが省略されます。このソリューションは、UnixおよびLinuxディストリビューション(Ubuntu、Redhat、FedoraまたはOpenSuse、CentOSなど)で機能するはずです。
詳細については、AskubuntuとStackOverflowに関するこのディスカッションを参照してください。
この記事がお役に立てば幸いです。共有して購読してください。