find命令

By admin in 美高梅手机版4858 on 2019年4月15日

find*****  查找

shutdown -h now 关机

1、[root@pyrene ~]#

 

  -type          按文件类型查找,

service iptables stop 关闭防火墙

这里root是眼下登录用户  @分割     pyrene是主机名   
~:表示方今报到环境   #:表示管理员

一、创立三个目录/data

记得方法:英文make
directorys缩写后正是mkdir。

命令:

  1. mkdir /data

  2. cd /;mkdir data

  3. #提醒:使用分号可以在一行内分割八个指令。

实践过程:

  1. 方法一:

  2. [root@oldboy66 ~]# mkdir /data

  1. #查阅data目录是不是创建成功,ls是list列表的意思,-ld是ls的常用参数,是长格式查看目录属性,l表示长格式,d表示目录
  1. [root@oldboy66 ~]# ls -ld /data
  1. drwxr-xr-x. 2 root root 4096 Nov 30
    13:40 /data

  2.    

  3. 方法二:

  4. #剔除方法1创立的目录

  5. [root@oldboy66 ~]# rm -r /data

  1. #输入y表示承认删除,y是yes的缩写
  1. rm: remove directory `/data’? y
  1. #进去根目录/下

  2. [root@oldboy66 ~]# cd /

  3. #始建data目录,不带斜线/,因为已经进入了

  1. [root@oldboy66 /]# mkdir data
  1. #翻开data目录自己

  2. [root@oldboy66 /]# ls -ld data

  1. drwxr-xr-x. 2 root root 4096 Nov 30
    13:44 data

总结:

cd后跟相对路径大概绝对路径,表示进入目录,假诺不跟任何事物,会进去当前用户的家目录。

相对路径概念:不从/初阶,而是从当前目录早先,例如:data/,mnt/oldboy。

相对路径概念:从/开端的目录,就叫相对路径,例如:/data/,/mnt/oldboy。

cd命令回想方法:change
directory。

mkdir
[-mp] [目录名称] 建立目录

    -m:那些参数用来钦赐要开创目录的权位,然而很少用,都会用chmod来拍卖。

find命令。    如:mkdir –m 777
/tmp/test,即建立八个权力为77柒的目录。

    -p:那个参数用来递归创制目录,mkdir的常用参数。

  -name            根据名字查找,查找的始末最佳用双引
号括起来,!取反。 -a(and)并且,-O(or)

setup配置网卡 回车第1项,回车第二项配置网卡,回车eth0,回车

2、在/data下边创立三个文本oldboy.txt 

贰、在/data下边建立3个文本oldboy.txt

命令:

  1. touch /data/oldboy.txt

  2. cd /data;touch oldboy.txt

  3. #始建文件也得以用echo等,只不过touch是行业内部的,也可用直接成立文件的命令,如vi,cat等。

  1. 例如:

  2. echo > /data/oldboy.txt

  3. > /data/oldboy.txt

执行进程:

  1. 方法一:

  2. #在/data目录下创办oldboy.txt

  3. [root@oldboy66 data]# touch
    /data/oldboy.txt

  4. #查阅创设的oldboy.txt

  5. [root@oldboy66 data]# ls -l
    /data/oldboy.txt

  6. -rw-r–r–. 1 root root 0 Nov 30 14:04
    /data/oldboy.txt

  7.    

  8. 方法二:

  9. [root@oldboy66 /]# cd /data

  10. #假若同名文件存在,不会提醒也倒霉覆盖,会更新文件的时刻戳

  1. [root@oldboy66 data]# touch
    oldboy.txt

总结:

touch”摸”。touch
[文件名]
就是”摸”一下文书,假若文件不设有,就确立新文件,借使存在,就改换文件的造访时间atime等日子戳音讯。

途径分隔差异:

windows的目录分隔D:\PIC\oldboy。

linux的目录分隔/data/。

  -maxdepth       数字 查找深度

dhcp自动分配IP地址

[root@pyrene ~]# touch data/pyrene.txt

3、为oldboy.txt扩充内容为”I am studying linux”。

格局1:常规编排方法

实践vi
oldboy.txt进入vi编辑器(默许命令情势),点击a或i进入编辑方式,敲入内容I
am studying
linux,然后按钮盘上的esc键退出编辑方式(进入到命令形式),最终敲:wq保存并退出。wq解释write
quit。

此办法求证:

vi就是接近记事本一样的linux下的常用编辑器,固然想效果更增进能够用vim代替vi,vi/vim的当中有无数的一声令下技术点,例如i就是insert,进入插入编辑格局的情况的情致,esc键是切换成命令情势,命令情势下得以敲冒号”:”在后头才能够接命令参数,例如wq,w是write,q是quit。

vi
编辑器,也正是记事本,有编写制定作用,不过较弱。

vim
复制编辑器,相当于emeditor,editplus,notepad++。

神速键:TAB
命令、路径补全。

美高梅手机版4858 1

主意二:单行或多行文本插入常用命令,内容都以存放在到文件的尾部。

  1. echo “I am
    studying linux” >>/data/oldboy.txt

执行进程:

  1. #非同小可的编辑撰写方法,通过echo命令使用单引号把引号的内容通过>>追加到/data/oldboy.txt,注意:是扩展不是覆盖
  1. [root@oldboy66 data]# echo “I am studying
    linux” >>/data/oldboy.txt

  2. #检查追加的结果

  3. [root@oldboy66 data]# cat oldboy.txt

  1. I am studying linux

此法表明:

echo是二个打字与印刷输出内容的二个常用命令,同盟”>或>>”能够为文件覆盖及增添内容。”>”意思为重定向,会消除文件里存有原先数据,”>>”为内容扩展,只在文书尾巴部分扩展必要的始末,还有2个较复杂不常用的接近命令printf。

特殊字符命令:

>重定向,会免去文件里存有原先的数量,扩充

>>追加重定向,

艺术3:写脚本常用,追扩充行,内容都放在文件的尾部。

  1. cat >>/data/oldboy.txt<<EOF
  1. I am studying linux

  2. EOF

  3. #注意:结尾的EOF要顶格写,EOF也能够用其余字符替代,只如若一对就好。

方法二、方法3为命令行或脚本中常使用的措施,都很要紧。

艺术2用来单行文本,方法3得以是多行文件,文本中若是有特殊字符,如$等须求用\转义才行。

  1. echo ‘

  2. 111

  3. 222

  4. 333

  5. ‘>>oldboy.txt

方法四:

  1. [root@oldboy66 data]#
    cat >>/data/oldboy.txt

  2. I am studying linux

按ctrl+d或ctrl+c组合键三次截至编辑。此格局为新鲜编辑方法。

总结:

echo是四个打字与印刷输出内容的1个常用命令,同盟”>”或”>>”可以为文件覆盖或充实内容。echo
$PATH打字与印刷出PATH的值。

重定向:意思是将”数据传到其余地点”。将某些命令执行后本应当出现在显示屏的数量,传输到任什么地方方,执行命令时,这几个命令恐怕会通过文件读入数据,经过处理今后,再将数据输出到显示器。

>或壹>
输出重定向:把后面输出的事物输入到前面包车型大巴文本中,会去除文件原有内容。

>>或1>>
追加重定向:把前面输出的靶子追加到前面包车型大巴文件中,不会删除文件原有内容。

<或<0
输入重定向:输入重定向用于转移命令的输入,前面内定输入内容,前边跟文件名

<<或<<0
追加输入重定向:
后跟字符串,用来表示”输入实现”,也得以ctrl+d来终结输入。

2>
错误重定向:把错误音信输入到末端的文本中,会去除文件原有内容。

2>>
错误追加重定向:把错误新闻追加到背后的公文中,不会去除文件原有内容。

专业输入(stdin):代码为0,使用<或<<,数据流向从右向左。

规范符合规律输出(stdout):代码为一,使用>或>>,数据流向从左向右。

正规错误输出(stderr):代码为2,使用二>或二>>。

箭头的主旋律便是数据流的主旋律。

万分写法:

  1. echo oldboy 2>a.txt 1>b.txt
  1. #2>&1就是把正规化错误重定向到专业输出

  2. echo oldboy &>log.txt

  3. #也足以用>&

  4. echo oldboy >log.txt 2>&1

  -mtime        修改时间

dns1 8.8.捌.8       IP和域名相互解析的工具

[root@pyrene ~]# ls data/

四、把oldboy.txt文件拷贝到/tmp下

命令:

  1. cd /data

  2. cp oldboy.txt /tmp/

  3. 提醒:加cp -a,cp,-p保持属性

总结:

cp [-aifpru]
[源文件] [目的文件]

    -a:相当于-pdr

    -d:若源文件为链接文件(link
file),则复制链接文件属性而非档案本人。

    -f:强制,若目的档案已经存在且不可能拉开,则移除后再尝试。

    -i:若目的文件已经存在时,在覆盖时会先领悟。

    -p:连同档案的习性1起复制过去,而非使用私下认可属性。

    -r:递归,用于复制目录。

    -u:若目的文件存在,则指标文件比源文件旧时才复制。

提示:借使源文件是多个,那么目标文件在最后,且是目录。

cp的重大参数apr。

    find /oldboy -maxdepth 1 -type d !-name “oldboy”

 dns2      202.106.0.20

oldboy.txt

5、把/data目录移动到/root下

命令:

  1. mv /data /root/

  2. 晋升:若是期待带目录拷贝,尽量不要mv
    /data/ /root/,移动目录时,源目录结尾不要多余斜线。

总结:

mv [-ifu]
[源文件/源目录] [目的文件/指标目录]

    -i:要是目标文件已存在,询问是还是不是覆盖

    -f:强制执行,不会了解

    -u:若指标文书存在,则比源文件新才会移动。

唤醒:假使源文件是三个,那么目标文件在最终,且是目录。

如:f1、f2是文件,/d1、/d2是目录

mv f1f2:假若f2不设有,则一定于f一重命名字为f2;假设f2存在,则f一重命名称为f二,并覆盖f2。

mv f1
/d壹:假设/d壹不设有,则把f壹移动到/下,一碗水端平命名字为d一;假设/d一留存,则把f壹运动到/d一下。

mv /d1
/d二:若是/d二不设有,则把/d1重命名称叫/d二;如若/d二存在,则把/d1平移到/d2下。

mv /d二f1:如若f一不设有,则把/d贰移动到当前目录,玉石俱焚命名称叫f一;如若f1存在,会唤醒f壹是个文本,无法用目录覆盖。

 

设置ip生效/修改文件:vi/etc/sysconfig/network-scripts/ifcfg-eth0

三、在下边包车型客车公文中增添一句:I am study linux

陆、进入root目录下的data目录,删除oldboy.txt

命令:

  1. cd /root/data/

  2. rm oldboy.txt

除去二个文书一般用rm
oldboy.txt,此法会提示您认可。用rm –f
oldboy.txt方法不会提示确认直接删除,相比惊恐。

对此文本的去除禁止用”rm
–fr 文件名”,那是杀鸡用牛刀的做法,必须禁止掉,最多用”rm –f 文件名”。rm
–fr 一般用来强制删除目录不晋升,万分危险。

建议:

利用mv替代rm,也正是把公文移动到/tmp下,然后等/tmp分区将要满时一遍性删除,减少犯错。

find删除

  1. [root@oldboy66 data]# find
    /root/data/ -type f -exec rm -f {} \;

在剧本中剔除文件或目录时生产条件的采用办法壹般为:

一、和xargs搭配用法

  1. #剔除壹伍天在此在此之前的文件

  2. find . -type f -name “*.log” -mtime +15 |xargs rm -f

  1. #除去目录30天 慎用

  2. find . -type f -name “*.log” -mtime +30 |xargs rm -fr

2、使用find的-exec

  1. #在/logs目录中追寻更换时间在30日在此之前的文书并剔除它们
  1. find /logs -type f -mtime “*.log” -mtime +5 -exec rm {} \;

find命令的法则:

美高梅手机版4858 2

\
:特殊字符,让3个有尤其含义的字符,脱掉马甲。

.. :上级目录

. :当前目录

\. :代表.号

|
:管道(把前贰个发令结果的输出交给后二个顺序开始展览后续处理)

-type :按文件类型查找

-name
:按名字查找,查找的情节最佳用双引号括起来。

! :取反。

剔除目录下除了oldboy.txt外的保有文件:

  1. [root@oldboy66 data]# find
    /root/data -type f ! -name “oldboy.txt” |xargs rm -f

  2. [root@oldboy66 data]# find
    /root/data/ -type f ! -name “oldboy.txt” -exec rm {} \;

linux面试题:删除三个索引下拥有文件,但保留二个点名文件。

   

   

 find删除

         按i编辑修改

         进入data目录中,进入vim编辑方式。然后输入内容保留 cat查看

7、退出到上级目录,删除data目录。

命令:

  1. cd ..或cd ../

  2. rm -r data或rmdir data

  3. #里面是空目录不必要用-rf。

总结:

..
:相对路径,表示当前目录的上顶尖目录,例如:/mnt/oldboy,mnt正是oldboy的顶头上司目录。

.
:相对路径,表示当前目录,即日前命令行的目录。

rm
[-irf] [文件/目录] 删除文件/目录

    -i:询问用户是不是正确删除,用y或n来回答。

    -r:删除目录时加该选用,删除目录及目录下的文本和目录。

    -f:强制删除,不用确认。

rmdir
[-p] [目录名] 用来删除空目录,-p代表递归删除目录,目录里不能有文件或许目录

如:/a/b/c

rmdir /a/b/c
:会删除/a/b/c,而/a/b还在。

rmdir –p /a/b/c
:会删除/a,/a/b,/a/b/c。

只是rmdir /a,rmdir –p
/a/b都会出错,提醒:Directory not empty。

  find /root/data -type f -exec rm -f {} \;

         onboot=yes

         方法二:用echo的方式

捌、限定输出

已知文件test.txt内容为:

test

liyao

oldboy

请给出打印test.txt内容时,不包括oldboy字符串的目录。

方法一:

head:头部,取文件的前N行,暗中同意前拾行,抽取前叁行-三。

  1. [root@oldboy66 ~]# head -2 test.txt

方法二:

grep:过滤器,把想要的依然不想要的诀别开,-v排除。

  1. [root@oldboy66 ~]# grep -v “oldboy” test.txt

唤醒:也足以运用cat
test.txt|grep –v “oldboy”,这么些命令尽管能兑现,可是实行效用差很多。

方法三:

sed:删除,d表示delete删除,p表示print打印,-n裁撤sed的暗许输出,-i改换文件内容。

    sed –n
‘/过滤的始末/处理的一声令下’ 文件

  1. [root@oldboy66 ~]# sed -e
    ‘/oldboy/d’ test.txt

  2. [root@oldboy66 ~]# sed /oldboy/d
    test.txt

  3. [root@oldboy66 ~]# sed -e /^oldboy/d
    test.txt

  4. [root@oldboy66 ~]# sed -n
    /[^oldboy]/p test.txt

   

方法四:

awk:

  1. [root@oldboy66 ~]# awk /[^oldboy]/
    test.txt

  find /root/data -type f|xargs rm -f

  保存:wq

                   [root@pyrene ~]# touch data/pyrene.txt

九、用一条命令实现创制目录/oldboy/test,即开立/oldboy目录和/oldboy/test目录

命令:

  1. mkdir -p /oldboy/test

施行进程:

  1. #递归创立目录,一般第3流目录不设有时用-p,不然报错mkdir:
    cannot create directory `/oldboy/test’: No such file or directory
  1. [root@oldboy66 /]# mkdir -p
    /oldboy/test

设置系统补装工具命令:

yum安装也许rpm安装、源代码安装

履新补丁执行(生产条件尽量不做,除非有已知的安全漏洞):

yum update

安装tree:

  1. [root@oldbo [root@oldboy66 /]# yum
    install tree -y

  2. #查询tree

  3. [root@oldboy66 /]# rpm -qa tree

  1. tree-1.5.3-3.el6.x86_64

  2. [root@oldboy66 /]# tree oldboy/

  1. oldboy/

  2. └── test

  3.    

  4. 1 directory, 0 files

tree:展现目录树结构

yum:linux里的包管理器,yum能够帮衬化解重视难点。

譬如说:yum install tree
-y,成效下载tree包,然后调用rpm命令安装tree包,假设必要依靠包,会活动下载并提早设置。

rpm:
-ivh(安装显示输出)

rpm –ivh
包名.rpm(提前下载好),rpm安装的最大标题是心有余而力不足消除依赖难点。

敞开网卡:ifup eth0开启第三个网卡

[root@pyrene ~]# ls data/

10、已知/tmp目录下存在test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖掉/tmp/test.txt,而linux系统不提示是不是覆盖(root权限下)。

命令:

方法一:

/bin/cp /mnt/test.txt
/tmp/test.txt

方法二:

\cp /mnt/test.txt
/tmp/test.txt

指示:此题正是屏蔽掉系统默许的照应命令外号,暗中认可执行cp的操作是调用了外号的,所以提醒覆盖。

cp命令暗许是不会提示overwrite,不过cp的-i选项会提示,而貌似Linux的用户环境文件~/.bashrc中会把cp命名成alias
cp=’cp
-i’。那样在Linux下输入cp命令实际上运转的是cp
–i,加上八个”\”符号或许写cp全路径/bin/cp正是让此番的cp命令不选取外号(cp
-i)运营。

别称概念:

输入alias查找当前别名。

  1. [root@oldboy66 /]# alias

  2. alias cp=’cp -i’

  3. alias l.=’ls -d .* –color=auto’

  1. alias ll=’ls -l –color=auto’

  2. alias ls=’ls –color=auto’

  3. alias mv=’mv -i’

  4. alias rm=’rm -i’

  5. alias which=’alias | /usr/bin/which
    –tty-only –read-alias –show-dot –show-tilde’

注销别称设置:unalias(一时半刻生效,重启失效)

  1. [root@oldboy66 /]# unalias cp
  1. [root@oldboy66 /]# alias

  2. alias l.=’ls -d .* –color=auto’

  1. alias ll=’ls -l –color=auto’

  2. alias ls=’ls –color=auto’

  3. alias mv=’mv -i’

  4. alias rm=’rm -i’

  5. alias which=’alias | /usr/bin/which
    –tty-only –read-alias –show-dot –show-tilde’

增多别称设置:

  1. [root@oldboy66 /]# alias cp=’cp -i’
  1. [root@oldboy66 /]# alias

  2. alias cp=’cp -i’

  3. alias l.=’ls -d .* –color=auto’

  1. alias ll=’ls -l –color=auto’

  2. alias ls=’ls –color=auto’

  3. alias mv=’mv -i’

  4. alias rm=’rm -i’

  5. alias which=’alias | /usr/bin/which
    –tty-only –read-alias –show-dot –show-tilde’

自定义外号oldboy:

  1. #设置oldboy为别名,执行echo I am
    oldboy linux

  2. [root@oldboy66 /]# alias
    oldboy=”echo I am oldboy linux”

  1. #查看oldboy别名

  2. [root@oldboy66 /]# alias|grep oldboy

  1. alias oldboy=’echo I am oldboy linux’
  1. [root@oldboy66 /]# oldboy

  2. I am oldboy linux

  3. #取消oldboy别名

  4. [root@oldboy66 /]# unalias oldboy

  1. [root@oldboy66 /]# alias|grep oldboy

自定义rm:

  1. [root@oldboy66 /]# alias rm=’echo
    “rm can not be used,pls use mv”‘
  1. [root@oldboy66 /]# alias|grep rm
  1. alias rm=’echo “rm can not be used,pls use mv”‘
  1. [root@oldboy66 /]# rm -fr
    /root/oldboy/

  2. rm can not be used,pls use mv -fr
    /root/oldboy/

方法三:

unalias cp

cp /mnt/test.txt
/tmp/test.txt

提示:命令行处理外号仅在及时生效,重启系统后失效。

alias:查看以及定义外号

unalias:撤除小名

~:用户的家目录,针对root,~就代表/root。

小名的安顿文件,针对root用户/root/.bashrc;全体用户生效,/etc/bashrc或/etc/profile定义,生效实施soure
/etc/bashrc或/etc/profile。

外号的功用:

壹、通过给危险命令加壹别爱抚参数,幸免人为误操作。

二、把许多错综复杂的字符串或指令变成叁个简易的字符串或指令。

              /etc/init.d/network restart

pyrene.txt

11、只查看ett.txt文件(十0行)内第20到第贰0行的始末。

命令:

sequence == seq序列

  1. #打印1到3

  2. [root@oldboy66 tmp]# seq 3

  3. 1

  4. 2

  5. 3

  6. #打印1到3

  7. [root@oldboy66 tmp]# seq 1 3

  8. 1

  9. 2

  10. 3

  11. 打印2到8

  12. [root@oldboy66 tmp]# seq 2 8

  13. 2

  14. 3

  15. 4

  16. 5

  17. 6

  18. 7

  19. 8

  20. #打印1到7的奇数

  21. [root@oldboy66 tmp]# seq 1 2 7

  1. 1

  2. 3

  3. 5

  4. 7

  5. #打印0到7的偶数

  6. [root@oldboy66 tmp]# seq 0 2 7

  1. 0

  2. 2

  3. 4

  4. 6

Usage: seq
[OPTION]… LAST

or: seq [OPTION]…
FIRST LAST

or: seq [OPTION]…
FIRST INCREMENT LAST

-s:钦命系列的分割符

  1. [root@oldboy66 tmp]# seq -s “–” 5

  2. 1–2–3–4–5

  3. [root@oldboy66 tmp]# seq -s “@” 5

  4. 1@2@3@4@5

生成ett文件,seq 100
>ett.txt。

  1. [root@oldboy66 tmp]# seq
    100 >ett.txt

方法一:

tail:尾巴,抽出文件的末梢N行,暗中同意最终10行,取最终三行-n
3 。

    -f:跟踪多个文书的尾巴实时变化(tail
–f ett.txt)。

  1. [root@oldboy66 /]# head -30
    ett.txt|tail -11

  2.    

  3. [root@oldboy66 /]# tail -81
    ett.txt|head -11

方法二:

  1. #效率高(首选)

  2. [root@oldboy66 tmp]# sed -n ‘20,30p’
    ett.txt

  3. [root@oldboy66 tmp]# sed -n 20,30p
    ett.txt

取出第30行:

  1. [root@oldboy66 tmp]# sed -n ’30p’
    ett.txt

sed命令与选拔:

sed强大的功能,是由以下三种限令和选拔联合工作的结果。sed通过点名某一人置来支配对怎么样行来进展拍卖,借使未有点名地址,sed暗中同意处理标准输入全体的行。地址的款式能够是数字,正则表明式,或三种组成。假诺给出的是由逗号连接的多少个地方,则意味sed要拍卖的始末正是该三个地方之间的行。

sed命令正是用来处理那么些由地点钦定的输入行。

命令

功能

a\

在当前匹配行的后面添加一行或多行文本内容

c\

更改当前匹配行的文本,替换成新的文本,原文本行内容消失

d

删除当前模式空间所有的内容

D

删除当前模式空间内第一个\n之前的内容

i\

在当前匹配行之前插入一行或多行文本内容

h

把模式空间的内容复制到保持空间,并覆盖当前保持空间的内容

H

把模式空间的内容追加到保持空间,原保持空间的内容依旧存在(注意两行之间的\n)

x

交换当前模式空间和当前保持空间的内容

g

与s联合使用时,表示对当前行全局匹配替换

g

取出当前保持空间的内容,并将其复制到模式空间,覆盖掉原模式空间的内容

G

取出当前保持空间的内容,并将其复制到模式空间,追加到原模式空间内容的后面(注意两行之间的\n)

p

打印匹配行

P

打印当前模式空间内容,直到第一个换行符(\n)为止

n

读取下一行内容,并复制到模式空间,取代原模式空间的内容

N

读取下一行内容,并复制到模式空间,追加到原模式空间内容的后面(注意两行之间的\n)

q

第一个模式匹配完成后退出或立即退出

r

从另一个文件中读取文本,并加入到当前匹配行后面

s

常说的查找并替换,用一个字符串替换成另一个

w

将匹配的行写入新的文件

y

将字符转换为另一个字符(对正则表达式不能使用y命令)

!

对所选行以外的所有行进行相应处理

=

显示匹配内容行的行号

   

sed选项:

选项

功能

-e

允许多项编辑

-f

后接sed脚本的文件名

-n

取消默认输出

-i

修改文件内容

   

打印:

sed –n ‘二p’ oldboy.txt
(打字与印刷第一行)

sed –n ‘$p’ oldboy.txt
(打字与印刷最终壹行)

sed –n ‘1,3p’
oldboy.txt (打印第1到3行)

sed –n ‘/yass/’p
oldboy.txt (打印相配yass的行)

sed –n ‘四,/The/’p
oldboy.txt (在第6行相称格局The,若相称,则打字与印刷)

sed –n ‘/\$/’p
oldboy.txt (相配元字符$)

sed –n ‘一,$’p
oldboy.txt
(打字与印刷整个文件,只需将执行范围设为第一行到终极壹行一,$,$意义最终1行)

sed –n ‘/.*ing/’p
oldboy.txt (任意字符,使用情势/.*ing/查询以ing结尾的轻便单次)

sed –n ‘/movie/=’
oldboy.txt (打字与印刷匹配行的行号)

sed –n –e ‘/movie/p’ –e
‘/movie/=’ oldboy.txt (打印相称行的始末和行号)

sed ‘=’ oldboy.txt|tail
-贰 (展现行数或最大行号)

方法三:

  1. [root@oldboy66 tmp]# awk ‘{if(NR<31 && NR>19) print $1}’
    ett.txt

  2. [root@oldboy66 tmp]# awk ‘{if(NR<31 && NR>19) printf $1″\n”}’ ett.txt

awk:1门语言,过滤内容(取列)

    awk
‘{print $1}’ 文件 $1第一列,$2第二列

    awk –F
“分隔符” ‘{print $一}’ 文件 $一先是列,$一次之列,…,$(NF-1)(倒数第2列),$NF(最后壹列)

案例:awk暗中认可分隔符空格

  1. [root@oldboy66 tmp]# cat awk.txt
  1. 美高梅手机版4858,oldboy oldgirl

  2. ddd fff

  3. [root@oldboy66 tmp]# awk ‘{print
    $1}’ awk.txt

  4. oldboy

  5. ddd

  6. [root@oldboy66 tmp]# awk ‘{print
    $2}’ awk.txt

  7. oldgirl

  8. fff

-F钦赐分隔符:

  1. [root@oldboy66 tmp]# awk -F “:” ‘{print $1}’ /etc/passwd

钦定输出游之间的相间符:

  1. [root@oldboy66 tmp]# awk -F “:” ‘{print $1 ” ” $3 “==” $5}’ /etc/passwd

总结:

head [-n]
[文件名]:后边一直跟文件名,展现文件前10行。-n表示突显文件前n行。

tail [-nf]
[文件名]:前面一向跟文件名,显示文件后十行。-n表示彰显文件后n行。

方法四:

  1. [root@oldboy66 tmp]# cat
    ett.txt|grep 20 -A 10

  2. [root@oldboy66 tmp]# cat
    ett.txt|grep 30 -B 10

  3. [root@oldboy66 tmp]# cat
    ett.txt|grep 25 -C 5

-A:除了突显相称的一条龙之外,并出示该行之后的num行。

-B:除了体现相称的1行之外,并显示该行在此之前的num行。

-C:除了呈现相称的现在之外,并展现该行前后各num行。

              service network restart

 

1贰、分析图片服务日志,把日志(每一种图片访问次数*图片大小的总数)排行,取top十,约等于测算每种url的总访问大小。

表明:那么些职能能够用于IDC网址流量带宽相当高,然后经过分析服务器日志哪些要素占用流量过大,进而拓展优化或裁剪该图形,压缩js等艺术。

 

         方法三:

①叁、把/oldboy目录及其子目录下全数以扩充名.sh结尾的公文中蕴涵./hostlists.txt的字符串全部沟通为./idctest_iplist。

命令:

  1. [root@oldboy66 tmp]# find ./ -name
    “*.sh” -type f -exec sed -i
    ‘s#./hostlists.txt#./idctest_iplist#g’ {} \;

解析:

sed替换:

sed –i
‘s#oldboy#oldgirl#g’ a.txt

    s:查找并替换,用2个字符串替换到另二个。

    g:与s联合使用时,表示对眼下行全局相配替换。

    -i:修改文件内容。

    #:分隔符,也得以用/、@等替换。

find查找:

find / -type f –name
“a.txt”

组合:

轮换当前目录上面全数文件名称为test.txt中的oldboy为oldgirl。

  1. [root@oldboy66 tmp]# find ./ -name
    “test.txt” -type f|xargs sed -i
    ‘s#oldboy#oldgirl#g’

  2. [root@oldboy66 tmp]# find ./ -name
    “test.txt” -type f -exec sed -i
    ‘s#oldboy#oldgirl#g’ {} \;

  3. [root@oldboy66 tmp]# sed -i
    ‘s#oldboy#oldgirl#g’ `find ./ -name “test.txt” -type f`

查看:

  1. [root@oldboy66 tmp]# find ./ -name
    “test.txt” -type f|xargs cat
  1. [root@oldboy66 tmp]# find ./ -name
    “test.txt” -type f -exec cat {}
    \;

  2. [root@oldboy66 tmp]# cat `find ./
    -name “test.txt” -type f`

特殊字符计算:

符号

作用

>

输出重定向符,重定向内容到文件,清除已有的内容,然后加入新内容,如果文件不存在还会创建文件

>>

追加输出重定向符,>>追加内容到文件(中间无空格)

<

输入重定向(箭头朝向就是数据流的方向)

<<

追加输入重定向

|

管道,就像一个真实管道一样,例如:水管左边进水,右边流出来。其他的功能,egrep "3306|1521" /etc/services

\

转义字符,让有意义的字符脱掉它代表的意义。例如:正则里$表示以什么结尾,用\$表示$符号本身。

~

当前用户的家目录

.或./

一个点号是当前目录,其他功能,正则,任意单个字符

..或../

两个点号是当前目录的上级目录

/

根目录,即linux里所有目录的顶点。也是路径分隔符,而windows里则为D:\工作目录\

;

命令分隔符

{}

生成字符或数字序列(seq),一般配合echo等命令使用,find里的{}意思是前面命令的结果,mkdir stu{1..100}

!

1、!+字母,表示调出最近一次以此字母开头的命令;2、!!表示使用最近一次操作的命令;3、!+数字,表示调出历史的第几条命令。

用户上一次所在的目录。-由OLDPWD变量控制。

   

常用急忙键:

tab命令或路径补全键,若是。

ctrl+c终止当前职分命令或程序。

ctrl+d退出当前用户环境。也便是exit、logout。

ctrl+l清屏。

ctrl+shift+c(ctrl+insert)ssh客户端SecureCEnclaveT里复制的指令。

ctrl+a:到开头

ctrl+e:到结尾

ctrl+u:剪切光标前

ctrl+k:删除光标后

xshell连不上linux:

[root@pyrene data]# cat >>pyrene.txt

一.关闭防火墙:    /etc/init.d/iptables stop    

i am study linux

                      chkconfig iptables off 开机暗中同意关闭防火墙

^C

2.ping+linux _IP-t检验虚拟机和windows是不是通     测试物理通不通
 -t一连测

 [root@pyrene data]# cat pyrene.txt

3.telnet +linux_ip2二     connected通了    测试ssh服务通不通

i am study linux

cd 切换路径  cd/切换来根目录  伊始有斜线相对路径,未有斜线相对路径

 

创造文件夹mkdir  data,成立名字为data的文书夹     查看目录ls-ld data

四、已知文件test.txt内容为

pwd查看当前路线

test

创建txt文件:touch  oldboy.txt

liyao

为oldboy.txt扩展内容i am studying linux:

oldboy

vi 编辑器,也等于记事本(编辑普通文书);vim:复杂编辑器(程序)

请给出打字与印刷test.txt内容的时候不包蕴oldboy字符串的命令

连忙键:tab命令路径补全

[root@oldboy xx]# find /xx -type f ! -name “file10″|xargs rm -f 

vi oldboy.txt回车,输入a、i切换到编辑情势;编辑完成后,按esc退出编辑格局,:wq保存退出。(写入退出)只退出:q;强制退出:q!;

[root@oldboy xx]# ls

cat+文件名查看内容

file10

单行轻易编辑
 echo打字与印刷echo“mmmmm”>oldboy.txt;把内容重定向插入到文件结尾(覆盖>;追加>>)

 

cat特殊用法:cat>>/data/oldboy.txt<<EOF 

[root@oldboy xx]# find /xx -type f ! -name “file10” -exec rm -f {} \;     

                      i am studying linux.

[root@oldboy xx]# ls

                  EOF
 追加多少个EOF之间的内容到钦定路线的公文夹;会创设文件夹并追加内容

file10

拷贝:cp; 文件 cp  oldboy.txt/tmp/

[root@pyrene ~]# grep -v oldboy test.txt

                  目录 cp -a /etc/ /tmp;cp -r /etc/ /tmp

test

挪动:cd ..;切换成上一流目录;

liyao

           mv   /data   /root/;移动目录或文件

 

ls 查看目录列表

         方法二、

man+命令查看命令援助;命令–help(bash的放权命令)

         [root@pyrene ~]# head -2 test.txt

美高梅手机版4858 3

test

除去命令:rm;

liyao

    进入root目录下的data目录,删除oldboy.txt文件

5、一而再成立目录 oldboy/data 那三个目录

cd  /root/data/(相对路径);ls查看当前目录有没有该公文;rm
oldboy.txt删除该文件;

         [root@pyrene ~]# mkdir /oldboy/data/a/bc

强制删除,直接删除,无提醒-f:rm -f oldboy.txt;rm -r删除目录:rm  -fr
 data强制删除data目录

mkdir: 不可能创造目录”/oldboy/data/a/bc”: 未有那一个文件或目录

生儿育女场景壹般尽量不要使用rm,如若要运用,一定要备份cp。

[root@pyrene ~]# mkdir -p /oldboy/data/a/bc

 替代情势:一.先移动到临时目录,mv

[root@pyrene ~]# tree /oldboy/

                  2.find   路径 -type f:     find   /root/data/  -type f
 -exec rm -f {}\;

/oldboy/

                    f:普通文书

└── data

                exec:表示对内查找结果进行拍卖

    └── a

                 {}:查找到的内容

        └── bc

                 \;  :转意,\让有意义的字符没风趣

陆、已知/tmp目录下已经存在test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖掉/tmp/test.txt。并且不提示自动覆盖

touch oldboy.txt   oldgirl.txt  可同时创建七个文本

[root@pyrene ~]# touch  /tmp/test.txt

 空格..:上级目录; 空格.:当前目录

[root@pyrene ~]# touch /mnt/test.txt

 find删除    

[root@pyrene ~]# cp /mnt/test.txt /tmp/

find   /root/data/   -type  f|xargs   rm  -f                
;|:把前三个结实提交后一个命令处理

cp:是不是覆盖”/tmp/test.txt”?

 find   /root/data/  -type f  -exec rm -f {}\;

 [root@pyrene ~]# \cp /mnt/test.txt  /tmp/    反斜线屏蔽小名功用

find参数:-type按文件类型查找

[root@pyrene ~]# /bin/cp /mnt/test.txt  /tmp/

                -name按名字查找

        

                     find  /root/data/  -type  f
 !-name”oldgirl.txt”|xargs   rm  -f(除了oldgirl不删除,其余文件删除)

上在linux下输入cp实际上执行的是cp –I 
加上四个\抑或写cp的上上下下径/bin/cp正是让本次的cp命令不利用别名(cp
-i)运转

                  !取反

                   [root@pyrene ~]# alias rm=’echo this command does
not allow to use.’

 ..  是绝对路径,相对于当下路径重临到上级目录

 [root@pyrene ~]# alias|grep rm

.是相对路径,表示当前目录

alias rm=’echo this command does not allow to use.’

find ./   查找当前目录下

安装外号的时候要用echo,借使不用echo就不可能设置别称

去除目录:

下边包车型地铁别称只是内部存储器中的,即使永恒生效就要放到上边

rm  -f  data/oldgirl.txt

/ect/profile 全局生效

rmdir data/  专门删除空目录

~/.bashrc   当前用户生效

已知test.txt文件内容,给出打字与印刷test.txt的始末,不包蕴oldboy的命令:

柒、查看ett.txt文件(100行)内第三0到30行的内容

一.生成文件:cat>>test.txt<<EOF                      
#cat查看或打字与印刷当前文件内容

 

                    test

[root@pyrene ~]# seq 十0 >> ett.txt   首先把内容填充到里面

                    liyao

方法一

                   oldboy

[root@pyrene ~]# head -30 ett.txt |tail -11

                     EOF

20

2.1)head -二  test.txt    
 ;取文件的前n行,不接参数默许前10行,例如取前三行-三

21

   2)grep “oldboy”  test.txt                         仅保留oldboy

22

           grep   -v   “oldboy”  test.txt               ;-v
 排除,不想要

23

sed ‘/oldboy/d’   test.txt                              
 斜线中间是过滤的始末,d删除,p打字与印刷,-n撤销sed默许输出,-i退换文件内容

24

叁.创建目录oldboy并制造下级test目录

25

mkdir  -p  /root/data/oldboy              ;-p递归创造目录

26

 

27

 

28

 

29

 

30

 

方法二

 

[root@pyrene ~]# sed -n ‘20,30’p ett.txt   //这些是最有效能的

 

20

 

21

 

22

 

23

 

24

 

25

 

26

 

27

 

28

 

29

 

30

 

                   上边的sed –n 代表废除暗中同意输出,p为print,打字与印刷

                                         

                   方法三:

 

                   [root@pyrene ~]# awk ‘NR>19&&NR<31’ ett.txt

20

21

22

23

24

25

26

27

28

29

30

                   方法四

                   [root@pyrene ~]# grep 20 -A 10 ett.txt

20

21

22

23

24

25

26

27

28

29

30

                   方法五

                   [root@pyrene ~]# grep 25 -C 5 ett.txt

20

21

22

23

24

25

26

27

28

29

30

                   方法六

                   [root@pyrene ~]# grep 30 -B 10 ett.txt

20

21

22

23

24

25

26

27

28

29

30

八、把/oldboy目录及其子目录下全数以扩展名.sh结尾的公文中包蕴oldboy的字符串全部轮换为oldgirl

[root@pyrene oldboy]# echo ‘oldboy’>test/del.sh

[root@pyrene oldboy]# echo ‘oldboy’>test.sh

[root@pyrene oldboy]# echo ‘oldboy’>.sh

[root@pyrene oldboy]# tree

.

├── test

│?? └── del.sh

└── test.sh

 

1 directory, 2 files

         上边是模仿出来那个文件

[root@pyrene oldboy]# find /oldboy/ -type f -name “*.sh”  
//首先把sh结尾的文本查搜索来

/oldboy/test/del.sh

/oldboy/test.sh

/oldboy/.sh

[root@pyrene oldboy]# find /oldboy/ -type f -name “*.sh”|xargs  
//再把这一个文件变成数据流

/oldboy/test/del.sh /oldboy/test.sh /oldboy/.sh

[root@pyrene oldboy]# find /oldboy/ -type f -name “*.sh”|xargs cat 
//然后翻看

oldboy

oldboy

oldboy

oldboy

[root@pyrene oldboy]# find /oldboy/ -type f -name “*.sh”|xargs sed
‘s#oldboy#oldgirl#g’  //先在内部存储器中替换看看是或不是成功

oldgirl

oldgirl

oldgirl

[root@pyrene oldboy]# find /oldboy/ -type f -name “*.sh”|xargs sed
-i ‘s#oldboy#oldgirl#g’

[root@pyrene oldboy]# find /oldboy/ -type f -name “*.sh”|xargs cat  
//查看

oldgirl

oldgirl

oldgirl

方法二

上边包车型地铁措施首先是推行查找

[root@pyrene oldboy]# sed -i ‘s#oldgirl#oldboy#g’ `find /oldboy/
-type f -name “*.sh”`

[root@pyrene oldboy]# find /oldboy/ -type f -name “*.sh” |xargs cat

oldboy

oldboy

oldboy

分区

硬盘使用前,壹般要分区,格式化(创立文件系统)

分区:

1块硬盘:

主分区、扩大分区、逻辑分区

主分区+扩大分区的数据<=四,当中三个主分区能够用五个扩张分区替代,增添分区最四只好有一个

扩展分区不可能一向运用,还索要在上头成立逻辑分区,逻辑分区可有多个

主分区+扩足够分区  编号只好1-四 ,逻辑分区的数码只好从伍初阶

上面是三套服务器分区方案

一、常规分区:数据不是特别首要性的作业(集群的某部节点)

/boot 带领分区 200m主分区

swap  调换分区  内部存储器的一.伍倍,内部存款和储蓄器大于八G就给捌-1六G

/     linux全数目录定点,剩余全数空中

 

贰、数据主要(数据库、存款和储蓄服务器)

/boot 指引分区 200m主分区

swap  沟通分区  内部存款和储蓄器的1.伍倍,内部存款和储蓄器大于八G就给八-1陆G

/     linux全部目录定点 100-200G

/data  全体,存放数据 方便备份

 

三、特大网址,门户(产品线专门多 必要)

莫不二个导航便是1组服务器,支付就是1组服务器,等等

/boot 引导分区 200m主分区

swap  交换分区  内部存款和储蓄器的一.5倍,内部存款和储蓄器大于捌G就给捌-1六G

/     linux全体目录确定地点 拾0-200G

/data  全体,存放数据 方便备份

余下空间不分配,哪个机构首席执行官了服务器,根据必要再实行分区

 

挂载点:mount pint。是linux下访问磁盘分区的输入

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有