Linuxでよく使用されるファイル管理クラスコマンドおよびその使用方法

7955 ワード

一般的なファイル管理はcp(コピー)、mv(移動)、rm(削除)です.
  • 一、cpコマンド:copy-レプリケーションコマンドコマンドフォーマット:cpオプションソースターゲットターゲットcpコマンドは、単一ソースレプリケーションとマルチソースレプリケーションの2種類に分けることができます.フォーマットは以下の通りである:シングルソースコピー:cp[OPTION]...[-T]SOURCE DESTマルチソースコピー:cp[OPTION]...SOURCE...DIRECTORY cp[OPTION]...-t DIRECTORY SOURCE...ここでDESTの状況によって以下の状況に分けられる:シングルソースコピー:1、DESTが存在しない場合:この文書を事前に作成し、ソースファイルのデータをDESTにコピーする;2、DESTが存在する場合:DESTが非ディレクトリファイルである場合:ターゲットファイルを上書きする;DESTがディレクトリファイルである場合:まずDESTディレクトリの下にソースファイルと同じ名前のファイルを作成し、データストリームをコピーします.マルチソースコピー:cp[OPTION]...SOURCE...DIRECTORY cp[OPTION]...-t DIRECTORY SOURCE...1、DESTが存在しない場合:エラー;2、DESTが存在する場合:DESTが非ディレクトリファイルである場合:エラー;DESTがディレクトリファイルである場合:各ファイルをターゲットディレクトリにそれぞれコピーし、元の名前を保持します.一般的なオプション:-i:インタラクティブなコピー、すなわち上書き前にユーザーに確認を促す;-f:ターゲットファイルの上書きを強制します.-r,-R:ディレクトリを再帰的にコピーする;-d:ソースファイルではなく、シンボルリンクファイル自体をコピーします.-a:-dR--preserve=all,archive,アーカイブを実現するために使用される.-p--preserv=mode:権限ownership:属主および属グループtimestamps:タイムスタンプcontext:セキュリティラベルxattr:拡張属性links:シンボルリンクall:上記のすべての属性使用例:コピー/etc/passwdから/tmp/testcp.txt
  • [root@localhost ~]# cp /etc/passwd /tmp/testcp.txt
    [root@localhost ~]# ll /tmp/testcp.txt
    -rw-r--r--. 1 root root 1199 May 19 16:01 /tmp/testcp.txt
    [root@localhost ~]# 
    
    

    コピー/etc/fstabファイルはtestcpを上書きする.txt
    [root@localhost ~]# cat /tmp/testcp.txt
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    .....
    [root@localhost ~]# cp /etc/fstab /tmp/testcp.txt 
    cp: overwrite ‘/tmp/testcp.txt’? y
    [root@localhost ~]# cat /tmp/testcp.txt
    #
    # /etc/fstab
    # Created by anaconda on Tue Apr 23 20:55:10 2019
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    /dev/mapper/centos-root /                       xfs     defaults        0 0
    UUID=e708d7eb-b63a-46e6-ad17-fda76c87af83 /boot                   xfs     defaults        0 0
    /dev/mapper/centos-swap swap                    swap    defaults        0 0
    [root@localhost ~]# 
    

    user 1ホームディレクトリの下のuser 1ファイルを/tmpディレクトリの下にコピーし、元のファイルのプロパティを維持します.
    [root@localhost ~]# cp -a /home/user1/user1.txt  /tmp/
    [root@localhost ~]# ll /home/user1/user1.txt /tmp/user1.txt 
    -rw-rw-r--. 1 user1 user1 0 May 19 16:07 /home/user1/user1.txt
    -rw-rw-r--. 1 user1 user1 0 May 19 16:07 /tmp/user1.txt
    [root@localhost ~]#
    
  • 二、mvコマンド:move-役割:ファイル(ディレクトリ)を移動するか、ファイル(ディレクトリ)の名前を変更します.既存のターゲットファイルにファイルを移動すると、ターゲットファイルの内容が上書きされます.注意事項:1、ファイルやディレクトリを移動する場合、2、mvはcpコマンドの結果とは異なり、mvはファイルが「引っ越し」しているようで、ファイル数は増加していません.cpはファイルをコピーし、ファイルの数が増えた.
        :
    mv [OPTION]... [-T] SOURCE DEST
    mv [OPTION]... SOURCE... DIRECTORY
    mv [OPTION]... -t DIRECTORY SOURCE...
            :
        	-i:     ,          。
        -f:           ;
        -t,--target-directory=:                 ;
    
    使用例は/tmp/user 1である.txtファイルの名前はuser 2に変更する.txtファイル
  • [root@localhost ~]# mv /tmp/user1.txt /tmp/user2.txt 
    [root@localhost ~]# ll /tmp/
    total 8
    drwxr-xr-x. 4 root  root   24 May 19 11:38 a1
    drwxr-xr-x. 2 root  root    6 May 19 11:38 a2
    drwxr-xr-x. 2 root  root   98 May 19 11:57 mytest1
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_z
    -rw-r--r--. 1 root  root  465 May 19 16:04 testcp.txt
    -rw-r--r--. 1 root  root   11 Apr 17  2014 test.file
    drwxr-xr-x. 2 root  root    6 May 19 11:47 tfile-2019-05-19-11-47-16
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user2.txt
    drwx------. 2 root  root    6 May 19 11:35 vmware-root
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_z
    [root@localhost ~]# 
    

    /home/user 1/user 1.txtファイルを/tmp/ディレクトリに移動
    [root@localhost ~]# mv /home/user1/user1.txt /tmp/
    [root@localhost ~]# ll /tmp/
    total 8
    drwxr-xr-x. 4 root  root   24 May 19 11:38 a1
    drwxr-xr-x. 2 root  root    6 May 19 11:38 a2
    drwxr-xr-x. 2 root  root   98 May 19 11:57 mytest1
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_z
    -rw-r--r--. 1 root  root  465 May 19 16:04 testcp.txt
    -rw-r--r--. 1 root  root   11 Apr 17  2014 test.file
    drwxr-xr-x. 2 root  root    6 May 19 11:47 tfile-2019-05-19-11-47-16
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user1.txt
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user2.txt
    drwx------. 2 root  root    6 May 19 11:35 vmware-root
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_z
    [root@localhost ~]#
    
  • 三、rmコマンド:remove rmコマンドは、1つのディレクトリの1つ以上のファイルとディレクトリを削除できます.リンクファイルの場合は、リンクファイル全体を削除するだけで、既存のファイルは変更されません.rmコマンドを使用して削除したファイルはほとんど復元できないため、使用しないファイルは直接削除しないことをお勧めします.すべての使用しないファイルは直接削除しないで、ある専用ディレクトリに移動することをお勧めします.(アナログ回収局)rm[OPTION]...FILE...常用オプション:-i:interactive–インタラクティブモード、既存のファイルまたはディレクトリを削除する前にユーザーに確認する-f:force-ファイルまたはディレクトリを強制的に削除する;-r:recursive–再帰的に、指定したディレクトリの下にあるすべてのファイルをサブディレクトリと一緒に処理します.:-v:詳細な実行手順を表示します.-d:空のディレクトリを削除する;削除ディレクトリ:rm-rf/PATH/TO/DIR危険操作:rm-rf/*
  • 例を使用したインタラクティブな削除
    [root@localhost ~]# ll /tmp/
    total 8
    drwxr-xr-x. 4 root  root   24 May 19 11:38 a1
    drwxr-xr-x. 2 root  root    6 May 19 11:38 a2
    drwxr-xr-x. 2 root  root   98 May 19 11:57 mytest1
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_z
    -rw-r--r--. 1 root  root  465 May 19 16:04 testcp.txt
    -rw-r--r--. 1 root  root   11 Apr 17  2014 test.file
    drwxr-xr-x. 2 root  root    6 May 19 11:47 tfile-2019-05-19-11-47-16
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user1.txt
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user2.txt
    drwx------. 2 root  root    6 May 19 11:35 vmware-root
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_z
    [root@localhost ~]# rm /tmp/user1.txt 
    rm: remove regular empty file ‘/tmp/user1.txt’? y
    [root@localhost ~]# 
    
    

    再帰的インタラクティブ削除
    [root@localhost ~]# ll /tmp/
    total 8
    drwxr-xr-x. 4 root  root   24 May 19 11:38 a1
    drwxr-xr-x. 2 root  root    6 May 19 11:38 a2
    drwxr-xr-x. 2 root  root   98 May 19 11:57 mytest1
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_z
    -rw-r--r--. 1 root  root  465 May 19 16:04 testcp.txt
    -rw-r--r--. 1 root  root   11 Apr 17  2014 test.file
    drwxr-xr-x. 2 root  root    6 May 19 11:47 tfile-2019-05-19-11-47-16
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user2.txt
    drwx------. 2 root  root    6 May 19 11:35 vmware-root
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_z
    [root@localhost ~]# rm -r /tmp/a*
    rm: descend into directory ‘/tmp/a1’? n
    rm: remove directory ‘/tmp/a2’? n
    [root@localhost ~]#
    

    再帰非インタラクティブ削除
    [root@localhost ~]# ll /tmp/
    total 8
    drwxr-xr-x. 4 root  root   24 May 19 11:38 a1
    drwxr-xr-x. 2 root  root    6 May 19 11:38 a2
    drwxr-xr-x. 2 root  root   98 May 19 11:57 mytest1
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_z
    -rw-r--r--. 1 root  root  465 May 19 16:04 testcp.txt
    -rw-r--r--. 1 root  root   11 Apr 17  2014 test.file
    drwxr-xr-x. 2 root  root    6 May 19 11:47 tfile-2019-05-19-11-47-16
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user2.txt
    drwx------. 2 root  root    6 May 19 11:35 vmware-root
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_z
    [root@localhost ~]# rm -rf /tmp/a*
    [root@localhost ~]# ll /tmp/
    total 8
    drwxr-xr-x. 2 root  root   98 May 19 11:57 mytest1
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 q_z
    -rw-r--r--. 1 root  root  465 May 19 16:04 testcp.txt
    -rw-r--r--. 1 root  root   11 Apr 17  2014 test.file
    drwxr-xr-x. 2 root  root    6 May 19 11:47 tfile-2019-05-19-11-47-16
    -rw-rw-r--. 1 user1 user1   0 May 19 16:07 user2.txt
    drwx------. 2 root  root    6 May 19 11:35 vmware-root
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_y
    drwxr-xr-x. 2 root  root    6 May 19 11:44 x_z
    [root@localhost ~]#