zoukankan      html  css  js  c++  java
  • 每天一个linux命令

    学习文章

     1. cd  

    cd / 
    进入系统根目录
    cd ~
    返回进入此目录之前所在的目录
    cd -

    2. ls

    ls [选项] [目录名]
    -a,
    -A,同-a,但不列出“.”
    -h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)
    –si 类似 -h,但文件大小取 1000 的次方而不是 1024
    -F,-p,指定在每个项目名称后加上指示符号
    -r, –reverse 依相反次序排列
    -R, –recursive 同时列出所有子目录层
    -s, –size 以块大小为单位列出所有文件的大小
    -t 以文件修改时间排序
    -u 配合 -lt:显示访问时间而且依访问时间排序
    配合 -l:显示访问时间但根据名称排序
    否则:根据访问时间排序

    example:

    例一:列出/home/peidachang文件夹下的所有文件和目录的详细资料
    命令:ls -l -R /home/peidachang   
            ls -lR /home/peidachang
    例二:列出当前目录中所有以“t”开头的目录的详细内容,可以使用如下命令:
    命令:ls -l t*   
    例三:只列出文件下的子目录
    命令:ls -F /opt/soft |grep /$  
    例四:列出目前工作目录下所有名称是s 开头的档案,愈新的排愈后面,可以使用如下命令:
    命令:ls -ltr s*
    例五:列出目前工作目录下所有档案及目录;目录于名称后加"/", 可执行档于名称后加"*" 
    命令:ls -AF
    例六:计算当前目录下的文件数和目录数
    命令:
    ls -l * |grep "^-"|wc -l ---文件个数  
    ls -l * |grep "^d"|wc -l    ---目录个数
    例七: 在ls中列出文件的绝对路径
    命令:ls | sed "s:^:`pwd`/:"
    例九:列出当前目录下的所有文件(包括隐藏文件)的绝对路径, 对目录不做递归
    命令:find $PWD -maxdepth 1 | xargs ls -ld
    例十:递归列出当前目录下的所有文件(包括隐藏文件)的绝对路径
    命令: find $PWD | xargs ls -ld 
    例十一:指定文件时间输出格式
    命令:
     ls -tl --time-style=full-iso
    显示彩色目录列表
        打开/etc/bashrc, 加入如下一行:
        alias ls="ls --color"

    3.  pwd

    pwd -P  显示出实际路径,而非使用连接(link)路径。 

    4. mkdir

      -p, --parents  可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录; 

      dahu@dahu-OptiPlex-3046:~/myfile/dahu$ mkdir -vp project/{lib,bin/etc}
    mkdir: created directory 'project'
    mkdir: created directory 'project/lib'
    mkdir: created directory 'project/bin'
    mkdir: created directory 'project/bin/etc'

      dahu@dahu-OptiPlex-3046:~/myfile/dahu$ tree
    .
    ├── 777
    ├── daqing
    ├── project
    │   ├── bin
    │   │   └── etc
    │   └── lib
    ├── test
    └── test1

    5.  rm

        -f, --force    忽略不存在的文件,从不给出提示。
        -i, --interactive 进行交互式删除
        -r, -R, --recursive   指示rm将参数中列出的全部目录和子目录均递归地删除。
        -v, --verbose    详细显示进行的步骤
              --help     显示此帮助信息并退出
              --version  输出版本信息并退出

    6.  rmdir

    rmdir 目录名 命令不能直接删除非空目录

    感觉没啥用

    7.  mv

    -b :若需覆盖文件,则覆盖前先行备份。 
    -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
    -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
    -u :若目标文件已经存在,且 source 比较新,才会更新(update)
    -t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。
    实例三:将文件log1.txt,log2.txt,log3.txt移动到目录test3中。 
    命令:
    mv log1.txt log2.txt log3.txt test3
    mv -t /opt/soft/test/test4/ log1.txt log2.txt     log3.txt 
    实例六:目录的移动
    命令:
    mv dir1 dir2 
    实例7:移动当前文件夹下的所有文件到上一级目录
    命令:
    mv * ../
    实例八:把当前目录的一个子目录里的文件移动到另一个子目录里
    命令:
    mv test3/*.txt test5

    8.  cp

    在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数。

    但是如果是在shell脚本中执行cp时,没有-i参数时不会询问是否覆盖。

    -a, --archive    等于-dR --preserve=all
        --backup[=CONTROL    为每个已存在的目标文件创建备份
    -b                类似--backup 但不接受参数
       --copy-contents        在递归处理是复制特殊文件内容
    -d                等于--no-dereference --preserve=links
    -f, --force        如果目标文件无法打开则将其移除并重试(当 -n 选项
                        存在时则不需再选此项)
    -i, --interactive        覆盖前询问(使前面的 -n 选项失效)
    -H                跟随源文件中的命令行符号链接
    -l, --link            链接文件而不复制
    -L, --dereference   总是跟随符号链接
    -n, --no-clobber   不要覆盖已存在的文件(使前面的 -i 选项失效)
    -P, --no-dereference   不跟随源文件中的符号链接
    -p                等于--preserve=模式,所有权,时间戳
        --preserve[=属性列表   保持指定的属性(默认:模式,所有权,时间戳),如果
                   可能保持附加属性:环境、链接、xattr 等
    -R, -r, --recursive  复制目录及目录内的所有项目

    在没有带-a参数时,两个文件的时间是不一样的。在带了-a参数时,两个文件的时间是一致的。  

    dahu@dahu-OptiPlex-3046:~/myfile/dahu/777$ cp log2.txt ../log
    dahu@dahu-OptiPlex-3046:~/myfile/dahu$ ls -lR
    .:
    total 24
    drwxrwxr-x 2 dahu dahu 4096 4月   1 17:37 777
    drwxrwxr-x 2 dahu dahu 4096 4月   1 16:16 daqing
    -rw-rw-r-- 1 dahu dahu    8 4月   1 17:38 log
    drwxrwxr-x 4 dahu dahu 4096 4月   1 16:52 project
    drwxrwxr-x 2 dahu dahu 4096 4月   1 16:16 test
    drwxrwxr-x 2 dahu dahu 4096 4月   1 16:17 test1
    
    ./777:
    total 8
    -rw-rw-r-- 1 dahu dahu  8 4月   1 17:31 log1.txt
    -rw-rw-r-- 1 dahu dahu 25 4月   1 17:37 log2.txt
    
    dahu@dahu-OptiPlex-3046:~/myfile/dahu/777$ cp -a log1.txt ../log
    dahu@dahu-OptiPlex-3046:~/myfile/dahu$ ls -lR
    .:
    total 24
    drwxrwxr-x 2 dahu dahu 4096 4月   1 17:37 777
    drwxrwxr-x 2 dahu dahu 4096 4月   1 16:16 daqing
    -rw-rw-r-- 1 dahu dahu    8 4月   1 17:31 log
    drwxrwxr-x 4 dahu dahu 4096 4月   1 16:52 project
    drwxrwxr-x 2 dahu dahu 4096 4月   1 16:16 test
    drwxrwxr-x 2 dahu dahu 4096 4月   1 16:17 test1
    
    ./777:
    total 8
    -rw-rw-r-- 1 dahu dahu  8 4月   1 17:31 log1.txt
    -rw-rw-r-- 1 dahu dahu 25 4月   1 17:37 log2.txt
  • 相关阅读:
    Code review
    一点心得
    有关双向追踪性的一点感觉
    测试用例分析的一点心得
    js简单的抽屉菜单
    新的感受
    linux的VPS如何分区
    PHP中Unicode转码和解码的实现
    xampp安装及配置
    js Unicode编码转换
  • 原文地址:https://www.cnblogs.com/dahu-daqing/p/6653940.html
Copyright © 2011-2022 走看看