Linux 指令补充

1.重定向

把前方语句的结果存进文件,若文件不存在会自动创建

>:输出重定向 会覆盖原来文件内容
>>:追加重定向 追加到文件末尾

命令 >/>> 文件路径     :   命名执行结果写入后面的文件里

小练习:
1.把/etc/profile 的内容 写进 /home/c.txt中
1.cp /etc/profile /home/c.txt
2.cat /etc/profile > /home/c.txt

2.echo指令

把内容输出到控制台

1.echo 内容
如下:
echo "我是杨家三少"
echo $PATH

3.head指令

用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容

head 文件路径            查看文件前10行
head -n 5 文件路径        查看文件前5行

小练习:
1.查看/etc/profile 的前5行内容

 

 

4.tail指令

用于显示文件的结尾部分内容,默认情况下tail指令显示文件的后10行内容

tail 文件路径            查看文件前10行
tail -n 5 文件路径        查看文件前5行
tail -f 文件路径        f:实时监听文件所有的更新并显示-----经常使用

5.ln指令:软硬链接

软链接也叫符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径

ln  源文件或源文件夹 软连接名      硬链接
ln -s 源文件或源文件夹 软连接名    软链接

软硬链接的区别

https://blog.csdn.net/junjunba2689/article/details/82658292

注意:

删除链接时需要注意,不能加/,最好不要加-r,应为/会删除源文件目录
测试:
1. 在/home目录下创建/root的软链接,名字为linktoroot
    ln -s /root linktoroot
2. cd 到软链接,然后pwd,查看当前路径
    
3. 创建一个a.txt的文件
    
4. cd 到 /root目录,查看是否有变化
5. 删除/home下的linktoroot    (需要注意,不能加/,最好不要加-r)
    rm -f linktoroot

5.history指令

查看已经执行过历史命令,也可以执行历史指令

history         查看所有的历史指令
history 10        查看最近执行的10条指令
!100            执行编号为100的指令

6.date 指令

date             显示当前日期
data +%Y        显示当前年份
data +%m        显示当前月份
data +%d        显示当前天
data +%Y-%m-%d %H:%M:%S

 

 

 7.cal指令

查看日历

cal         显示当前日历
cal 2020     显示2020年的日历
cal 10 2018  显示2018年10月份日历

8.find指令

指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端

find [范围] [选项]
范围:指路径,不写默认从当前向下找,类似于windows的查找

选项:
-name 文件名        按文件名查找
-user 用户名        查找属于该用户的所有文件
-size               按文件大小查找,+:大于,小于:-,等于:不写符号
    +20M
    -20M
    20M
    20K
* 通配符
小练习:
1.根据名称查找/home 目录下的 a.txt 文件
    find /home -name a.txt
    find /home -name "*.txt"
2.查找/opt 目录下,用户名称为 lxx 的文件
    find /opt -user lxx
3.查找整个 linux 系统下大于 20M 的文件
    find / -size +20M
4.查询/ 目录下,所有.txt 的文件
    find / -name "*.txt"

指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端

 

 

9.grep 指令 和 管道符号 |

1.管道符:"|",表示将前一个命令的处理结果输出传递给后面的命令处理

2.grep:过滤查找满足条件的文件内容整行数据

grep [选项] 过滤内容

选项:
-n        显示匹配行及行号
-i        忽略字母大小写

例子:
1.创建文件,写上多行,包含'yes''YES'
    
2.查找'yes'所在行,并显示行号
    cat a.txt | grep -n "yes"
3.忽略大小写,查找'yes'所在行
    cat a.txt | grep -ni "yes"

10.压缩和解压类

10.1 gzip/gunzip 指令(只能用于文件压缩)

gzip 文件路径1 文件路径2
gunzip gz文件路径1 gz文件路径2 
说明:使用gzip压缩文件之后,不会保留原来的文件

 

 

 

 

 

10.2 zip/unzip 指令

zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的

zip [选项] 压缩名.zip 被压缩内容1 被压缩的内容2            压缩内容为:压缩文件路径或者目录路径
      -r                                              压缩文件夹必选

unzip [选项] 压缩名.zip                                   解压文件    
    -d 目录                                            指定压缩后的存放目录
例子:
1.将 /home 下的 所有文件进行压缩成 mypackage.zip
    zip -r mypackage.zip /home
    zip -r mypackage.zip /home/*
2.讲mypackge.zip解压到/opt/tmp下
    unzip -d /opt/tmp mypackge.zip

10.3 tar

tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件

压缩:
tar -zcvf 压缩名.tar.gz  被压缩内容(文件,文件夹,多个也行)                        压缩
tar -zxvf 压缩名.tar.gz     -C 解压后存放路径                                        解压

z:使用gzip格式压缩,否则是单纯打包
c:压缩
x:解压
f:显示压缩解压过程
v:显示提示信息

例子:
1.压缩多个文件,将  /home/a1.txt 和  /home/a2.txt 压缩成    a.tar.gz
    tar -zcvf a.tar.gz /home/a1.txt /home/a2.txt
2.将/home 的文件夹 压缩成 myhome.tar.gz
3.将  a.tar.gz    解压到当前目录
4.将 myhome.tar.gz    解压到 /opt/ 目录下

11.权限管理

11.1 Linux组基本介绍

在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件有所有者(文件创建者)、所在组、其它组的概念

 

 

 

 11.2 查看文件的所有者

ls -ahl

 

 

 11.3修改文件所有者

chown 用户名 文件名路径

11.4 组的创建

groupadd 组名

11.5 修改文件所在组

chgrp 组名 文件名

11.6 改变用户所在组

## 10.5 其他组

除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组

## 10.6 改变用户所在组

在添加用户时,可以指定将该用户添加到哪个组中,同样的用
root 的管理权限可以改变某个用户所在的组

### 10.6.1 改变用户所在组
usermod    –g    组名    用户名

11.7权限基本介绍

ls -l
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc

0-9 位说明
第 0 位确定文件类型(d,-,l)
第 1-3 位确定所有者(该文件的所有者)拥有该文件的权限
第 4-6 位确定所属组(同用户组的)拥有该文件的权限
第 7-9 位确定其他用户拥有该文件的权限

11.8rwx权限详解

1. rwx作用到文件
r:可读
w:可写[可写不代表可以删除,删除一个文件的前提是对文件所在的目录有写的权限]
x:可执行

2.rwx作用到目录
r:可读(可用ls查看目录内容)
w:可写[可在目录内创建+删除+重命名文件或目录]
x:可执行[可以进入目录]

3.
可用数字表示:
 r = 4

  w = 2
  x = 1
   因此rwx = 4+2+1 = 7

11.9修改权限

chmod 权限变更格式 文件或目录路径

1.权限变更格式一:
u:所有者    g:所有组    o:其他用户    a:所有人

1. u=rwx,g=rx,o=x
2. o+w                    其它用户增加w权限
3. a-x                    所有人减去执行权限
例子:
1.给 abc 文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限
    chmod u=rwx,g=rx,o=rx abc
2.给 abc 文件的所有者除去执行的权限,增加组写的权限
    chmod u-x,g+w abc
3.给 abc 文件,所有用户添加读的权限
    chmod a+r abc

2.权限变更格式二:
r = 4   w = 2  x = 1    rwx = 7      rx = 5
chmod u=rwx,g=rx,o=x   可以写成        chmod 751
例子:
1.将 /home/abc 文件的权限修改成    rwxr-xr-x, 使用给数字的方式实现
    chmod  755  /home/abc
posted @ 2019-12-18 19:18  心慌得初夏  阅读(318)  评论(0编辑  收藏  举报
levels of contents