ls命令

ls对文件mtime时间进行排序

降序: ls -lt |  grep '^-'
    升序:   ls -ltr  |  grep '^-'

seq命令

求1000以内所有偶数的和

echo `seq 0 2 1000` | tr -s ' ' + | bc

paste命令

用户名-密码-家目录路径-默认shell

这里需要注意paste 文件的先后顺序问题,不同的顺序会有不同的结果 -f 只能从小到大依次显示,不能调整显示顺序.所以可以通过

调整 paste file1 file2 或者 paste file2 file1 来实现对列的顺序显示.

paste -d: /etc/shadow /etc/passwd | grep "^\<$root\>" | cut -d: -f1,2,15,16

[root@centos7 ~]# paste -d: /etc/passwd /etc/shadow | grep '^\<root\>:'|cut -d: -f1,9,6,7

虽然在后面指定-f1,9,6,7显示,但是最终显示结果还是按照1,6, 7, 9来排列的.这种指定无效.
 root:/root:/bin/bash:$6$RzUIKaLkncGUm9SL$FtuXzR8IpSz2OEQp.LlDrDH1O62SMrZ/Gj06iTSNqlxWma/aHf21lpikhNln6UgNyuL/HqGUrM45feTBkMC1T0

date 命令

[root@centos7 sysconfig]# date +%F
--
[root@centos7 sysconfig]# date +%H:%M:%S
::
[root@centos7 sysconfig]# date -d "$v_date -1 year" +%Y [root@centos7 sysconfig]# date -d last-year +%Y [root@centos7 sysconfig]# date -d next-year +%Y [root@centos7 sysconfig]# date -d next-year +%Y%M [root@centos7 sysconfig]# date -d next-year +%Y%M [root@centos7 sysconfig]# date -d next-year +%Y%m [root@centos7 sysconfig]# date -d next-year +%Y%m%D
//
[root@centos7 sysconfig]# date -d next-year +%Y%m%d

tar 命令

tar打包压缩的同时要指定被压缩的包存储的目录,排除某些子目录

mkdir -p /data/myetc && tar -cvzf     /data/myetc/myetc-`date +%F`-`date +%H:%M:%S`.tar.gz    /etc     --exclude /etc/sysconfig

/data/myetc/  表示压缩包需要存储的路径

myetc-`date +%F`-`date +%H:%M:%S`.tar.gz  表示被压缩的包名

file 命令

stat命令

Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)

[root@centos7 ~]# stat sh| grep Uid | cut -d " " -f 2 | cut -d "/" -f 1 | tr -d "("
0755

[root@centos7 ~]# stat sh | sed -n '4p'| sed -r "s/.*([0-9]{4})\/.*/\1/"
0755

使用扩展正则  \+ 符号无效,必须写成+
[root@centos7 ~]# stat sh | sed -n '4p'| sed -r "s/.*([0-9]\+)\/.*/\1/"
 Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)

[root@centos7 ~]# stat sh | sed -n '4p'| sed -r "s/.*([0-9]+)\/.*/\1/"
0
[root@centos7 ~]# stat sh | sed -n '4p'| sed -r "s/.*\(([0-9]+)\/.*/\1/"
0755

通配符知识

rm -fr  myetc-`date -d "$v_date -1 year" +%Y`*.tar.gz

通配符是由shell处理的(不是由所涉及到命令语句处理的,其实我们在shell各个命令中也没有发现有这些通配符介绍), 它只会出现在 命令的“参数”里(它不用在 命令名称里, 也不用在 操作符上)。当shell在“参数”中遇到了通配符时,shell会将其当作路径或文件名去在磁盘上搜寻可能的匹配:若符合要求的匹配存在,则进行代换(路径扩展);否则就将该通配符作为一个普通字符传递给“命令”,然后再由命令进行处理。总之,通配符 实际上就是一种shell实现的路径扩展功能。在 通配符被处理后, shell会先完成该命令的重组,然后再继续处理重组后的命令,直至执行该命令。

我们回过头分析上面命令吧:在第2个命令中,*.txt 实际shell搜索文件,找到了符合条件的文件,命令会变成:ls a.txt b.txt ,实际在执行ls 时候传给它的是a.txt b.txt .

而命令3,d*.txt 由于当前目录下面没有这样的文件或目录,直接将”d*.txt” 作为ls 参数,传给了 ls .这个时候”*” 只是一个普通的 ls 参数而已,已经失去了它通配意义。 由于找不到文件,所以会出现:无法访问提示!

了解了shell通配符,我们现在看下,shell常见通配符有那一些了。

shell常见通配符:

字符 含义 实例
* 匹配 0 或多个字符 a*b  a与b之间可以有任意长度的任意字符, 也可以一个也没有, 如aabcb, axyzb, a012b, ab。
? 匹配任意一个字符 a?b  a与b之间必须也只能有一个字符, 可以是任意字符, 如aab, abb, acb, a0b。
[list]  匹配 list 中的任意单一字符 a[xyz]b   a与b之间必须也只能有一个字符, 但只能是 x 或 y 或 z, 如: axb, ayb, azb。
[!list]  匹配 除list 中的任意单一字符 a[!0-9]b  a与b之间必须也只能有一个字符, 但不能是阿拉伯数字, 如axb, aab, a-b。
[c1-c2] 匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z] a[0-9]b  0与9之间必须也只能有一个字符 如a0b, a1b... a9b。
{string1,string2,...} 匹配 sring1 或 string2 (或更多)其一字符串 a{abc,xyz,123}b    a与b之间只能是abc或xyz或123这三个字符串之一。

需要说明的是:通配符看起来有点象正则表达式语句,但是它与正则表达式不同的,不能相互混淆。把通配符理解为shell 特殊代号字符就可。而且涉及的只有,*,? [] ,{} 这几种。

Linux命令实例功能笔记的更多相关文章

  1. shell linux基本命令实例、笔记

    1. 在当前文件夹下.查找20分钟内,被訪问过的文件, 并将文件的详情显示出来: find ./ -name '*.log' -mmin -20 -exec ls -l {} \;   当然,须要指出 ...

  2. 【第三课】常用的Linux命令(学习笔记)

    4月8日 学习笔记打卡

  3. linux命令sed学习笔记

    sed其实就是两个主要的知识点,那就是“怎么选择”和“怎么操作”!

  4. win10的power shell可以学习少部分linux命令_功能与cmd类似

    更新帮助文件:

  5. linux命令之chown命令

    发布:JB01   来源:脚本学堂     [大 中 小] 本文介绍下,linux系统中用于文件与目录权限管理的命令 chown命令的用法,chown将指定文件的拥有者改为指定的用户或组.有需要的朋友 ...

  6. Linux命令--1

    之前一直在学习Linux,不过有点一天打鱼两天晒网的意味,现在希望通过写博客的形式,积累更多的知识,也希望可以帮到同在linux坑中的各位小伙伴们~ PS:我的笔记重点在于通俗,很多命令一百度就有,但 ...

  7. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  8. linux命令注解

    参考: Linux命令实例练习 -- 实验楼 太懒,就不全抄了,把自己觉得有坑的地方记录下来. ls ls命令的20个实用范例 -- linux.cn 常用参数 参数 描述 -a –all 列出目录下 ...

  9. 转 PHP中exec、system等函数调用linux命令问题

    PHP中exec.system等函数调用linux命令问题 先小说两句:今天研究了下PHP调用LINUX命令的功能,一开始怎么做都调用不成功,试了好久才终于成功了,所以发出来分享一下.下面我将详细介绍 ...

随机推荐

  1. [Object Tracking] Contour Detection through OpenCV

    利用OpenCV检测图像中的长方形画布或纸张并提取图像内容 - 阅读笔记 相对来说,如下链接是此文的高阶方案版本,做对比是极好的. [Object Tracking] Contour Detectio ...

  2. Ajax简单整理-思维导图

    图片和mmap下载地址:http://pan.baidu.com/s/1jGqUpxk

  3. Java基础复习笔记基本排序算法

    Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...

  4. H5 拖拽读取文件和文件夹

    1)拖拽方面的重点是:ondragover 事件 和 ondrop 事件 ondragover 是必须的,ondragover 事件里禁用掉 html 的默认事件,否则 ondrop 事件将无效(直接 ...

  5. 【IBM-WALA】Step by Step : use WALA to generate System Dependency Graph PDF and Dot File (Mac)

    Preparations: 1. IDE : eclipse (my version is luna) 2. maven (my version is 3.5.0) 3. git 4. JAVA 1. ...

  6. WCF中序列化(XML\JSON\Dt)

    序列化 是将对象转换为容易传输的格式的过程.例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象.反之,反序列化根据流重新构造对象. 序列化描述了持久化 ...

  7. 纯JS实现图片预览与等比例缩放和居中

    最近做项目时有一个需求,广告位图片上传时要预览,并且要等比例缩放和居中.已经保存的广告位图片显示时也要等比例缩放和居中.我使用了下面的代码实现,不过可能有一些小问题. <!DOCTYPE HTM ...

  8. linux 修改hosts文件

    1.修改hostssudo gedit /etc/hosts2.添加解析记录( . )完整案例:127.0.0.1 localhost.localdomain localhost简洁记录:127.0. ...

  9. Linux 更新vim

    https://blog.csdn.net/linuxnews/article/details/52938583 https://blog.csdn.net/nzyalj/article/detail ...

  10. Flask----基础

    Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后 ...