Second

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

cat     concatenate file and print ont the standard output

cat [OPTION]…[FILE]…                     eg :cat /etc/passwd      

       -E, –show-ends       

              display $ at end of each line     显示出换行符$

       -n, –number   

              number all output lines             显示行号

tac     concatenate file and print files in reverse

tac [OPTION]…[FILE]…                     eg :tac /etc/fstab

file    determine file type       判断文件类型

file [FILE]…               file /etc/issuse

head         output the first part of files

head [OPTION]…[FILE]…                 eg :head /etc/passwd -5

-n –lines

tail   output the last part of files

tail [OPTION]…[FILE]…           eg :tail  /etc/fstab -5 -f

-n –lines

-f –follow

more file perusal filter for crt viewing

eg :more /etc/fstab

less opposite of more

eg :less /etc/fstab

stat    display file or file system status

stat FILE….

           Metadata

           Data

                    Access time

                    Modify time

                    Change time

Touch      change file timestamps

Touch [OPTIN]…FILE…            eg :touch $(date +%F-%T)

           -c     don't create any files

           -a     change only access time

           -m    change only modify time

           -t     STAMP [[CC]YY]MMDDhhmm[-ss]

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

time=2016     

echo “$time”  à 2016

echo $time à 2016     ———-$time === ${time}

echo ‘$time’ à $time

 

cd /etc

echo $?  à 0

cd /etc/abcd.abdcd

echo $? à 1

 

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

cd ~harry == cd /home/harry

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

touch /tmp/{a,b} == touch /tmp/a

                                 touch /tmp/b

touch /tmp/a_{c,d}   ==  touch /tmp/a_c

                                         touch /tmp/a_d

                               

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

         1>创建/tmp 目录下的:a_c ,a_d ,b_c ,b_d

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

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

mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/loca/l{bin,sbin},var/{lock,lob,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

                            `—lob

                            `—run

 

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

 [root@localhost tmp]# stat /etc/fstab

  File: ‘/etc/fstab’

  Size: 541               Blocks: 8          IO Block: 4096   regular file

Device: fd00h/64768d    Inode: 67170434    Links: 1      

Access: (0644/-rw-r–r–)  Uid: (    0/    root)   Gid: (    0/    root)

Context: system_u:object_r:etc_t:s0           

Access: 2016-12-08 14:16:45.141628043 +0800        最近访问文件的时间

Modify: 2016-11-21 17:12:27.528759013 +0800         最近更改文件的时间

Change: 2016-11-21 17:34:36.473240449 +0800       最近改动文件的时间

         Birth: –

 

touch      -a   change only access time

               -m  change only  modify time

               -t     STAMP[[CC]YY]MMDDhhmm[.ss]

 

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

    alias ll=’ls -l’               vim /etc/bashrc

    $(date) | `date `       eg : touch $(date) == touch `date`

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

    ls -d  /var/1*[0-9]*[a-z]

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

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

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

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

    ls -d /etc/[^[alpha]][a-z]*

    ls -d /etc[^a-z][a-z]*

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

    touch /tmp/file-$(date +%F-%H-%M-%S)

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

    mkdir /tmp/test1/ | cp /etc/p*[^0-9] /tmp/mytest1 

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

    mkdir /tmp/mytest2/ | cp  -r /etc/*.d /tmp/mytest2 

    11、复制/etc目录下所有以lmn开头,以.conf结尾的文件至/tmp/mytest3目录中

   mkdir /tmp/test3/ | cp -r /etc/[lmn]*.conf /tmp/mytest3

         本次是用word写的,复制过来格式有点乱,正在尝试用markdown 编写,以前没有用过markdwon写过文档,非常的生熟。下篇博客试试,努力把博客写到最好。非常感谢马哥教育的答疑老师们,认真的为我们的博客进行指导。

    –CarbonC

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

(0)
c_cc_c
上一篇 2016-12-13 22:33
下一篇 2016-12-14 10:07

相关推荐

  • shell脚本之测试命令(test、[])

    话不多说,直接开车 在编写shell脚本中,我们经常需要判断命令执行的正确与否,从而进行不同的操作。首先我们来介绍下条件性的执行操作符:根据退出状态而定,命令可以有条件地运行。其中,利用echo的话方便我们对测试结果的查看。 (1)&& 代表条件性的AND THEN 可以理解为短路与:当&&前面命令为真时,执行&am…

    Linux干货 2017-08-05
  • CentOS7的虚拟机安装

    刚学习linux下CentOS7的操作,熟悉一下CentOS7的安装,所以写一下CentOS7的安装教程,如果那里有写的不对的话希望得到指正。 我是在VMware下装的CentOS7 第一步配置硬件 先创建一个虚拟机 这里我选择的典型模式,新手嘛,新手难度的创建就好,高手难度的等新手难度熟练了再去碰好了,当然这是我的建议… 下一步然后光盘选择稍后…

    2017-07-15
  • mongodb的复制集实现

    简介:  mongodb有两种类型的复制,第一种是同于MySQL的主从复制模式,第二种是复制集,提供了自动故障转移的主从复制集群。其中复制集没有固定的主节点,当一个主机的故障后从节点会重新“选举”出一个新的主节点,从而提高的系统的可用性 一、实验环境: (1)各节点信息: node1: 172.16.2.12 node2: 172.16.2.13 …

    Linux干货 2015-09-05
  • shell 脚本中数组的总结

    描述:   变量是存储单个元素的内存空间,而数组是多个变量的集合,是一个连续的空间;但整个数组只能有 的名字。   数组内的数据都有指定的索引,从而找到数组内所指定的数据。索引的编号是从0开始的,依次递增(0,1,2,3,…),这种方式叫数值索引。格式为:数组名[索引];${ARRAY_NAME[INDEX]}。索引也支持自定…

    Linux干货 2016-08-29
  • 来两道百度的shell开胃菜

    1、写脚本实现,可以用shell、perl等。在目录/tmp下找到100个以abc开头的文件,然后把这些文件的第一行保存到文件new中。 方法1: #!/bin/sh for files in `find /tmp -type f -name "abc*"|h…

    Linux干货 2016-09-19
  • 第五周着重练习扩展正则元字符及find命令

    1、显示当前系统上root、fedora或user1用户的默认shell; grep -E "^(root|hadoop|user1)\>" /etc/passwd |cut -d":" -f1,7 2、找出/etc/rc.d/init.d/functi…

    Linux干货 2016-12-13