第二周博客作业

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

cat(concatenate)#从头开始看

    文本文件查看工具

SYNOPSIS:

    cat [OPTION]… [FILE]…

-A 输出行最后加上$号
-n 输出行号

例:

blob.png

tac

和cat一样,是查看文本工具,它是从最后往前看

SYNOPSIS:

    tac [OPTION]… [FILE]…

blob.png

more:

    翻页,只能向下翻

+num 从num行开始翻页
-num 定义more查看页面的大小

空格:一屏一屏往下翻

回车:一行一行往下翻

less:

    和more一样,这不过这里可以往上翻

/或? 用来查询
-N less的内容中行首显示行号

查询时可以用:

n:往下翻
N:往上翻

例:

blob.png

tail:

    查看文本内容(从最后开始看)

SYNOPSIS

    tail [OPTION]… [FILE]…

直接输出行,默认是10行
-# 输出最后一行到#号行信息
-f 动态查看内容

例:

blob.png

tail -f 和-F

-f和-F都是跟踪testfile文档;当删除testfile文档时,-f就不再跟踪,而-F回继续跟踪并且会提示“tail: `testfile' has become inaccessible: No such file or directory”;当新建一个testfile文档时,-F会继续跟踪显示出来,而-f不会显示;即-F不会因为删除或重建而停止跟踪。

退出:ctrl+c

head:

    查看文本内容(从头开始看)

SYNOPSIS

       head [OPTION]… [FILE]…

-# 输出起始到#号行信息

例:

blob.png

mkdir:

    创建目录

SYNOPSIS

       mkdir [OPTION]… DIRECTORY…

-p 创建多级目录时,不管该目录是否存在,直接创建
-v 可视化

例:

blob.png

rmdir:

    删除空目录

SYNOPSIS

       rmdir [OPTION]… DIRECTORY…

blob.png

会删除所有空目录

cd:

~ 进入家目录和cd回车一样效果
回到上次所在目录,与当前目录来回切换
.

当前目录

.. 上级目录
~USERNAEM 切换至指定用户家目录

ls:

-l 显示目录项的详细信息
-a

显示隐藏文件

-d 查看当前目录自身,而非其内部文件列表
-t 当前目录下按时间排序
-i 查看inode
-h 以kb显示,默认是字节

cp:

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

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

-r -R 递归复制目录
-i 交互式复制,即覆盖之前提醒用户(默认)
-f 强制覆盖目标目录
-a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合
-d 复制符号链接文件本身,而非其指向的源文件

例:

blob.png

mv

mv #剪切,还能重命名

[root@localhost ~]# mv 111 222 #mv 是把源目录放到目标目录下

rm

-f 强制删除(该目录不存在时,也能删除,不会有提示)

-r 删除目录(不加,只会删除目录中的文件)

-i 删除前会询问(默认就加在里面了)


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

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

blob.png                                               

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

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

命令的执行状态结果

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

       成功:0

       失败:1-255

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

blob.png

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

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

    答:blob.png

  (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

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

blob.png

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

blob.png

File:文件名 

Size:文件大小

Blocks:占据的块数(磁盘事先是被分隔成块的)

IO Block:IO块的大小,如上例,每个块大小是4096,共占据了8个块,就等于8*4096

Device:所在的设备号

Inode:索引节点号

Links:硬链接

Access:权限

Uid:属主以及它的UID号

Gid:属组以及它的GID号

Access:最近访问时间

Modify:最近更改

Change:最近改动

stat:

    显示文件或文件系统状态

access:访问时间-atime

modify:创建或更改文件时间-mtime

change:更改的元数据(像inode,文件名,权限,属主,属组)-ctime

touch:

    改变时间戳

-c 指定的文件路径不存在不予创建
-a 仅修改access time
-t 后面可以接欲修订的时间而不用目前的时间,格式为[YYMMDDhhmm]
-m 仅修改modify time

例:

blob.png

blob.png

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

SYNOPSIS:

    alias[别名]=[指令名称]

例:

[root@localhost ~]# alias s='ls -alt /var/' #设置别名

[root@localhost ~]# alias  #查看别名

[root@localhost ~]#unalias +别名 #删除别名

alias只在当前终端下生效

要想永久有效,可以放下面

[root@localhost ~]# vi /etc/profile #一般不放在这下面

[root@localhost ~]# vi .bashrc #家目录.bashrc

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

 ~]# ls -ld /var/l[0-9]*[[:lower:]]

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

~]# ls -d /etc/[[:digit:]]*[^0-9]

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

 ~]# ls -d /etc/[^[:alpha:]][[:alpha:]]*

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 -r /etc/p*[^0-9] /tmp/mytest1

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

 ~]# cp -p /etc/*.d /tmp/mytest2

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

~]# cp -p /etc/[lmn]*.conf /tmp/mytest3

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

(0)
CCCC
上一篇 2016-12-12
下一篇 2016-12-12

相关推荐

  • 国际标准OSI七层模型和事实标准TCP/IP四层模型

    我们知道,标准分为三种:国际标准、国家标准和事实标准。那我们学习的两个重要模型:OSI和TCP/IP模型分别属于国际标准和事实标准,接下来我们来总结一下两种模型的分层及功能还有异同: 一:国际标准OSI模型 OSI:(Open System Interconnect) 开放系统互连,总共分为七层,从下到上顺序为:物理层(physical)、数据链路层(dat…

    2017-09-02
  • shell编程2

    组合测试条件  第一种方式:        COMMAND1 && COMMAND2 并且        COMMAND1 || COMMAND2 或者        ! COMMAND 非   &nbs…

    Linux干货 2016-08-21
  • MySQL or MariaDB 简介

    DBMS:数据库管理系统 RDBMS:关系型数据库管理系统    总之:他们都是一个数据管理程序;大多都是CS架构,都有专门的通信协议进行数据交换 关系模型:               表(行或者列):二维关系 设计范式:       &…

    Linux干货 2017-01-12
  • Homework Week-9 bash脚本之顺序、选择、循环

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash #Elephant echo "nologin users:" user1=$(cat /etc/passwd&n…

    Linux干货 2016-10-17
  • 【招聘】北京/互联网/运维工程师/7-15K/双休,五险一金

    岗位职责:   1、负责服务器的规划、调试优化、日常监控、故障处理、数据备份、日志分析等工作;   2、参与运维流程制定,确保任何突发情况都能高效响应;  3、负责服务器部署,对服务器构架和网络进行优化和改进;  4、负责运维相关数据的收集、分析和总结;  5、负责技术运维相关的文档、手册…

    Linux干货 2016-04-16
  • 如何在微软云上搭建mysql主从

    大家好: 今天我分享下在生产环境的微软云服务器上如何搭建mysql主从: 环境如下图: 我把cnux06-testing设为Mysql主服务器,暂时没需求的cnux04-web1db2设为Mysql从服务器 1–首先要在master上开启binlog日志功能并使主从库中的 server-id保持不同 操作步骤如下: A: 先查看mysql的主目录…

    Linux干货 2017-02-14

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-14 12:11

    博客完成的非常好,有运行结果的展示,非常充分的说明问题,加油!