N25第二周作业

第二周

一、文件管理命令

复制命令:cp

命令格式

  cp [OPTION]... [-T] SOURCE DEST
  cp [OPTION]... SOURCE... DIRECTORY
  cp [OPTION]... -t DIRECTORY SOURCE...

常用参数

  -r:递归复制目录及其子目录内的所有内容
  -a:相当于-dR --preserve=all
  -p:保持指定文件的原有属性
  -d:等于--no-dereference --preserve=links
  -f:强制覆盖

例如:

[root@zf ~]# cp  /etc/init.d/ /tmp/mageedu/  
# 复制/etc/init.d/的所有文件到/tmp/mageedu/

移动命令:mv

命令格式

   mv [OPTION]... [-T] SOURCE DEST
   mv [OPTION]... SOURCE... DIRECTORY
   mv [OPTION]... -t DIRECTORY SOURCE...

常用参数

-f:强制覆盖

例如:

[root@zf ~]# mv -f aa /tmp/mageedu/
#复制当前目录文件aa强制覆盖到/tmp/mageedu/

删除命令:rm

命令格式
rm [OPTION]... FILE...

常用参数

-f:强制删除
-r:递归删除目录

例如:

[root@zf ~]# rm -rf /tmp/mageedu/   
#强制删除/tmp/mageedu/和tmp/mageedu/下所有的文件及子目录

二、命令执行状态返回值

echo $?
显示最近一条命令的执行状态结果

0:成功
1-255:失败

例如:

[root@zf ~]# ls /tmp/
[root@zf ~]# echo $?
0 #命令执行成功显示状态为0

[root@zf ~]# lss /tmp/
[root@zf ~]# echo $?  
127  #命令执行失败显示状态为127

命令展开

~:展开为用户的主目录
~USERNAME:展开为制定用户的主目录
{}:可承载一个以逗号分隔的列表,并将其展开为多个路径

例如:

[root@zf ~]# mkdir /tmp/{a,b}
#在/tmp/下创建目录 a和b

三、命令如下

1.创建/tmp目录下的:ac,ad,bc,bd

[root@zf ~]# mkdir /tmp/{a,b}_{c,d}

2.创建/tmp/mylinux/目录下的:

[root@zf ~]# tree /tmp/mylinux/
/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

命令如下:

[root@zf ~]# mkdir -p /tmp/mylinux/{bin,dev,lib64,proc,sbin,sys,tmp,boot/grub,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,usr/local/{bin,sbin},var/{lock,log,run}}

四、文件的元数据如下:

Access time:访问时间 即:通过查看命令读取文件内容
Modify time:修改时间 即:改变文件内容
Change time:改变时间 即:元数据发生改变

例如:查看/tmp/zabbix_agentd.log的元数据

[root@zf ~]# stat /tmp/zabbix_agentd.log 
 File: "/tmp/zabbix_agentd.log"
 Size: 38233           Blocks: 88         IO Block: 4096   普通文件
Device: 802h/2050d      Inode: 549354      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  502/  zabbix)   Gid: (  502/  zabbix)
Access: 2016-12-03 08:20:59.064537140 +0800
Modify: 2016-12-04 10:49:47.869660777 +0800
Change: 2016-12-04 10:49:47.869660777 +0800

修改元数据命令如下:

[root@zf ~]# touch -at 201611121536.01 /tmp/zabbix_agentd.log  
#修改/tmp/zabbix_agentd.log的access time时间为2016-11-12 15:36:01

[root@zf ~]# stat /tmp/zabbix_agentd.log                      
 File: "/tmp/zabbix_agentd.log"
 Size: 38233           Blocks: 88         IO Block: 4096   普通文件
Device: 802h/2050d      Inode: 549354      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  502/  zabbix)   Gid: (  502/  zabbix)
Access: 2016-11-12 15:36:01.000000000 +0800
Modify: 2016-12-04 10:49:47.869660777 +0800
Change: 2016-12-04 13:21:32.148654243 +0800

五、别名定义

通过alias实现: alias:显示当前shell进程所有可用的命令别名

alias NEWNAME='OLDNAME OPTIONS'

例如:

alias grep='GREP_COLOR="1;31" grep --color=auto'

注意:在命令行中定义的别名,仅对当前shell进程有效,如果想永久 有效,需修改配置文件

仅对当前用户:~/.bashrc

所有用户有效:/etc/bashrc

修改配置文件后不会立即生效,不关闭当前shell进程的情况下,需重新读取配置文件:source /PATH 或 . /PATH

在命令中引用另一个命令的执行结果

“或$()

例如:

[root@zf ~]# echo The date is $(date)
The date is 2016年 12月 05日 星期一 08:15:07 CST

或[root@zf ~]# echo The date is `date`
The date is 2016年 12月 05日 星期一 08:16:50 CST

管道:COMMAND1 | COMMAND2 | …

例如:

[root@zf ~]# cat /etc/passwd | grep root
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

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

[root@zf ~]# ls -d /var/l*[0-9]*[[:lower:]]
/var/laf4Eg

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

[root@zf ~]# ls -d /etc/[0-9]*[^0-9]
/etc/2sf3df

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

[root@zf ~]# ls -d /etc/[^a-z][a-z]*
/etc/2sf3df  /etc/3dfwe5

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

[root@zf ~]# touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)
[root@zf ~]# ls /tmp/
keyring-Iv5CMg  pulse-bkIQvnHKdPEx  tfile-2016-12-05-08-41-47

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

[root@zf ~]# cp -r /etc/p*[^0-9] /tmp/mytest1
[root@zf ~]# ls  /tmp/mytest1/  
pam.d    pbm2ppa.conf  pinforc   pnm2ppa.conf  ppp             printcap   pulse
pango    pcmcia        pki       popt.d        prelink.cache   profile    purple
passwd   php-fpm.conf  plymouth  portreserve   prelink.conf    profile.d
passwd-  php.ini       pm        postfix       prelink.conf.d  protocols

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

[root@zf ~]# cp -r /etc/*.d /tmp/mytest2/
[root@zf ~]# ls /tmp/mytest2/
bash_completion.d  event.d        makedev.d       profile.d  rc5.d          sane.d
chkconfig.d        init.d         modprobe.d      rc0.d      rc6.d          setuptool.d
cron.d             latrace.d      oddjobd.conf.d  rc1.d      rc.d           statetab.d
depmod.d           ld.so.conf.d   pam.d           rc2.d      request-key.d  sudoers.d
dnsmasq.d          logrotate.d    popt.d          rc3.d      rsyslog.d      xinetd.d
dracut.conf.d      lsb-release.d  prelink.conf.d  rc4.d      rwtab.d        yum.repos.d

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

[root@zf ~]# cp /etc/[lmn]*.conf /tmp/mytest3
[root@zf ~]# ls /tmp/mytest3
latrace.conf  libaudit.conf  logrotate.conf  mke2fs.conf  nfsmount.conf  ntp.conf
ld.so.conf    libuser.conf   ltrace.conf     mtools.conf  nsswitch.conf

原创文章,作者:N25-深圳-寻觅,如若转载,请注明出处:http://www.178linux.com/63062

(0)
N25-深圳-寻觅N25-深圳-寻觅
上一篇 2016-12-08 22:49
下一篇 2016-12-09 15:51

相关推荐

  • Linux基础之shell脚本编程(四)

    1、写一个脚本   (1) 能接受四个参数:start, stop, restart, status    start: 输出“starting 脚本名 finished.”   (2) 其它任意参数,均报错退出;   1 #!/bin/bash   2 #a…

    Linux干货 2016-11-28
  • Linux中的 德·摩根定律

    Linux中的 德·摩根定律 §·德·摩根定律介绍 ※概念 在命题逻辑和逻辑代数中,德·摩根定律(或称德·摩根定理)是关于命题逻辑规律的一对法则。 奥古斯塔斯·德·摩根首先发现了在命题逻辑中存在着下面这些关系: 非(P 且 Q) = (非 P) 或 (非 Q) 非(P 或 Q) = (非 P) 且 (非 Q) 德·摩根定律在数理…

    Linux干货 2016-08-15
  • 文件的权限和访问控制列表

      在linux管理中,为了使不同的用户对文件有不同的操作权限。我们需要正确的修改文件的权限,一方面是为安全着想, 另一方面则是防止自己辛辛苦苦码出的东西被其它用户给误删。 1.如何修改文件的属主和属主:   前面用户和组管理的内容中,我们已经对文件的属主、属组问题做了说明。有时候我们需要对一些文件的属组和属组进行修改…

    Linux干货 2016-08-04
  • 马哥教育网络班22期+第一周课程练习

    1、描述计算机的组成及其功能。 计算机由硬件系统、操作系统和应用软件所组成,没有安装任何软件的计算机称为裸机。 1.1、硬件系统由运算器、控制器、存储器、输入设备和输出设备五大部分组成,遵循冯、诺依曼原理。 控制器:读取分析指令,向其它部分发出控制信号,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。  运算器:对数据进行各种运算,例如…

    Linux干货 2016-08-22
  • 1.初识linux

    1.计算机组成 计算机五大部件:运算器、控制器、存储器、输入设备、输出设备。对应实际情况大致如下: CPU CPU(Central Processing Unit)主要包含运算器、控制器;也包含寄存器、缓存用于辅助: CPU在同一时间能并行处理的二进制数的位数称为CPU字长。字长由CPU对外数据通路的数据总线条数决定。 运算器 运算器也称…

    Linux干货 2016-08-22
  • N25第六周博客作业

    第六周博客作业   请详细总结vim编辑器的使用并完成以下练习题 1、 复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; :%s@^\([[:space:]]\+\)@#\1@ig    2、 复制/boot/grub/grub.con…

    Linux干货 2017-01-10

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-16 23:23

    赞~~内容清晰易懂~排版也比较好~继续加油~