N 28 第二周 博客作业

linux

1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。

cp   复制命令

语法格式:

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

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

如果DEST存在:

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

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

示例:

[root@zhws ~]# cp /etc/fstab /tmp/test.etc       如果DEST是非目录文件:则覆盖目标文件

cp: overwrite `/tmp/test.etc’? y

[root@zhws ~]# cat /tmp/test.etc                     查看覆盖后的文件

#

# /etc/fstab

# Created by anaconda on Fri Dec 26 21:30:31 2014

#

# 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/VG00-LV01  /                      ext4    defaults        1 1

UUID=3c7983ec-6a7a-4b64-adb7-6aa04fb3ccc3 /boot                  ext4    defaults        1 2

/dev/mapper/VG00-LV00  swap                    swap    defaults        0 0

tmpfs                  /dev/shm                tmpfs  defaults        0 0

devpts                  /dev/pts                devpts  gid=5,mode=620  0 0

sysfs                  /sys                    sysfs  defaults        0 0

proc                    /proc                  proc    defaults        0 0

[xi@zhws ~]$ cp /etc/fstab /tmp             如果DEST是目录文件:则先在DEST目录下创建一个与源                                                                   文件同名的文件,并复制其数据流;

[xi@zhws ~]$ ls /tmp                              查看源文件

fstab          mytest              pulse-lsK2mPTbdc3G  virtual-xi.5YWb4l

[root@zhws ~]# cp /etc/fstab /tmp/a   如果DEST不存在:则事先创建此文件,并复制源文件的数据                                                              流至DEST中;

[root@zhws ~]# ls /tmp                      查看文件

a              keyring-yoqVJg  pulse-7JFcjpEbkUFa  virtual-root.FDm7Mk

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

cp [OPTION]… -t DIRECTORY SOURCE…

如果DEST不存在:错误;

如果DEST存在:

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

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

[root@zhws ~]# cp /etc/fstab /etc/hosts /tmp/b      这个是dir不存在

cp: target `/tmp/b’ is not a directory

[root@zhws ~]# mkdir /tmp/c

[root@zhws ~]# cp /etc/fstab /etc/hosts /tmp/c     这个是dir存在的

[root@zhws ~]# ls /tmp/c

fstab  hosts

常用选项:

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

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

-r, -R:递归复制目录;

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

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

–preserv=

mode:权限

ownership:属主和属组

timestamps: 时间戳

context:安全标签

xattr:扩展属性

links:符号链接

all:上述所有属性

mv命令:移动或重命名文件

语法格式:

mv [OPTION]… [-T] SOURCE DEST

mv [OPTION]… SOURCE… DIRECTORY

mv [OPTION]… -t DIRECTORY SOURCE..

常用选项:

-i:交互式;

-f:force强制覆盖

示例:

[root@zhws tmp]# ls

a              keyring-LPPnFf  orbit-xi

[root@zhws tmp]# mv a A     重命名文件

[root@zhws tmp]# ls

A              keyring-LPPnFf  orbit-xi

[root@zhws tmp]# mv A /etc   移动文件

[root@zhws tmp]# ls /etc

A                          init

rm命令:remove 删除

语法格式:rm [OPTION]… FILE…

常用选项:

-i:interactive

-f:force

-r: recursive

友情提示:删除目录:rm -rf /PATH/TO/DIR         危险操作:rm -rf /*

2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。

1)命令执行的状态结果:

bash通过状态返回值来输出此结果:(1) 成功:0      ;     (2)失败:1-255

命令执行完成之后,其状态返回值保存于bash的特殊变量$?中;

2)命令行展开:

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

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

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

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

[xi@zhws tmp]$ mkdir -v {a,b}_{c,d}

mkdir: created directory `a_c’

mkdir: created directory `a_d’

mkdir: created directory `b_c’

mkdir: created directory `b_d’

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

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

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

mkdir: created directory `/tmp/mylinux/bin’

mkdir: created directory `/tmp/mylinux/boot’

mkdir: created directory `/tmp/mylinux/boot/grub’

mkdir: created directory `/tmp/mylinux/dev’

mkdir: created directory `/tmp/mylinux/etc’

mkdir: created directory `/tmp/mylinux/etc/rc.d’

mkdir: created directory `/tmp/mylinux/etc/rc.d/init.d’

mkdir: created directory `/tmp/mylinux/etc/sysconfig’

mkdir: created directory `/tmp/mylinux/etc/sysconfig/nwwork-scripts’

mkdir: created directory `/tmp/mylinux/lib’

mkdir: created directory `/tmp/mylinux/lib/modules’

mkdir: created directory `/tmp/mylinux/lib64′

mkdir: created directory `/tmp/mylinux/proc’

mkdir: created directory `/tmp/mylinux/sbin’

mkdir: created directory `/tmp/mylinux/sys’

mkdir: created directory `/tmp/mylinux/tmp’

mkdir: created directory `/tmp/mylinux/usr’

mkdir: created directory `/tmp/mylinux/usr/local’

mkdir: created directory `/tmp/mylinux/usr/local/bin’

mkdir: created directory `/tmp/mylinux/usr/local/sbin’

mkdir: created directory `/tmp/mylinux/var’

mkdir: created directory `/tmp/mylinux/var/lock’

mkdir: created directory `/tmp/mylinux/var/log’

mkdir: created directory `/tmp/mylinux/var/run’

4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

文件的元数据是指文件的属性、大小、创建时间、访问时间、属主属组等信息

stat命令   可以查看文件的元数据信息

示例:   [root@zhws ~]# stat /etc/fstab

File: `/etc/fstab’

Size: 769      Blocks: 8          IO Block: 4096  regular file

Device: fc01h/64513d Inode: 1066681    Links: 1

Access: (0644/-rw-r–r–)  Uid: (    0/    root)  Gid: (    0/    root)

Access: 2017-04-06 15:12:12.898139320 +0800

Modify: 2017-01-21 23:23:19.075791789 +0800

Change: 2017-01-21 23:23:19.094791786 +0800

touch 命令   修改时间戳

语法格式  :  touch [OPTION]… FILE…

-c: 指定的文件路径不存在时不予创建;

-a: 仅修改access time;

-m:仅修改modify time;

5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?

alias命令:定义别名

[xi@zhws tmp]$ alias cls=clear

[xi@zhws tmp]$ alias

alias cls=’clear’

引用命令的执行结果:

$(COMMAND)

或`COMMAND`

6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。

ls -d /var/l*[[:digit:]][[:lower:]]

7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。

ls -d /etc/[0-9]*[^0-9]

8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。

ls -d /etc/[^[:alpha:]][a-z]*

9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。

touch /tmp/tfile-`date +”%Y-%m-%d-%H-%M-%S”`

10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

cp /etc/p*[^0-9] /tmp/mytest1

11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。

cp /etc/*.d /tmp/mytest2

12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

[root@zhws ~]# cp /etc/l*.conf /etc/m*.conf /etc/n*.conf /tmp/mytest3

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89946

(0)
淑淑淑淑
上一篇 2017-12-11 19:12
下一篇 2017-12-11

相关推荐

  • 马哥教育网络第21期-第五周课程练习

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@6 ~]# grep '^[[:space:]]\+' /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白…

    Linux干货 2016-08-15
  • gawk基础

     一、gawk 是什么 在了解gawk之前,先了解一下文本三工具      文本过滤工具:grep|egrep|fgrep   其中fgrep不支持正则表达式 1.行编辑器:sed      sed 有两种空间   模式空间    保持空间 2. 文…

    Linux干货 2016-06-24
  • Corosync + Pacemaker 搭建高可用MariaDB服务

    Corosync + Pacemaker 搭建高可用MariaDB服务 实验描述 1.本实验的目的是为了通过手动配置corosync配置文件,实现MariaDB服务的高可用,集群心跳传递使用组播方式。2.三个节点的主机名分别为:node5.redhat.com、node6.redhat.com、node7.redhat.com。地址为172.16.100.5…

    Linux干货 2016-04-06
  • Linux基础小模块

    1.基础知识小块:shell 由shell程序的自带命令:即为内置命令(builtin) 独立的可执行程序文件、文件名 :即为外部命令  [root@localhost~]#ls      ~用户当前所在目录  #:命令提示符(管理员帐号root)  $:普通用户   &nbsp…

    Linux干货 2016-08-10
  • Linux终端类型

    前言 终端是一个很重要的外设,用过终端设备的人都知道如果设备类型不对就会有乱字符,也可用仿真终端软件如netterm试验一下,Linux的终端信息放在 /usr/share/terminfo下,在这个目录的子目录v下就有许多的如vt100,vt102,vt200等,看一下就知道了。 终端类型的区别与概念 1、 pty(虚拟终端): 但是如果我们远程telne…

    Linux干货 2016-10-14
  • shell脚本语言中的选择执行

    shell脚本语言中的选择执行 概述 程序执行过程分为顺序执行、选择执行和循环执行。顺序执行是指程序按照步骤一步一步地运行。选择执行是指程序根据特定条件选择两项或者多项中的一项运行。循环执行是指程序根据特定条件重复执行直到某个节点结束,继续运行其他步骤。本篇文章从判断条件和条件判断式简要说明shell脚本语言中程序选择执行的用法。 shell脚本中的判断条件…

    Linux干货 2017-04-17

评论列表(1条)

  • 马哥教育
    马哥教育 2018-01-02 21:44

    完成的非常好,内容很全面,加油,再接再励。