linux文件管理类、bash的基础命令以及习题。

文件管理工具:cp, mv, rm

cp命令:copy 源文件:目标文件;

单源复制:cp [OPTION]… [-T] SOURCE DEST

多源复制:cp [OPTION]… SOURCE… DIRECTORY

        cp [OPTION]... -t DIRECTORY SOURCE...

单源复制:cp [OPTION]… [-T] SOURCE DEST

        如果DEST(目标)不存在;则事先创建此文件,并复制源文件的数据流至DEST中;

        如果DEST存在:

                如果DEST是非目录文件:则覆盖目标文件;

                如果DEST是目录文件:则先在DEST目录下创建与源文件同名的文件,并复制其数据流至目标文件;

多源复制:cp [OPTION]… SOURCE… DIRECTORY

        cp [OPTION]... -t DIRECTORY SOURCE...

        如果DEST不存在:错误;

        如果DEST存在:

                如果DEST是非目录文件:错误;

                如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名;

常规选项:

        -i:交换式复制,即覆盖之前提醒用户确认;

        -f:强制覆盖目标文件;

        -r:递归复制目录;

        -d:复制符号链接文件本身,而非其指向的源文件;

        -a:-dR --preserve=all,archive,用于实现归档;

        --preserv=

            mode:权限

            ownership:属主和属组

            timestamps:时间戳;

            context:安全标签

            xattr:扩展属性

            links:符号链接

            all:上述所有属性

mv命令:move

mv [OPTION]… [-T] SOURCE DEST

mv [OPTION]… SOURCE… DIRECTORY

mv [OPTION]… -t DIRECTORY SOURCE…

常用选项:

        -i:交互式;

        -f:force

rm命令:remove

rm [OPTION]… FILE…

常用选项:

        -f:interactive

        -i:force

        -r:recursive

        删除目录:rm -rf /PATH/TO/DIR

        危险操作:rm -rf /*

bash的工作特性

bash的基础特性之:命令行展开

        ~:自动展开为用户的家目录,或指定的用户的家目录

        {}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径;

        eg:/tmp{a,b}相当于/tmp/a /tmp/b

bash的基础特性之:命令的执行状态结果

    命令执行的状态结果:

        bash通过状态返回值来输出此结果;

            成功:0

            失败:1-255

        命令执行完成之后,其状态返回值保存于bash的特殊变量$?中;获取最近那条命令的状态结果;

    命令正常执行时,有的还会有命令返回值;

        根据命令及其功能不同,结果各不相同;

    引用命令的执行结果:

        $(COMMAND)

        或者`(COMMAND)`

        eg: mkdir $(date +%H-%M-%S)

请使用命令行展开功能来完成以下练习

(1)、创建/tmp目录下的:a_c, a_d, b_c, b_d

        /]# mkdir /tmp/{a,c}_{b,d}

(2)、创建/tmp/mylinux目录下的:

        [root@localhost /]# tree /tmp/mylinux/
        /tmp/mylinux/
        ├── bin
        ├── boot
        │   └── grub
        ├── dev
        ├── etc
        │   ├── rc.d
        │   │   └── init.d
        │   └── sysconfig
        │       └── network-scripts
        ├── lib
        │   └── modules
        ├── lib64
        ├── proc
        ├── sbin
        ├── sys
        ├── tmp
        ├── usr
        │   └── local
        │       ├── bin
        │       └── sbin
        └── var
            ├── lock
            ├── log
            └── run


        /]# mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

原创文章,作者:N24_xiaowen,如若转载,请注明出处:http://www.178linux.com/57679

(0)
N24_xiaowenN24_xiaowen
上一篇 2016-11-05 20:39
下一篇 2016-11-05 21:37

相关推荐

  • 几个正则表达式和find查找语句事例

    显示当前系统上root、fedora、或user1用户的默认shell; ~]# grep -E "^(root|bin|hadop)" /etc/passwd | cut -d: -f7 找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如: hello(); ~]#grep -E -o &qu…

    Linux干货 2016-10-30
  • bash的命令执行状态返回值及命令行展开详解

    命令执行状态返回值及命令行展开是bash的2个基本特性,其详细特点及应用如下:   一、命令执行的状态结果:bash通过状态返回值来输出此结果                 成功:0             …

    Linux干货 2016-11-06
  • GRUB加密、修复和破解密码实战指南

    GRUB加密、修复和破解密码实战指南 GRUB(Boot Loader) 从系统启动流程可以得知,在BIOS读取相关信息之后,接下来是去第一个可以启动的设备当中的MBR中读取Boot Loader信息,Boot Loader提供具有菜单功能、直接加载内核信息,以及相关的控制权转交功能。所以说系统启动必须要有Boot Loader,然后才能去加载内核。 Boo…

    Linux干货 2016-09-19
  • Linux网络属性配置(三)修改配置文件&& CentOS 7 网络配置

    Linux网络属性配置(三)&& CentOS 7网络配置 Linux网络属性配置(三)修改配置文件&& CentOS 7 网络配置 Linux网络属性配置(三)修改配置文件 IP、MASK、GW、DNS相关配置文件: /etc/sysconfig/network-scripts/ifcfg-IFACE 路由相关配置文件: /…

    Linux干货 2016-07-07
  • bash脚本初探

                              (注)$@和$*的区别,以及$0..$n [root@ _6_ ~]# cat weizhi.sh  #!/bin/bash e…

    Linux干货 2016-08-15
  • 制作自动化安装的启动U盘

    制作自动化安装的启动U盘 准备: CentOS 6.8 系统、CentOS-6.8-x86_64-bin-DVD1.iso光盘、U盘、centos-6-x86_64(kickstart文件) mkdir /mnt/myiso  创建目录,创建安装树 查看光盘的挂载点 cp -r /media/CentOS_6.8_Final/isolinux/ &…

    2017-04-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-10 20:18

    总结的比较详细,内容能再扩展下会更好,加油~