zoukankan      html  css  js  c++  java
  • Linux常用命令总结——文件管理


    Linux中的目录

    路径:也就是linux中的目录(文件夹)有绝对路径和相对路径
    根目录:/
    用户主目录(home directory):位于/home目录下,用户登录时
    工作目录(working directory):当前目录

    当前目录查看命令:pwd (print working directory)
    当前目录:./
    当前目录的上一级目录:../..
    返回到上一级目录:cd ..

    进入当前目录下的dirfile目录:cd dirfile
    cd ~ :进入用户主目录(账号所在目录)  或者直接cd回车
    cd - :(回到先前的目录)

    创建、删除查看和显示目录

    1.创建目录

    格式:mkdir [选项]  目录

    功能:创建目录

    常用选项说明:

     -m  创建目录的同时设置访问权限

    -p  一次性创建多级目录

    【例】:rootfile文件夹下创建test文件夹,并在test文件夹下创建file文件夹。

     

    [root@localhost rootfile]# mkdir -p test/file
    [root@localhost rootfile]# ls
    test
    [root@localhost rootfile]# cd test
    [root@localhost test]# ls
    file
    [root@localhost test]#

    【例】:rootfile文件夹下创建test2文件夹,并设置test2的权限为766

     

    [root@localhost rootfile]# mkdir -m 766 test2
    [root@localhost rootfile]# ls
    test  test2
    [root@localhost rootfile]# ls -l
    total 16
    drwxr-xr-x 3 root root 4096 Jul 21 21:27 test
    drwxrw-rw- 2 root root 4096 Jul 21 21:30 test2

    注释:rwxrw-rw-分别对应三种不同用户的权限,分别有三们二进制表示,766对应111 110 110

    2.删除目录

    格式rmdir  [选项]  目录

    功能:删除目录

    常用选项说明:

    -p  递归删除目录,当子目录删除后其父目录为空时,也一同删除

    【例】:删除test下的file目录(文件夹),同时test也一并删除

     

    [root@localhost rootfile]# ls
    test  test2
    [root@localhost rootfile]# rmdir -p test/file
    [root@localhost rootfile]# ls
    test2

    3.查看当前目录

    格式:pwd

    功能:pwd (print working directory),查看当前目录.

    常用选项说明:

    【例】:查看当前目录

     

    [root@localhost rootfile]# pwd
    /home/rootfile

    5.显示目录内容

    格式:ls  [选项]  [文件目录]

    功能:显示指定目录中的文件和了目录信息,当不指定目录时,显示当前目录下的文件和子目录信息

    常用选项说明:

    -a  显示所有文件和子目录,包括隐藏文件和主目录

    -l  显示文件和子目录的详细信息,包括文件类型、权限、所有者和所属群组、文件大小、最后修改时间、文件名

    -d  如果参数是目录,则只显示目录信息,而不显示其中所包含的文件信息

    -t  按时间顺序显示

    -R  不仅显示指定目录下的文件和子目录信息,而且还递归地显示子目录下的文件和子目录信息

     

    创建和查看文件

    创建文件

    格式:touch filename

    功能:创建文件

    常用选项说明:

    【例】:rootfile下创建文件file.txttest2/file2.txt

     

    [root@localhost rootfile]# touch file.txt
    [root@localhost rootfile]# touch test2/file2.txt
    [root@localhost rootfile]# ls
    file.txt  test2
    [root@localhost rootfile]# cd tes*
    [root@localhost test2]# ls
    file2.txt

     

     

    cat命令

    格式:cat  [选项]  filename

    功能:依次读取filename中的内容

    常用选项说明:

    【例】:读取rootfileTest.javafile中的文件内容

     

    [root@localhost rootfile]# ls
    file.txt  test2  Test.class  Test.java
    [root@localhost rootfile]# vi test2
    [root@localhost rootfile]# vi file*
    [root@localhost rootfile]# cat Test.java
    public class Test {
            public static void main(String args[]) {
                    System.out.println("Hello Linux!");
            }
    }
    [root@localhost rootfile]# cat Test.java file.txt
    public class Test {
            public static void main(String args[]) {
                    System.out.println("Hello Linux!");
            }
    }
    this is a file test.

    【例】:Test.javafile.txt文件合并到combine.txt文件中

     

    [root@localhost rootfile]# cat Test.java file.txt > combine.txt
    [root@localhost rootfile]# cat comb*
    public class Test {
            public static void main(String args[]) {
                    System.out.println("Hello Linux!");
            }
    }
    this is a file test.

    more命令

    格式:more  [选项]  filename

    功能:依次读取filename中的内容,该命令与cat的不同是可以逐屏往下翻页显示,按q退出。

    常用选项说明:

    -p  显示下一屏之前先清屏

    -s  文件中连续的空白行压缩成一个空白行显示

    【例】:显示file.txt的内容

     

    [root@localhost rootfile]# more file.txt
    this is a file test.


    【例】:显示Test.javafile.txt的内容

     

    [root@localhost rootfile]# more Test.java file.txt
    ::::::::::::::
    Test.java
    ::::::::::::::
    public class Test {
            public static void main(String args[]) {
                    System.out.println("Hello Linux!");
            }
    }
    ::::::::::::::
    file.txt
    ::::::::::::::
    this is a file test.


    less命令

    格式:less  [选项]  filename

    功能:依次读取filename中的内容,该命令与more的不同是不仅可以向下翻页,还可以向上翻页,使用上下键、Enter、空格、pageDownpageUp可以实现前后翻页,按q退出。

    常用选项说明:

    【例】:显示Test.java的内容

     

    [root@localhost rootfile]# less Test.java
    public class Test {
            public static void main(String args[]) {
                    System.out.println("Hello Linux!");
            }
    }

     

    head命令

    格式:head  [选项]  filename

    功能:显示文件的头几行

    常用选项说明:

    -n  显示文件的前n行,如果没有n值,默认为10

    【例】:显示Test.java的前3

     

    [root@localhost rootfile]# head -3 Test.java
    public class Test {
            public static void main(String args[]) {
                    System.out.println("Hello Linux!");

     

    tail命令

    格式:tail  [选项]  filename

    功能:显示文件的末尾几行

    常用选项说明:

    +n  从第n行开始显示

    -n  显示文件的最后n行,如果没有n值,默认为最后10

    【例】:显示Test.java的最后3

     

    [root@localhost rootfile]# tail -3 Test.java
                    System.out.println("Hello Linux!");
            }
    }

    文件查找

    格式:find  [选项]  filename

    功能:从指定的目录开始,递归地搜索其子目录,查找满足条件的文件并对之采取相关的操作

    常用选项说明:

    -name 字串  要查找的文件名,可以用通配符*、?、[]

    -group 字串  文件所属的用户组名

    -user  文件所属的用户名

    find命令提供的查询条件可以是一个用逻辑符andornot组成的复合条件

    -a  逻辑与

    -o  逻辑或

    -!  逻辑非

    【例】:查找当前目录下文件名含有Test的文件

    [root@localhost rootfile]# find -name 'Test*'

    ./Test.class

    ./Test.java

    【例】:在根目录下查找文件名为temp或是匹配install*的所有文件

     

    [root@localhost rootfile]# find / -name 'temp' -o -name 'instal*'
    /etc/rhgb/temp
    /etc/yum/pluginconf.d/installonlyn.conf
    /etc/vmware-tools/installer.sh
    /software/tomcat5/webapps/docs/appdev/installation.html
    /software/tomcat5/temp
    /sbin/install-info
    /sbin/installkernel
    /usr/share/aclocal-1.9/install-sh.m4
    /usr/share/icons/Bluecurve/96x96/mimetypes/install.png
    /usr/share/icons/Bluecurve/24x24/mimetypes/install.png
    /usr/share/icons/Bluecurve/16x16/mimetypes/install.png
    /usr/share/icons/Bluecurve/48x48/mimetypes/install.png
    /usr/share/aclocal-1.7/install-sh.m4
    /usr/share/doc/cyrus-sasl-lib-2.1.22/install.html
    /usr/share/doc/sgml-common-0.6.3/html/install-catalog.html
    /usr/share/doc/m2crypto-0.16/demo/Zope27/install_dir
    /usr/share/doc/m2crypto-0.16/demo/ZopeX3/install_dir
    /usr/share/doc/libstdc++-devel-4.1.1/html/install.html
    ……

    【例】:rootfile下查找不含Test*的文件

     

    [root@localhost rootfile]# find ! -name 'Test*'
    .
    ./.Test2.swp
    ./1q
    ./.Test.java.swp
    ./test2
    ./test2/file2.txt
    ./combine.txt
    ./file.txt

    文字统计命令

    格式:wc  [选项]  filename

    功能:统计文件的字节数、字数、行数

    常用选项说明:

    -c  统计字节数

    -l  统计行数

    -w  统计字数

    【例】:统计Test.java的字节数、行数、字数

     

    [root@localhost rootfile]# wc Test.java
      5  14 105 Test.java
    [root@localhost rootfile]# wc -wcl Test.java
      5  14 105 Test.java

    复制、移动和删除文件或文件夹

    cp 命令

    格式:cp  [选项]  源目录或文件  目标目录或文件

    功能:将给出的文件或目录复制到另一个文件或目录中

    常用选项说明:

    -b  若存在同名文件,则覆盖前备份原来的文件

    -f  强制覆盖同名文件

    -rR  按递归方式,保留原目录结构复制文件

    【例】:复制file.txt文件到file2,若file2已经存在,则备份file2.

     

    [root@localhost rootfile]# ls
    1q  combine.txt  file.txt  test2  Test.class  Test.java
    [root@localhost rootfile]# cp -b file.txt file2
    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file.txt  test2  Test.class  Test.java
    [root@localhost rootfile]# cp -b file.txt file2
    cp: overwrite `file2'? n
    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file.txt  test2  Test.class  Test.java
    [root@localhost rootfile]# cp -b file.txt file2
    cp: overwrite `file2'? y
    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file2~  file.txt  test2  Test.class  Test.java

    【例】:test2文件复制到test3文件夹

     

    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file2~  file.txt  test2  Test.class  Test.java
    [root@localhost rootfile]#
    [root@localhost rootfile]# cp -r test2 test3
    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file2~  file.txt  test2  test3  Test.class  Test.java

    mv命令

    格式:mv  [选项]  源目录或文件  目标目录或文件

    功能:移动或重命名文件或目录

    常用选项说明:

    -b  若存在同名文件,则覆盖前备份原来的文件

    -f  强制覆盖同名文件

    【例】:/home/rootfile下的Test.java移动到/home/rootfile /test2

     

    [root@localhost rootfile]# mv Test.java test2/Test
    [root@localhost rootfile]# ls -R
    .:
    1q  combine.txt  file2  file2~  file.txt  test2  test3  Test.class
    ./test2:
    file2.txt  Test
    ./test3:
    file2.txt

    rm 命令

    格式:rm  [选项]  文件夹或目录

    功能:删除文件夹或目录

    常用选项说明:

    -f  强制删除文件,不出现确认提示

    -rR  按递归方式删除目录,默认只删除文件

    【例】:删除当前目录下的test3文件夹

     

    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file2~  file.txt  test2  test3  Test.class
    [root@localhost rootfile]# ls test3
    file2.txt
    [root@localhost rootfile]# rm -r test3
    rm: descend into directory `test3'? y
    rm: remove regular empty file `test3/file2.txt'? y
    rm: remove directory `test3'? y
    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file2~  file.txt  test2  Test.class

    【例】强制删除当前目录下的test2文件夹

     

    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file2~  file.txt  test2  Test.class
    [root@localhost rootfile]# rm -rf test2
    [root@localhost rootfile]# ls
    1q  combine.txt  file2  file2~  file.txt  Test.class


  • 相关阅读:
    搭建nginx反向代理用做内网域名转发
    TOMCAT下面发布项目的4种方式
    centos 安装 rabbitmq
    RabbitMQ在windows下的安装
    mysql物理备份
    Linux(CentOS)下,下载安装Nginx并配置
    whereis 命令
    windows下安装以及配置nginx
    CentOS 7安装配置Redis数据库
    CentOS6.5下安装ActiveMQ
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3206392.html
Copyright © 2011-2022 走看看