第1章 回顾昨天

1.1 linux如何让一个服务/脚本开机自启动?

chkconfig

/etc/rc.local

1.2 被chkconfig管理 需要什么条件

1.2.1 必须放在/etc/init.d/

1.2.2 这个脚本要有执行权限

1.2.3 加上chkconfig要求的内容

chkconfig: 2345 99 99

1.2.4 chkconfig --add 把脚本添加到开机自启动

1.2.5 检查

/etc/rc.local

[root@oldboyedu-40-nb ~]# ls -l /etc/rc3.d/ |grep rc.local

lrwxrwxrwx. 1 root root 11 Aug 10 18:36 S99local -> ../rc.local

1.3 磁盘空间不足 no space left on device

1.3.1 block满了 500G 3*200G视频

df -h

du -sh /*

du -sh /* |grep G

1.3.2 block满了 文件没有被彻底删除  硬链接数为0,进程调用数不为零

1.3.2.1  检查:

lsof|grep delete

文件的删除原理(条件)

硬链接数为0

进程调用数为0

1.3.2.2  日志

/var/log/messages

/var/log/secure

rsyslog

access.log

1.3.3 inode满了

创建一个文件要占用一个inode和至少一个block

大量的小文件

1.3.4 检查

df -i

找出系统中比较大的目录(1M)

1.4 软硬链接区别

第2章 通配符

含义:方便我们查找文件 通配符是用来找文件名字

2.1 例子

2.1.1 /oldboy  以.sh结尾的  修改时间是7天之前的 大于100k 小于10M的文件

find /oldboy -type f -name "*.sh" -mtime +7  -size +100k  -size -10M

通配符大家族常用的符号

所有  任何内容 任何符号 任何文字

2.1.2 准备环境

mkdir -p /oldboy/20170118

cd /oldboy/20170118

touch stu{00..10}.txt oldboy{00..10}.log

touch linux-oldboy{00..5}.txt

touch oldboy.txt stu.txt

2.1.2.1  找出 所有以stu开头的文件

[root@oldboyedu-40-nb 20170118]# ls -l stu*

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu00.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu01.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu02.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu03.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu04.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu05.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu06.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu07.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu08.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu09.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu10.txt

-rw-r--r-- 1 root root 0 Aug 31 09:09 stu.txt

[root@oldboyedu-40-nb 20170118]# find -type f -name "stu*"

./stu07.txt

./stu00.txt

./stu02.txt

./stu01.txt

./stu.txt

./stu06.txt

./stu10.txt

./stu04.txt

./stu03.txt

./stu09.txt

./stu05.txt

./stu08.txt

ls -l stu*.*

以stu开头的 任意字符 小数点 任意字符

2.1.2.2  找出文件名中包含 oldboy 的文件

oldboy.txt

linux-oldboy.txt

ls -l *oldboy*

2.1.3 {} 生成序列 下蛋

{开始..结束}

{开始..结束..每次变化多少}

[root@oldboyedu-40-nb 20170118]# echo oldboy{a..e}.txt

oldboya.txt oldboyb.txt oldboyc.txt oldboyd.txt oldboye.txt

[root@oldboyedu-40-nb 20170118]#

[root@oldboyedu-40-nb 20170118]# echo a c d f 1 2 9 100

a c d f 1 2 9 100

[root@oldboyedu-40-nb 20170118]# echo {a,c,d,f}

a c d f

[root@oldboyedu-40-nb 20170118]# echo {a ,c,d,f}

{a ,c,d,f}

[root@oldboyedu-40-nb 20170118]# echo {a..z}

a b c d e f g h i j k l m n o p q r s t u v w x y z

[root@oldboyedu-40-nb 20170118]# echo {a..z} {A..Z}

a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

[root@oldboyedu-40-nb 20170118]# seq 1 2 10

1

3

5

7

9

[root@oldboyedu-40-nb 20170118]# seq 10 -2  1

10

8

6

4

2

[root@oldboyedu-40-nb 20170118]# echo {a..z}

a b c d e f g h i j k l m n o p q r s t u v w x y z

[root@oldboyedu-40-nb 20170118]# echo {1..10}

1 2 3 4 5 6 7 8 9 10

[root@oldboyedu-40-nb 20170118]# echo {1..10..2}

1 3 5 7 9

[root@oldboyedu-40-nb 20170118]# echo {10..1..2}

10 8 6 4 2

用来备份

[root@oldboyedu-40-nb 20170118]# echo A{B,C}

AB AC

[root@oldboyedu-40-nb 20170118]# echo A{,C}

A AC

[root@oldboyedu-40-nb 20170118]#

[root@oldboyedu-40-nb 20170118]# echo oldboy.txt{,C}

oldboy.txt oldboy.txtC

[root@oldboyedu-40-nb 20170118]# echo oldboy.txt{,bak}

oldboy.txt oldboy.txtbak

[root@oldboyedu-40-nb 20170118]# echo oldboy.txt{,.bak}

oldboy.txt oldboy.txt.bak

[root@oldboyedu-40-nb 20170118]# #cp oldboy.txt{,.bak}

[root@oldboyedu-40-nb 20170118]# ls -l oldboy.txt*

-rw-r--r-- 1 root root 0 Aug 31 09:09 oldboy.txt

[root@oldboyedu-40-nb 20170118]# cp oldboy.txt{,.bak}

[root@oldboyedu-40-nb 20170118]# ls -l oldboy.txt*

-rw-r--r-- 1 root root 0 Aug 31 09:09 oldboy.txt

-rw-r--r-- 1 root root 0 Aug 31 09:38 oldboy.txt.bak

2.2 通配符

找出文件

大部分命令都支持

ls    *.txt

touch {a..z}

mkdir {a..z}dir

3. * {}

2.2.1 特殊符号

2.2.1.1  重定向符号:

>   标准输出重定向 先把文件内容清空 然后向文件中放入内容

>>  标准追加重定向 然后向文件中放入内容

<   标准输入       xargs

<<  追加输入

cat >/oldboy/oldboy.txt <<EOF

oldboy

linux

oldboyedu.com

EOF

2.2.1.2  其他重要符号:

.  当前目录

linux下面隐藏文件

~/.bashrc

.. 当前目录的上一层目录

~  当前用户的家目录

/root

/home/oldboy

/  根目录  路径分隔符

../../..

/etc/hosts

\  取消别名

|  管道

!

1) vi/vim :wq! :q! 强制

2) find里面 awk里面表示 取反

3) 表示使用你用过的命令 使用历史命令

!ls   ===== history |grep ls

#  注释

$  取出变量里面的内容

&& 并且 前一个命令运行成功,然后再运行后面的命令

ifdown eth0 && ifup eth0

;  分开多条命令 在同一行里面放入多个命令

ls; pwd; hostname

2.2.1.3  特殊符号小结:

&&

>>

>

/

$

.

..

~

|

!

#

2.2.1.4  单引号 双引号 不加引号的区别

单引号 吃啥吐啥 所见即所得

[root@oldboyedu-40-nb 20170118]# echo '$LANG $(pwd) `hostname` {a..e}'

$LANG $(pwd) `hostname` {a..e}

双引号 把双引号里面的特殊符号进行解析

[root@oldboyedu-40-nb 20170118]# echo "$LANG $(pwd) `hostname` {a..e}"

en_US.UTF-8 /oldboy/20170118 oldboyedu-40-nb {a..e}

不加引号 和双引号类似 支持通配符

[root@oldboyedu-40-nb 20170118]# echo $LANG $(pwd) `hostname` {a..e}

en_US.UTF-8 /oldboy/20170118 oldboyedu-40-nb a b c d e

反引号 ``  $()  先运行小括号里面的内容 把显示到屏幕上的内容留下

第3章 正则表达式

lidao.身份证

汤 610702199107053598

邹 371481199403259478

莫 52020319810613433X

韩 460106199111137270

荣 530124197504135438

荣 oldboy

荣 babygirl

荣 530124197504135438

阮 360702197902169951

翁 331002198504132813

任 621223198708245176

姜 370602198507189574

霍 320904198403048179

3.1 正则表达式

[0-9]

3.1.1 什么是正则

特殊符号表示文字 文本

^     开头

[0-9] 数字

3.1.2 作用

提高效率   省事 懒

3.1.3 分类

基础正则表达式

^ $ ^$ .  *  .*  [0-9]  [^0-9]

扩展正则表达式

| () + {} ?

3.2 正则表达式与通配符区别?

3.2.1 通配符是用来找文件 名字 ls *.txt

3.2.2 正则表达式用来在文件中找文字(内容)  文本

3.3 中文符号预警准备

1.预警-中文符号

2.grep/egrep

cat >>/etc/profile<<EOF

alias grep='grep --color=auto'

alias egrep='egrep --color=auto'

EOF

source /etc/profile

3.4 环境准备-oldboy.txt

[root@oldboyedu-40-nb oldboy]# vim oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# cat -A oldboy.txt

I am oldboy teacher!$

I teach linux.$

$

I like badminton ball ,billiard ball and chinese chess!$

my blog is http://oldboy.blog.51cto.com $

$

our site is http://www.etiantian.org $

$

my qq num is 49000448.$

$

not 4900000448.$

my god ,i am not oldbey,but OLDBOY!$

3.5 基础正则表达式

3.5.1  ^oldboy    以oldboy开头的行 以......开头的行

[root@oldboyedu-40-nb oldboy]# grep "^m" oldboy.txt

my blog is http://oldboy.blog.51cto.com

my qq num is 49000448.

my god ,i am not oldbey,but OLDBOY!

3.5.2   $          以.....结尾的行

m$    以m结尾的行

[root@oldboyedu-40-nb oldboy]# cat -A oldboy.txt

I am oldboy teacher!$

I teach linux.$

$

I like badminton ball ,billiard ball and chinese chess!$

my blog is http://oldboy.blog.51cto.com$

$

our site is http://www.etiantian.org$

$

my qq num is 49000448.$

$

not 4900000448.$

my god ,i am not oldbey,but OLDBOY!$

[root@oldboyedu-40-nb oldboy]# grep "m$" oldboy.txt

my blog is http://oldboy.blog.51cto.com

3.5.3  ^$  空行 这一行里面什么符号都没有

[root@oldboyedu-40-nb oldboy]# grep "^$" oldboy.txt

[root@oldboyedu-40-nb oldboy]# grep -n "^$" oldboy.txt

3:

6:

8:

10:

[root@oldboyedu-40-nb oldboy]# cat -A oldboy.txt

I am oldboy teacher!$

I teach linux.$

$

I like badminton ball ,billiard ball and chinese chess!$

my blog is http://oldboy.blog.51cto.com$

$

our site is http://www.etiantian.org$

$

my qq num is 49000448.$

$

not 4900000448.$

my god ,i am not oldbey,but OLDBOY!$

[root@oldboyedu-40-nb oldboy]# cat -An oldboy.txt

1  I am oldboy teacher!$

2  I teach linux.$

3  $

4  I like badminton ball ,billiard ball and chinese chess!$

5  my blog is http://oldboy.blog.51cto.com$

6  $

7  our site is http://www.etiantian.org$

8  $

9  my qq num is 49000448.$

10  $

11  not 4900000448.$

12  my god ,i am not oldbey,but OLDBOY!$

[root@oldboyedu-40-nb oldboy]#

排除文件中的空行

3.5.4   .(点)  任意一个字符

[root@oldboyedu-40-nb oldboy]# grep "." oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# #grep到底如何找的文字---花儿为什么这样红

[root@oldboyedu-40-nb oldboy]# grep -o "." oldboy.txt

I

a

省略......

[root@oldboyedu-40-nb oldboy]# grep "oldb.y" oldboy.txt

I am oldboy teacher!

my blog is http://oldboy.blog.51cto.com

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep -o "oldb.y" oldboy.txt

oldboy

oldboy

oldbey

grep/egrep  -o 显示grep每一次找到什么东西   grep命令执行过程

3.5.5 \  撬棍  转义字符 脱掉马甲打回原形

找出文件中以小数点(.) 结尾的行

[root@oldboyedu-40-nb oldboy]# grep "\.$" oldboy.txt

I teach linux.

my qq num is 49000448.

not 4900000448.

3.5.6   前一个文本连续出现了0次或1次以上  >=0

00000

00000000000000

000000000000000000000000000000000000000000000000000000000000000

连续出现了0次就是 没出现

[root@oldboyedu-40-nb oldboy]# grep "0*" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep -o "0*" oldboy.txt

000

00000

贪婪性---能有多 我吃多少

3.5.7 .*   所有内容 包括空行

贪婪性---能有多 我吃多少

正则表达式表示.*(所有)  连续出现的时候 贪婪性

[root@oldboyedu-40-nb oldboy]# grep "^.*o"  oldboy.txt

I am oldboy teacher!

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

3.5.8  [abc]  筐 表示一个整体 相当于是一个字符  a或b或c

[root@oldboyedu-40-nb oldboy]# grep "[abc]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep -o "[abc]" oldboy.txt

a

b

a

c

省略

[root@oldboyedu-40-nb oldboy]#

[root@oldboyedu-40-nb oldboy]# grep "[abcdefghijklmnopqrstuvwxyz]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep "[a-z]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep "[A-Z]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep "[0-9]" oldboy.txt

my blog is http://oldboy.blog.51cto.com

my qq num is 49000448.

not 4900000448.

[root@oldboyedu-40-nb oldboy]# grep "[a-zA-Z]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

3.5.9 练习

3.5.9.1  练习1:以大写字母开头的行

[root@oldboyedu-40-nb oldboy]# #练习1:以大写字母开头的行

[root@oldboyedu-40-nb oldboy]# grep "A-Z" oldboy.txt

[root@oldboyedu-40-nb oldboy]# grep "[A-Z]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep "^[A-Z]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

3.5.9.2  练习2:以小写字母结尾的行

[root@oldboyedu-40-nb oldboy]# #练习2:以小写字母结尾的行

[root@oldboyedu-40-nb oldboy]# grep "[a-z]$" oldboy.txt

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

3.5.9.3  练习3:以 m或n或o开头的 并且以  m或g 结尾的行

[root@oldboyedu-40-nb oldboy]# ##第一个里程碑-取出m n o 开头的行

[root@oldboyedu-40-nb oldboy]# grep "[mno]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]# grep "^[mno]" oldboy.txt

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

[root@oldboyedu-40-nb oldboy]#

[root@oldboyedu-40-nb oldboy]# ##第二个里程碑-mg 结尾

[root@oldboyedu-40-nb oldboy]# grep "[mg]$" oldboy.txt

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

[root@oldboyedu-40-nb oldboy]#

[root@oldboyedu-40-nb oldboy]# ##第三个里程碑-合并

[root@oldboyedu-40-nb oldboy]# grep "^[mno][mg]$" oldboy.txt

[root@oldboyedu-40-nb oldboy]# grep "^[mno].*[mg]$" oldboy.txt

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

3.5.10  [^abc]  筐 表示一个整体 排除a或排除b或排除c

[abc] 三选一 想要任何一个

[root@oldboyedu-40-nb oldboy]# grep "[^abc]" oldboy.txt

I am oldboy teacher!

I teach linux.

I like badminton ball ,billiard ball and chinese chess!

my blog is http://oldboy.blog.51cto.com

our site is http://www.etiantian.org

my qq num is 49000448.

not 4900000448.

my god ,i am not oldbey,but OLDBOY!

######grep -v 排除   [^abc]

grep -v 排除行

[^abc]  字符 文字

第4章 今天小结:

特殊符号-通配符-基础正则表达式

1.

特殊符号小结:

&& >> > /$... ~ | ! #

2.通配符* {}

3.正则

1)按照一行

2)^ $ ^$  .*  [] \

如何排除文件中的空行和包含#的行

第5章 预习:

扩展正则表达式

取出网卡ip地址

ifconfig eth0

Linux特殊符号的更多相关文章

  1. Linux特殊符号浅谈

    Linux特殊字符浅谈 我们经常跟键盘上面那些特殊符号比如(?.!.~...)打交道,其实在Linux有其独特的含义,大致可以分为三类:Linux特殊符号.通配符.正则表达式. Linux特殊符号又可 ...

  2. Linux Shell脚本编程--Linux特殊符号大全

    Linux Shell脚本编程--Linux特殊符号大全 linux_shell 特殊符号的介绍 2011

  3. linux shell `符号详解

    linux shell `符号详解 <pre>[root@iZ23uewresmZ arjianghu]# echo `ls`asss.html common guaji.php imag ...

  4. linux特殊符号大全

    #   ;   ;;      .      ,       /       \       'string'|       !   $   ${}   $?      $$   $*  " ...

  5. Linux 特殊符号使用: 倒引号`的使用

    Linux中有很多特殊符号,这里介绍 ` 倒引号的含义. 我们考虑下这个场景,有时我们需要将一个命令的执行结果赋值给某个变量,或者别的用途. 这时我们可以用两个`倒引号将该命令括起来. 例1: 如 e ...

  6. Linux中符号总结

    常用符号~   登陆用户当前的家目录 .   当前目录..   当前目录的上一级目录cd -   返回上一次的目录;   命令分隔符#   表示注释 ?   通配符中表示任意一个字符*   通配符中表 ...

  7. linux -特殊符号

    在shell中常用的特殊符号罗列如下: # ;   ;; . , / \\ 'string'| !   $   ${}   $? $$   $* \"string\"* **   ...

  8. Linux特殊符号及基础正则表达式

    第1章 特殊符号 1.1 引号系列 1.1.1 单引号 所见即所得  单引号里面的内容会原封不动的输出 [root@oldboyedu50-lnb ~]# echo 'oldboy $LANG $PS ...

  9. 最全的三剑客和linux正则符号讲解

    第2章 linux符号系列与三剑客    194 2.1 特殊符号系列    194 2.1.1 普通符号系列    194 2.1.2 引号符号系列    196 2.1.3 定向符号    197 ...

随机推荐

  1. FL Studio中音频ASIO4ALL的设置

    上期我们讲解了FL Studio中音频的相关设置,今天我们来进一步讲解音频设置中的ASIO4ALL的设置,FL Studio安装包括FL Studio ASIO和第三方ASIO驱动程序ASIO4ALL ...

  2. easyUI提交不跳转

    $('#loginForm').form('submit');为easyUI封装的异步提交方法,页面不跳转,可得到返回值. $('#loginForm').submit();为js自带原生表单提交方法 ...

  3. Arthas:线上问题排查工具

    安装 下载 java -jar arthas-boot.jar 查看版本: D:\Program Files\arthas $ java -jar arthas-boot.jar -version [ ...

  4. List集合流处理类型小结

    本文为博主原创,未经允许不得转载 对应实体类 import lombok.Getter; import lombok.Setter; @Getter @Setter public class Stud ...

  5. 工具类封装之--BaseController

    package cn.xxx.base; import cn.xxx.gecustomer.beans.GeCustomer; import cn.xxx.gecustomer.beans.GeCus ...

  6. mybatis第一次搭建出错

    ### Error building SqlSession. ### The error may exist in com/test/pojo/UserMapper.xml ### Cause: or ...

  7. foreach循环里不能remove/add元素的原理

    foreach循环 ​    foreach循环(Foreach loop)是计算机编程语言中的一种控制流程语句,通常用来循环遍历数组或集合中的元素.Java语言从JDK 1.5.0开始引入forea ...

  8. js 延时等待

    //延时器,2秒后执行函数 function test(){ alert("aaaa"); } setTimeout(function () { test(); }, ); //或 ...

  9. Spark2.X管理与开发

      ==========第一篇:Scala编程语言========= 一.Scala语言基础 1.Scala语言简介 Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各 ...

  10. cryptoJS

    CryptoJS通俗的来讲是为了安全性,将前端传递到后端的参数加密 加密/解密方法(对称加密算法) AES 高级加密标准,是下一代的加密算法标准,速度快,安全级别高 DES 数据加密标准,适用于大量数 ...