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:45

相关推荐

  • rpm 详解

     rpm 包详解 程序包的命名格式:name-VERSION.tar.gz 拆包:主包和分包 主包:name-VERSION-release.arch.rpm 支包:name-function-VERSION-release.arch.rpm   注意:程序包之间有时会存在依赖关系,依靠前端工具解决依赖关系 yum Rhel系列系统上的r…

    Linux干货 2017-08-17
  • 用PHP编写Hadoop的MapReduce程序

    Hadoop流 虽然Hadoop是用java写的,但是Hadoop提供了Hadoop流,Hadoop流提供一个API, 允许用户使用任何语言编写map函数和reduce函数.Hadoop流动关键是,它使用UNIX标准流作为程序与Hadoop之间的接口。因此,任何程序只要可以从标准输入流中读取数据,并且可以把数据写入标准输出流中,那么就可以通过Hadoop流使…

    Linux干货 2015-04-13
  • 内键命令和外部命令

    命令的基本格式 COMMAND  [OPTIONS…]  [ARGUMENTS…]        命令 (COMMAND)       OPTIONS(选项):用于启用或关闭命令的某个或某些功能      …

    2017-05-23
  • linux系统安装流程

    CnetOS6及CnetOS7 系统具体安装流程

    Linux干货 2018-03-27
  • 有关磁盘管理与文件系统

    硬盘物理结构      扇区  磁头  磁道   柱面   磁道数      扇区*一个磁道上的扇区个数*磁头数=柱面      柱面*磁道数=硬盘大小      一个扇区512字节   &…

    2017-08-19
  • 8月5日作业

    课堂练习: 1、找出ifconfig命令结果中本机的所有IPv4地址 [root@localhost ~]# ifconfig | tr -s " " |head -2 | tail -1 |cut …

    Linux干货 2016-08-15

评论列表(1条)

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

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