Linux实操指令第三部分

21、ln

语法: ln -s 【原文件或目录也就是需要链接到的地方】【软链接名】

相当于Windows里面的创建快捷方式

应用实例

在/home目录下创建一个软链接linkToRoot,连接到root目录

[root@hadoop1 home]# ln /root linkToroot

ln: "/root": 不允许将硬链接指向目录

[root@hadoop1 home]# ln -s /root linkToRoot

[root@hadoop1 home]# ls

animal  b.txt  linkToRoot  mydate.txt  wanghao  yy  zhangwuji

[root@hadoop1 home]# ls linkToRoot/

anaconda-ks.cfg  GJ.jpg      install.log         pig.txt  模板  图片  下载  桌面

a.txt            hello.java  install.log.syslog  公共的   视频  文档  音乐

删除软链接linkToRoot

[root@hadoop1 home]# rm -rf linkToRoot

22、history

语法: 查看最近使用的命令

history 10

[root@hadoop1 home]# history 10

  389  ls

  390  ls linkToRoot/

  391  ls -l linkToRoot/

  392  rm -rf linkToRoot/

  393  rm -rf linkToRoot

  394  ls

  395  history

  396  history 10

  397  history -n 4

  398  history 10

根据查询出来的历史指令再次执行某一条

!+数字

[root@hadoop1 home]# !389

ls

animal  b.txt  mydate.txt  wanghao  yy  zhangwuji

23、搜索查找类find

find指令

语法:find【搜索范围】【选项】

【选项】-name /home表示搜索的范围 -name表示选项 ccc.txt表示要找的文件

应用实例:

按文件名根据名称查找/home下的ccc.txt

[root@hadoop1 home]# find /home -name ccc.txt

/home/yy/bbb/ccc.txt

/home/wanghao/bbb/ccc.txt

[root@hadoop1 home]# 

根据指定的用户对应下的文件

[root@hadoop1 home]# find /home -user wanghao

/home/wanghao

/home/wanghao/.bash_logout

/home/wanghao/.bash_history

/home/wanghao/.bashrc

/home/wanghao/.mozilla

/home/wanghao/.mozilla/plugins

/home/wanghao/.mozilla/extensions

/home/wanghao/.bash_profile

/home/wanghao/.gnome2

查找内容大于20M的文件很有用!

[root@hadoop1 home]# find / -size +20M

24、搜索查找类locate(查询大文件效率高)

语法: 首先创建一个locate数据库

  locate 【要查询的文件名】

应用实例:

使用locate查询aa.txt

[root@hadoop1 ~]# locate aa.txt

/home/wanghao/bbb/aaa.txt

/home/yy/bbb/aaa.txt

/wanghao/aaa.txt

注意:如果没有匹配到aa的话就会匹配以aa开头的文件

25、grep和管道符号|

应用场景: 一个文件很大想要查询文件内具体的一个关键词

|: 表示将前面的一个命令的处理结果输出传递给后面的命令去处理。

语法:

grep【选项】 查找文件内容 源文件

选项: -n 显示匹配行及行号

       -i 忽略字母的大小写

应用实例:

在hello.txt文件中,查找world所在行并显示行号

[root@hadoop1 bbb]# cat aaa.txt |grep world

world asdhas

asdasdaas123 world

注:cat aaa.txt查询出来的就文件里面的所有内容,|grep相当于对查询出来的结果进行过滤只查找world关键词

[root@hadoop1 bbb]# cat aaa.txt |grep -n  world

4:world asdhas

5:asdasdaas123 world

显示关键词所在的行号

[root@hadoop1 bbb]# cat aaa.txt |grep -ni  world

4:world asdhas

5:asdasdaas123 world

5:World 123

不区分大小写都显示出来

26、gzip/gunzip

gzip/gunzip

概念说明: 是一组指令gzip表示压缩,gunzip表示解压缩

语法:

gzip【文件名】 可以将文件压缩成为对应的*.gz压缩文件

gunzip 【文件名.gz】 可以将xxx.gz文件解压

应用实例:

用gzip将aaa.txt文件进行压缩

[root@hadoop1 bbb]# gzip aaa.txt

[root@hadoop1 bbb]# ls

aaa.txt.gz  bbb.txt  ccc.txt

用gunzip指令解压aaa.txt.gz

[root@hadoop1 bbb]# gunzip aaa.txt.gz 

[root@hadoop1 bbb]# ls

aaa.txt  bbb.txt  ccc.txt

27、zip/unzip

zip/unzip

概念:一组解压缩指令,zip用来压缩文件,unzip是用来解压的,用于项目打包发布中

语法:

zip 【选项】xxx.zip 将要压缩的内容  常用选项:-r 递归压缩,即压缩目录

unzip 【选项】xxx.zip 解压缩文件    常用选项:-d 指定解压后的文件目录(就是要放到哪里)

应用实例:

将/home下的所有文件压缩成mypro.zip

[root@hadoop1 home]# zip -r mypro.zip /home/*

注:由于要压缩/home下的整个目录文件所有需要使用-r进行递归压缩

将mypro.zip解压到/opt/tmp目录下

[root@hadoop1 home]# unzip -d /opt/tmp/ mypro.zip

查询下结果:

[root@hadoop1 tmp]# cd home

[root@hadoop1 home]# ls

animal  b.txt  mydate.txt  wanghao  yy  zhangwuji
28、tar

tar指令(最常用的打包指令)

概念:打包指令,最后将文件打包为xxx.tar.gz

语法:

tar【选项】xxx.tar.gz  打包目录成为xxx.tar.gz

常用选项:

-c 产生.tar打包文件

-v 显示详细信息

-f 指定压缩的文件名

-z 打包同时压缩

-x 解压.tar文件

应用实例:

压缩多个文件,将/home/b.txt和mydate.txt压缩成a.tar.gz

[root@hadoop1 home]# tar -zcvf a.tar.gz b.txt mydate.txt

b.txt

mydate.txt

[root@hadoop1 home]# ls

animal  a.tar.gz  b.txt  mydate.txt  wanghao  yy  zhangwuji

解压a.tar.gz到当前目录

[root@hadoop1 home]# tar -zxvf a.tar.gz 

b.txt

mydate.txt

[root@hadoop1 home]# ls

animal  a.tar.gz  b.txt  mydate.txt  wanghao  yy  zhangwuji

解压a.tar.gz到/opt/tmp文件下

[root@hadoop1 home]# tar -zxvf a.tar.gz -C /opt/tmp

b.txt

mydate.txt

注: -C 表示的是你解压的不是当前的路径,是C后面的路径,必须加上-C不然会报错

29、组管理之ls-ahl

组概念:Linux每个文件的所有者必须属于一个组

文件/目录所有者: 文件的创建者自然就是文件的拥有者

语法:ls -ahl

应用实例:

创建一个组为gg,再创建一个用户marry将marry放在gg组,然后使用marry创建一个文件ok.txt

[root@hadoop1 home]# groupadd gg  首先创建一个组

[root@hadoop1 home]# useradd -g gg marry   将用户marry放到组gg中去

[root@hadoop1 home]# passwd marry  给marry创建一个密码为123

[marry@hadoop1 ~]$ touch ok.txt  切换到marry用户然后创建一个ok.txt

[marry@hadoop1 ~]$ ls -ahl  使用ls -ahl看文件的拥有者和组

-rw-r--r--. 1 marry gg      0 11月  7 16:39 ok.txt

可以看到文件拥有者是marry,所在的组是gg

30、chown

修改文件所有者

语法: chown 用户名 文件名

应用案例:

将刚才的marry下的ok.txt拥有者改为jack拥有此文件

chown jack ok.txt 

0 -rw-r--r--. 1 jack  gg      0 11月  7 16:39 ok.txt

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值