1. 常用操作命令

树状形式显示

yum install tree

查看前5个进程

ps aux | head -n5

top(linux任务管理器)

top

tail(动态监测文件变化)

tail -f access.log

wget下载文件


# 下载安装wget
yum install wget# 格式
wget 路径  默认下载在当前路径# 案例
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-repo

压缩解压

Windows的压缩包与Linux的压缩包能否互通


windwods:rar,zip
linux:tar.gz, zip互通,不支持rar

tar打包与压缩参数(********  常用 ********)

  • tar 命令:用来压缩和解压文件。
  • tar本身不具有压缩功能。他是调用压缩功能实现的
tar(选项)(参数)
-A或--catenate:新增文件到以存在的备份文件;
-B:设置区块大小;
-c或--create:建立新的备份文件;
-C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
-d:记录文件的差别;
-x或--extract或--get:从备份文件中还原文件;
-t或--list:列出备份文件的内容;
-z或--gzip或--ungzip:通过gzip指令处理备份文件;
-Z或--compress或--uncompress:通过compress指令处理备份文件;
-f<备份文件>或--file=<备份文件>:指定备份文件;
-v或--verbose:显示指令执行过程;
-r:添加文件到已经压缩的文件;
-u:添加改变了和现有的文件到已经存在的压缩文件;
-j:支持bzip2解压文件;
-v:显示操作过程;
-l:文件系统边界设置;
-k:保留原有文件不覆盖;
-m:保留文件不被覆盖;
-w:确认压缩文件的正确性;
-p或--same-permissions:用原来的文件权限还原文件;
-P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;
-N <日期格式> 或 --newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里;
--exclude=<范本样式>:排除符合范本样式的文件。

tar压缩解压案例

 # tar打包与压缩(********  常用 ********)# 解压tar -xf  xx.tar.gz     # 解压xx.tar.gztar -zxvf Python-3.7.0b3.tgz # 解压tar -xjf xx.tar.bz2  # 解压缩bz2结尾的文件tar -xzvf  xx.tar.gz   # 解压tar.gz,详细过程列出来tar xf /etc/local.tar.gz  -C /tmp  # C指定解压到哪个路径# 压缩 tar -czvf 压缩包名称 压缩文件tar -czvf oldboy.txt.tar.gz oldboy.txt # 压缩oldboy.txt  tar -cf all_pic.tar *.jpg  # 压缩当前目录所有jpg结尾的文件

gzip (只能压一个文件,不能压文件夹,会把原来的删除)

gzip (只能压一个文件,不能压文件夹,会把原来的删除)gzip filegzip -d file有什么用?cd /etc/yum.repos.d/

zip的压缩和解压

3 zip的压缩和解压yum install zip unzip -yzip  filename.zip  filename  # 压单个文件zip -r home.zip /home/   #把home文件夹压缩unzip  home.zip   #解压unzip -l  home.zip # 不解压,看内容unzip home.zip  -d /opt/   # 把当前路径下的home.zip 解压到opt

curl:连通性

# 下载安装
yum install curl# 用处测试连通性或者下载
你的django:127.0.0.1:8080端口,先在本地curl一下,看看能不能通,可能是防火墙,阿里云的安全组# 案例下载(-o 指定位置以及名称)
curl -o /home/a.png https:72743-20190.png# 查看网站用的是什么类型的web服务器
curl -I www.taobao.com

上传下载 (4g以内)

# 下载安装
yum install lrzsz -y# 使用
rz:上传,选择文件直接上传
sz:sz 文件路径  可以下载到当前主机

sort

# 案例
sort file.txt  对内容进行排序
sort -t ":" -k2 file.txt
sort -t ":" -n -k2 file.txt

uniq 去重

uniq 去重,连续挨着的才能去,所以要跟sort连用sort file2.txt | uniq

wc

wc -l /etc/services # 统计当前路径下有多少文件和文件夹
ls | wc -l # 统计有多少个ssh相关的进程
ps aux |grep ssh | wc -l

查看系统版本信息

#查看系统版本信息
cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core) #查看内核版本号
uname -r
3.10.0-693.el7.x86_64#查看系统多少位
uname -m
x86_64#查看内核所有信息
uname -a

netstat命令

  • netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。
  • yum install net-tools
# 语法【选项】
netstat [选项]
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-l或--listening:显示监控中的服务器的Socket;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-a或--all:显示所有连线中的Socket;# 实例
[root@oldboy_python ~ 10:21:59]#netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      814/sshd
tcp6       0      0 :::111                  :::*                    LISTEN      2703/rpcbind
tcp6       0      0 :::3306                 :::*                    LISTEN      29269/mysqld
udp        0      0 0.0.0.0:758             0.0.0.0:*                           2703/rpcbind
udp        0      0 0.0.0.0:111             0.0.0.0:*                           2703/rpcbind

ps命令

  • ps命令用于报告当前系统的进程状态。
  • 可以搭配kill指令随时中断、删除不必要的程序。
  • ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。
ps  (参数)-e  显示所有程序
-f  显示UID等详细信息
-a  显示所有终端机下执行的程序,除了阶段作业领导者之外a   显示现行终端机下的所有程序,包括其他用户的程序x 显示所有程序,不以终端机来区分u 以用户为主的格式来显示程序状况
-u <用户识别码>    此选项的效果和指定”-U”选项相同
-p <程序识别码>    指定程序识别码,并列出该程序的状况ps -ef|grep mysql
ps -ef|grep redis-server
参考实例# 把所有进程显示出来:
ps -aux
ps -A# 把所有进程显示出来,并输出到ps.txt文件:
ps -aux > ps.txt# 查找特定进程信息:
ps -ef | grep ssh# 显示指定用户信息:
ps -u root# 按 CPU 资源的使用量对进程进行排序:
ps aux | sort -nk 3# 按内存资源的使用量对进程进行排序:
ps aux | sort -rnk 4 

Kill命令

  • kill命令用来删除执行中的程序或工作。kill可将指定的信息送至程序。
# 选项
-a:当处理当前进程时,不限制命令名和进程号的对应关系;
-l <信息编号>:若不加<信息编号>选项,则-l参数会列出全部的信息名称;
-p:指定kill 命令只打印相关进程的进程号,而不发送任何信号;
-s <信息名称或编号>:指定要送出的信息;
-u:指定用户。# 只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略,
下面是常用的信号:
HUP     1    终端断线
INT     2    中断(同 Ctrl + C)
QUIT    3    退出(同 Ctrl + \)
TERM   15    终止
KILL    9    强制终止
CONT   18    继续(与STOP相反, fg/bg命令)
STOP   19    暂停(同 Ctrl + Z)# 实例
先用ps查找进程,然后用kill杀掉:
ps -ef | grep vim
root      3268  2884  0 16:21 pts/1    00:00:00 vim install.log
root      3370  2822  0 16:21 pts/0    00:00:00 grep vim
# 命令
kill 3268

pkill杀死进程

  • 支持正则的kill命令
pkill nginx
pkill uwsgi

查看磁盘

df -h

selinux防火墙

  • SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,这个功能管理员又爱又恨,大多数生产环境也是关闭的做法,安全手段使用其他方法。
  • 大多数ssh连接不上虚拟机,都是因为防火墙和selinux阻挡了

永久关闭方式:

1.修改配置文件,永久生效关闭selinux
cp /etc/selinux/config /etc/selinux/config.bak #修改前备份2.修改方式可以vim编辑,找到
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled3.用sed替换
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config4.检查状态
grep "SELINUX=disabled" /etc/selinux/config# 出现结果即表示修改成功

临时关闭selinux(命令行修改,重启失效):

getenforce #获取selinux状态
#修改selinux状态
setenforce
usage:  setenforce [ Enforcing | Permissive | 1 | 0 ]
数字0 表示permissive,给出警告,不会阻止,等同disabled
数字1表示enforcing,表示开启# Tip:
修改selinux配置后,想要生效还得重启系统,技巧就是(修改配置文件+命令行修改,达到立即生效)
生产环境的服务器是禁止随意重启的!!!!

iptables防火墙

  • 在学习阶段,关闭防火墙可以更方便的学习,
  • 在企业环境中,一般只有配置外网ip的linux服务器才会开启防火墙,
  • 但是对于高并发流量的业务服务器仍然是不能开启的,会有很大性能损失,
  • 因此需要更nb的硬件防火墙。

关闭防火墙具体操作如下:

centos7默认已经使用firewall作为防火墙了# 关闭防火墙
iptables -F  # 临时关闭防火 允许所有的端口出去,清空所有的规则
systemctl status firewalld    # 查看防火墙状态
systemctl stop firewalld      # 关闭防火墙
systemctl disable firewalld   # 关闭防火墙开机启动
systemctl is-enabled firewalld.service  # 检查防火墙是否启动

hostnamectl 设置主机名

# 修改
hostnamectl set-hostname pyyuc
# 查看
hostname

DNS

  • DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
  • 通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。
# 查看Linux的dns,唯一配置文件3 配置文件
cat /etc/resolv.conf#dns服务器地址
nameserver 119.29.29.29
nameserver 223.5.5.5

本地强制dns解析文件/etc/hosts

指定本地解析:
/etc/hosts主机IP    主机名    主机别名
127.0.0.1        www.pyyuc.cn

2 文件与目录的权限篇

介绍

  • Linux权限的目的是(保护账户的资料)
  • Linux权限主要依据三种身份来决定:
  • user/owner 文件使用者,文件属于哪个用户
  • group 属组,文件属于哪个组
  • others 既不是user,也不再group,就是other,其他人
  • 在Linux中,每个文件都有所属的所有者,和所有组,并且规定了文件的所有者,所有组以及其他人对文件的,可读,可写,可执行等权限。
  • 对于目录的权限来说,可读是读取目录文件列表,可写是表示在目录内新增,修改,删除文件。可执行表示可以进入目录

如何查看权限

ls -l
ls -lh  以人性化显示,kb,gb

文件类型参数介绍

文件类型

文件类型:
-   #普通文件(文本, 二进制, 压缩, 图片, 日志等)
d   #目录文件b   #设备文件(块设备)存储设备硬盘 /dev/sda1, /dev/sda2
c   #设备文件(字符设备),终端 /dev/tty1, /dev/zero
s   #套接字文件, 进程间通信(socket)
p   #管道文件
l   #链接文件

通过file来查看详细的类型

file a.txt
file /bin/ls

权限参数

ls -l /var/log/mysqld.log
-rw-r--r-- 1 mysql mysql 6735642 8月  11 14:19 /var/log/mysqld.log
这个就代表mysqld.log文件属主是mysql,属组是mysql,只有mysql用户可以读取编写这个文件,其他人只能读此文件。

权限计数

  • 我们已知三种身份权限(属主,属组,其他人),每种身份都有rwx的三种权限,系统还提供了数字计算权限。
  • r read 4
  • w write 2
  • x execute 1
  • 每种身份最低是0分,最高是r+w+x 7分

  • 因此三种身份,最高权限是777,最低是000

-rw-rw-r-- 1 root root 0 8月  11 16:41 pyyu.txt
因此可知pyyu.txt的权限是
属主是6 r+w(4+2)
属组是6 r+w(4+2)
其他人是4 r(4)

id命令查看用户信息

# id指令查看用户所属群主
[root@ymq t1]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@ymq t1]#

修改文件属性

  • 普通用户只能修改自己的文件名,时间与权限(注意)
  • 因此修改其他用户权限,只能用最nb的root用户

切换root用户

当前/tmp/pyyu.txt文件以存在,且信息是
-rw-rw-r-- 1 pyyu pyyu    0 8月  11 16:41 pyyu.txt# 切换用户
su -

修改属主为root

[root@oldboy_python /tmp 16:43:12]#chown root pyyu.txt

查看信息

[root@oldboy_python /tmp 16:43:42]#ll pyyu.txt
-rw-rw-r-- 1 root pyyu 0 8月  11 16:41 pyyu.txt

修改属组

# chgrp[root@oldboy_python /tmp 16:43:42]#ll pyyu.txt
-rw-rw-r-- 1 root pyyu 0 8月  11 16:41 pyyu.txt
[root@oldboy_python /tmp 16:44:59]#chgrp root pyyu.txt
[root@oldboy_python /tmp 16:45:51]#ll pyyu.txt
-rw-rw-r-- 1 root root 0 8月  11 16:41 pyyu.txt

修改文件/目录的权限

chmod [身份]   [参数]   [文件]u(user)   +(添加)  g(group)   -(减去)o(other)  =(赋值)a(all)# 案例
当前权限
-rw-rw-r-- 1 root root 0 8月  11 16:41 pyyu.txt
方法1
减去属主的写权限
chmod u-w pyyu.txt
查看权限
-r--rw-r-- 1 root root 0 8月  11 16:41 pyyu.txt
方法2
属主添加可读可写可执行权限
chmod 700 pyyu.txt
属主可读可写可执行
属组可读可执行
其他人可读可执行
chmod 755 pyyu.txt

修改文件名,修改文件更改日期

mv pyyu.txt chaoge.txt
#触摸,修改时间
touch chaoge.txt

3 软连接,硬连接

软连接,硬连接介绍

  • 软连接也叫做符号链接,类似于windows的快捷方式。
  • 常用于安装软件的快捷方式配置,如python,nginx等
  • 软链接新建inode
  • 硬链接新建一个filename,指向同一个inode
  • 建立软连接一般建立到user/bin
  • 建立以后,直接在当前就可以启动,不然需要进入到改软件得bin目录下启动
# 格式
ln -s 目标文件  软连接名# 1.存在文件/tmp/test.txt
[root@master tmp]# ls -l
-rw-r--r-- 1 root root     10 10月 15 21:23 test.txt# 2.在/home目录中建立软连接,指向/tmp/test.txt文件
ln -s /tmp/test.txt my_test# 3.查看软连接信息  ls -l
lrwxrwxrwx 1 root root 13 10月 15 21:35 my_test -> /tmp/test.txt# 4.通过软连接查看文件
cat my_test# my_test只是/tmp/test.txt的一个别名,因此删除my_test不会影响/tmp/test.txt,
但是删除了本尊,快捷方式就无意义不存在了

4. 参考文章

pythonav资源分享https://pythonav.com/wiki/detail/3/30/

linux---操作命令/文件与目录的权限/软连接/相关推荐

  1. 用一个小案例来解释linux中文件或目录的权限

    Linux中文档和目录的权限 众所周知 , Linux中文档的权限包括所有者权限(User).同组权限(Group)和其他权限(Other).使用rwx来作为表示,分别为read.write和exec ...

  2. 【Linux】文件、目录与权限

    一.Linux权限的概念 Linux下有两种用户:超级用户(root)和普通用户(user) 超级用户:可以在Linux下做任何事 普通用户:权限有限,有些行为不被允许 超级用户的命令提示符为**#, ...

  3. Linux创建文件或目录的权限

    一.Linux文件的权限   1.文件创建时的默认权限是666,也就是没有执行权限rw-rw-rw-,普通文件的执行权限系统会默认去掉:目录的默认权限是777,也就是满权限rwxrwxrwx.   2 ...

  4. Linux新建文件和目录的权限

    新建文件的默认权限:666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变 新建目录的默认权限:777-umask 非特权用户umask默认是002 root的umask默 ...

  5. java 在linux创建文件或目录 设置权限

    1. //Runtime.getRuntime().exec("chmod 777 /home/test3.txt"); 2. file.setExecutable(true);/ ...

  6. Linux常用命令(本篇包括,Linux目录结构介绍、Linux Shell介绍、9个常见命令介绍、文件的概念、文件的操作(20个)、目录的操作、文件和目录的权限、文件压缩及解压缩)

    Linux常用命令(本篇包括,Linux目录结构介绍.Linux Shell介绍.9个常见命令介绍.文件的概念.文件的操作(20个).目录的操作.文件和目录的权限.文件压缩及解压缩)         ...

  7. Linux学习笔记三【文件及目录的权限管理篇】

    文件及目录的权限管理 上篇简单介绍了下文件和目录的一些简单的操作,接下来介绍用户和文件权限的管理.首先了解用户和组账号的配置文件,然后是管理用户和组账号,最后要会设置文件和目录权限和归属. Linux ...

  8. linux 权限属性,linux 文件或目录的权限和属性

    1.windows 和linux文件类型的区别 windows 里是通过扩展名来区分文件类型的:linux里文件扩展名和文件类型没有关系,为了容易区分和箭筒用户使用的windows的习惯,我们也会用扩 ...

  9. linux如何建立隐藏目录,【Linux】文件与目录的默认权限与隐藏权限

    01. 文件默认权限:umask 文件的权限可以使用chmod来改变,但是我们默认创建文件的权限是什么?那就是与umask这个有关了.下来我们学习这个指令 1.1 简单使用umask [root@iZ ...

  10. Linux——文件或目录的权限管理、网络管理、进程管理、服务管理的相关命令

    1.文件或目录的权限管理命令 一个用户至少属于一个组,也可以属于多个组:一个文件或者目录也必须属于一个,并且只能属于一个组: 在一个文件或者目录看来,linux系统中所有的用户可以分为三类:所有者:同 ...

最新文章

  1. Bellman-Ford算法——为什么要循环n-1次?图有n个点,又不能有回路,所以最短路径最多n-1边。又因为每次循环,至少relax一边所以最多n-1次就行了!...
  2. 集成算法中的Bagging
  3. 博客园添加访问人数统计超详细教程
  4. git http仓库账号密码缓存至本地:不用每次git push都需要输入密码的方法(类似于windows的凭据管理)
  5. C++二叉搜索树(Binary Search Tree)(附完整源码)
  6. 面试题:如何实现一个深拷贝
  7. 阜阳市乡镇企业中专学校计算机教师高翱简介,2017年中南林业科技大学博士研究生奖助学金...
  8. Docker小白到实战之Docker网络简单了解一下
  9. vue aplayer 进度条无法拖动_「最近项目小结」使用Vue实现一个简单的鼠标拖拽滚动效果插件...
  10. docker视频教程 假装听听 应该还行
  11. centos8 yum源配置
  12. 世界上最简单的会计书-笔记
  13. 计算机主机hdmi接口是什么意思,hdmi接口是什么 hdmi是什么意思
  14. Cxgrid控件中限制单元格输入类型以及显示格式
  15. ArcGIS使用(二)ArcGIS加载天地图
  16. 【Nas/群晖/服务器】FRP内网穿透实现外网访问
  17. 创建添加学生信息的vue实例
  18. 微信服务器每年维护成本,运维工匠熊普江:微信精细化运维,每年节省带宽成本14亿!...
  19. Windows7更换锁屏壁纸
  20. 前端项目自动生成i18n国际化语言文件插件

热门文章

  1. 盲目的相信——写在购买陆谷孙先生主编的《英汉大词典》之后
  2. 基于Java毕业设计大学生旅游拼团网站源码+系统+mysql+lw文档+部署软件
  3. Mugeda (木疙瘩)H5案例课—交互动画类H5制作-岑远科-专题视频课程
  4. EAUML日拱一卒-活动图::14.2 Behavior StateMachines (6) - Transitions
  5. 8086CPU段寄存器笔记
  6. python xlwt_python使用xlwt编辑excel
  7. 有没有能PC远程控制安卓手机的App?AirDroid实现PC远程控制安卓
  8. 超简单的HIDPI设置
  9. win10 SVN 图标不显示的解决办法
  10. Linux U盘检测与速度测试源码