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

cp [option] SRC... DEST

SRC是单个文件:

如果DEST不存在,则新建DEST,并将SRC中的内容填充到DEST中

如果DEST存在:

如果DEST是文件,则将SRC中的内容覆盖到DEST中

如果DEST是目录,将SRC复制到DEST中,并保持原名

SRC是多个文件:

DEST必须是目录并且存在,其它情形均会出错

SRC是目录:

使用-r选项,递归复制

如果DEST不存在,则新建DEST目录,并将SRC中的内容复制到DEST中

如果DEST存在:

如果DEST是文件,会报错

如果DEST是目录,将SRC目录复制到DEST目录下

常用选项:

-p:相当于--preserve=mode,ownership,timestamps,保留权限、属主、时间等

-d : 相当于--no-dereference --perserv-links复制符号链接文件本身,而非其指向的目标文件

-a:相当于-dR --preserve=all ,归档,保留所有的原属性

-i:交互式选项,执行危险操作会询问用户

-f:--force,强制执行

-r -R: 递归复制

-v:显示详细信息

示例:

[root@www tmp]# cp /tmp/passwd /tmp/test

[root@www tmp]# cp -a /tmp/dir1 /tmp/dir2

移动:mv

mv [option] SRC... DEST

SRC是单个文件:

如果DEST不存在,则移动SRC并重命名为DEST

如果DEST存在:

如果DEST是文件,将SRC中的内容覆盖到DEST中,并删除SRC

如果DEST是目录,将SRC移动到DEST中,并保持原名

SRC是目录:

DEST必须是目录

如果DEST不存在,则移动SRC并重命名为DEST

如果DEST存在,将SRC目录移动到DEST目录下

常用选项:

-i:交互式选项

-f:--force,强制执行

示例:

[root@www tmp]# mv test ./dir1

[root@www tmp]# mv /tmp/dir1/test /tmp/test2

删除:rm

rm [option]... FILE...

-r 递归,删除目录

-f 强制执行

-i:交互式选项

--no-preserve-root 强制删除/

示例:

[root@www tmp]# rm -f test2

[root@www tmp]# rm -rf dir1

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

(1)bash命令执行状态返回值使用特殊变量$?保存

0,成功

1:失败

echo $? 显示执行状态

(2)命令行展开:

~:展开为用户的主目录

~USERNAME:展开为指定用户的主目录

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

例如:/tmp/{a,b} = /tmp/a,/tmp/b

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

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

touch /tmp/{a,b}_{c,d}

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

mkdir -p /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}

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

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

文件的元数据用于记录文件的许多信息,比如

Size:大小,

Device:文件的位置

Uid:拥有人,

Gid:所属的组,

Blocks:块大小,

Links:链接数量

时间戳:

Access:访问时间

Modify:修改时间,

Change:改变时间

等等

元数据查看:stat命令

修改文件的时间戳使用touch命令:

格式:touch[OPTION]...FILE...

参数:

-a:只改atime(access time)

-m:只改mtime(modify time)

-t STAMP:指定时间修改

[[CC]YY]MMDDhhmm[.ss]

-c:如果文件不存在则不予创建。

Note:touch文件时,假如文件不存在,会默认创建该文件。

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

(1)alias

显示当前shell进程中所有可用的命令别名

(2)alias NAME=‘VALUE’

定义别名的NAME,其相当于执行命令VALUE

注意:

定义之后只对当前shell进程有效,想要永久生效,要定义在配置文件中;编辑后不会离职生效

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

ls -d /var/l*[0-9]*[[:lower:]]

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

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

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

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

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

touch tfile-$"(date +%F-%H-%M-%S)"

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

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

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

mkdir /tmp/mytest2&&cp -a /etc/*.d /tmp/mytest2

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

mkdir /tmp/mytest3&&cp -a /etc/[l,m,n]*.conf /tmp/mytest3

转载于:https://blog.51cto.com/igaoming/1838334

马哥第3期运维班第二周作业相关推荐

  1. linux运维初学作业,Linux运维班第二次作业(示例代码)

    一.列出当前系统上所有已经登录的用户的用户名(同用户登录多次只显示一次). 题目并没有说明取出的用户名是否允许排序处理,所以可写成: # who | cut -d' ' -f1 | sort -u 二 ...

  2. 马哥Linux2016最新高薪运维视频课程

    马哥2016最新Linux高薪运维学习课程采用了RHEL 6.6和CentOS 7.1,全面介绍CentOS7全新特性,本课程加入实战式Shell.Mysql数据库入门.iptables入门及实战应用 ...

  3. python123平台作业答案第十一周_马哥2016全新Linux+Python高端运维班第十次作业

    系统的INPUT和OUTPUT默认策略为DROP,请完成以下关于iptables的题目:iptables -A INPUT -d 10.18.11.13 -p tcp --dport 22 -j AC ...

  4. 《马哥出品高薪linux运维教程》wingkeung学习笔记-linux基础入门课程5

    命令: 内部命令:由shell程序自带的命令叫做内部命令: 外部命令:在系统的某个路径下,有一个与命令同名的可执行程序叫做外部命令. 查看内外部命令的命令:type 命令 命令选项:用于调整命令执行行 ...

  5. 马哥运维架构 第一周作业

    为什么80%的码农都做不了架构师?>>>    1.    描述计算机的组成及其功能. 计算机由运算器,控制器,存储器,输入设备和输出设备五大部件组成. 运算器的主要功能是对数据进行 ...

  6. linux+python高端运维班2017年1月课程及服务全新升级!

    老男孩IT教育是唯一一个和51CTO学院战略合作达到在线开班15期以上(近千名学员)以上的培训机构. 老男孩教育始终坚持以"不能让学员高薪就业的培训机构都是耍流氓"为标准开展教学任 ...

  7. linux云计算运维和程序员,某哥教育2020Linux云计算运维工程师课程

    这个版本只有这么多,剩余部分还没找到. D:\BAIDUNETDISKDOWNLOAD\01LINUX_\M哥教育2020LINUX云计算运维工程师课程 |   README.txt |  M哥教育2 ...

  8. 老男孩28期运维张帅学习Linux决心书

    学习Linux决心书 我叫张帅,经过老男孩教育运维班5个月学习后,我一定要达到的的薪水目标是10K,为了达到此目标我将采取如下10大行动: 1.在上课前认真预习. 2.上课认真听讲抓住重点做好随堂笔记 ...

  9. linux运维入门第一周的学习部分命令!

    linux运维入门一周后,部分常用命令. { 逻辑靠思维,命令全靠记!} / 根分区 代表分区的根 alias 别名命令 例如:alias NAME='VALUE' cat /etc/ centos- ...

最新文章

  1. android studio miui8,MIUI8上在Android Studio运行出错集及其解决方案
  2. ISP线路类型【整理】
  3. 打印正整数n之内的斐波那契数列
  4. 将图的广度优先遍历在邻接矩阵和邻接表存储结构上分别实现_图解:什么是“图”?
  5. dom4j读取XML文件内容
  6. mockjs语法规范、设置mockjs拦截响应时间、Mock.Random占位符生成随机数据
  7. Websphere 手动模拟删除应用操作
  8. 【比赛】NOIP2017 列队
  9. numpy常用函数总结 | 菜鸟教程
  10. 最全总结 | 聊聊 Python 数据处理全家桶(Sqlite篇)
  11. 三星手机官方固件下载
  12. Java DAO、Service、web理解之DAO层
  13. 通知 | 2021 中国高校计算机大赛 —— 微信大数据挑战赛
  14. 慎用Application.DoEvents( )
  15. ele ui 清空选项和重新校验
  16. 开源进企业8月27日活动
  17. 基于C++的泡泡堂游戏设计与实现
  18. 怎样录制gif动态图
  19. mysql 共享nfs,服务器之间搭建NFS共享文件 - 老牛博客
  20. python 字典循环赋值,Python字典循环添加一键多值的用法实例

热门文章

  1. xcode多target
  2. Windows Server 2012 HyperV之SMB共享实时迁移
  3. 不要担心,我可以一个人走
  4. 【转载】学习嵌入式系统需要具备的条件、方法及步骤
  5. VUE 笔记(持续更新中...)
  6. spring boot 整合mybatis 无法输出sql的问题
  7. [ZJOI2011]细胞——斐波那契数列+矩阵加速+dp
  8. SpringBoot整合mybatis、shiro、redis实现基于数据库的细粒度动态权限管理系统实例(转)...
  9. C# 7.2和8.0路线图
  10. 微服务之数据同步Porter