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

相关推荐

  • VSFTPD+PAM+[基于文件虚拟用户认证 | 基于MYSQL虚拟用户认证]

    VSFTPD+PAM+[基于文件虚拟用户认证 | 基于MYSQL虚拟用户认证] VSFTPD+PAM+[基于文件虚拟用户认证 | 基于MYSQL虚拟用户认证] 一、实验环境 二、实验步骤 1、通过mysql数据库方式虚拟用户认证 1.1数据库配置 1.2FTP配置 1.3测试 2、通过文件方式进行虚拟用户认证 一、实验环境 CentOS 6.7+vsftpd…

    Linux干货 2016-04-18
  • rpm软件包管理

    软件包管理 软件运行环境 API   应用程序开发接口 ABI   二进制接口 Rpm包命名方式 Name-version-release-arch-rpm 例如 zziplib-devel-0.13.162-5.el7.i686.rpm zziplib :主包名 dewel:次包名 0.13.162: 主版…

    Linux干货 2016-08-24
  • awk详解

    —————————— 课外练习 只处理用户ID为奇数的行,并打印用户名和ID号 [root@localhost ~]# awk -F: '{if($3%2!=0) {print&n…

    Linux干货 2016-09-25
  • 十三.Linux博客-2016年8月18日while、for特殊用法、selet循环与菜单、函数

    格式说明: 操作 概念 命令 说明及举例 十三.while、for特殊用法、selet循环与菜单、函数 while特殊用法 while循环的特殊用法(遍历文件的每一行): while read line; do 循环体 done < /PATH/FROM/SOMEFILE 依次读取/PATH/FROM/…

    Linux干货 2016-08-24
  • 浅谈群红包的实现

    前言:红包是支付的方式, 也是社交的延伸。群红包在这两块领域串联得很好, 表现尤为的浓墨重彩. 承接上两篇技术浅谈:1). 浅谈接龙红包的技术实现.2). 浅谈微信红包摇一摇的技术实现.这一次, 让我们谈谈群红包的技术实现. 一为是红包的分配算法, 二为竞抢的技术实现. 分配算法:最初玩群红包的时候, 并没有意识到分配算法的难度…

    Linux干货 2015-03-10
  • find查找

    find查找是生产中最常见的日志查找工具 下面看看它的用法 基本用法: find    查找路径    查找标准    查找到以后的处理动作 查找路径:需要被查找的文件所在的路径,一定是个目录,默认情况下为当前的目录 查找的标准:查找的时候用什么方式去查找 处理动作:文件查找完毕后,需要对查找出来的…

    Linux干货 2017-05-08

评论列表(1条)

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

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