二、linu

1、经常使用linux命令python

昨日内容回顾

linux基本命令

ls 查看目录和文件
ls -la 查看全部文件和目录详情(包括隐藏文件, -l和-a能够单独使用)
mkdir
rmdir
touch
cat
cd
rm -rf()
pwd
more
tail

 

今日内容

1 linux命令基本操做

在linux下面: 没有提示(没有报错)就是最好的提示!!!mysql

在linux下面: 没有提示(没有报错)就是最好的提示!!!linux

在linux下面: 没有提示(没有报错)就是最好的提示!!!sql

1.1 IP地址;
192.168.1.155 本机IP地址
127.0.0.1 本地回环地址
0.0.0.0 也是本地回环地址, 它包括了192.168.1.155和127.0.0.1
1.2 linux操做小技巧
1.tab键    用于自动补全命令/文件名/目录名
2.ctrl + l  清理终端显示
3.clear/cls 清理终端显示
4.ctrl + c 终止当前操做
1.3 建立用户命令

useradd huangwen passwd huangwenvim

1.4 linux系统命令操做语法格式
命令 空格 参数 空格 【文件或路径】须要处理的内容
rm   -rf   /tmp/*
ls   -la   /home
1.5 安装好虚拟机就要作的事情 (很是重要************)

(1) 被系统自带的防火墙阻止(firewalld)windows

systemctl stop firewalld   # 先临时关闭防火墙
systemctl disable firewalld # 再永久关闭防火墙

(2) 美国国家安全局的防火墙(selinux)安全

# 临时关闭
getenforce # 查看状态(0表示关闭 1表示开启)
setenforce 1/0 # 表示开启/关闭

# 永久关闭
vim /etc/selinux/config
# 修改
SELINUX=disabled

 

2 linux基本命令

2.1 PS1(重要指数**)
echo $PS1

# 修改命令提示符
PS1="[\u@\h \w \t]\$"
2.2 更改主机名
hostnamectl set-hostname qishione
2.3 建立多个目录的命令
mkdir -p
mkdir -p /root/qishi5/gaoxin/{1,2,3} # 建立多个目录,放在大括号里面用逗号隔开,千万要注意不能有空格
touch /root/qishi5/gaoxin{1,2,3} # 建立多个普通文件
2.4 vim(重要指数*)
vi/vim操做流程: 
1. vi 打开文件 此时进入命令模式,你能够输入 i/a/o 命令,进入编辑模式
2. 在编辑模式下,开始输入字符串
3. 写完以后, 按下 esc 回到命令模式,按下 : 进入底线命令模式
4. :w 写入不退出 :wq! 写入且强制退出
底线命令模式 
w 保存
q 退出
wq 保存退出
q! 无理由退出
wq! 无理由保存退出 
2.5 cat命令(重要指数***)
cat -n 文件名  查看文件,并显示行号

cat 文件名  查看文件

# 追加文字到文件
cat >>/tmp/oldboy.txt << EOF
难难难 道德玄
不对知音不可谈
对了知音谈几句
不对知音枉费舌尖
EOF
2.6 more和less命令(重要指数***)

主要是用来查看大容量的文件服务器

more /etc/passwd
按下空格space是翻页
按下b键是上一页
回车键向下读取内容
2.7 cp命令(重要指数)

复制文件或文件夹网络

复制 > copy > cp
# 移动xxx.py到/tmp目录下
cp xxx.py /tmp/
# 移动xxx.py顺便更名为tiger.py
cp xxx.py /tmp/tiger.py
cp -r 递归,复制目录以及目录的子孙后代
cp -p 复制文件,同时保持文件属性不变
2.8 删除命令(重要指数)
删除  > remove > rm
参数  -i  须要删除确认
   -f  强制删除
      -r  递归删除目录和内容

rm -r也有提示,由于有alias设置less

alias命令查看别名
alias rm="rm -i"
2.9 alias命令(重要指数***)

当你输入rm命令时,提示"你这个饿货,不要再使用rm命令了,求你了大哥"

alias rm="echo '你这个饿货,不要再使用rm命令了,求你了大哥'"
2.10 查找命令find(重要指数***)

查找我想要的文件,过滤掉不须要的文件

-name 按照文件名查找文件
-type 查找某一类型的文件,诸如:
b - 块设备文件。
d - 目录。################
c - 字符设备文件。
p - 管道文件。
l - 符号连接文件。#############
f - 普通文件。#################
s - socket文件
# 找出/tmp全部以 .txt 结尾的文件
find /tmp/ -type f -name "*.txt"

# 找到/etc下全部名字以host开头的文件
find /etc -name 'host*'

# 找到/opt上一个名为settings.py
find /opt -name 'settings.py'
2.11 管道符"|" (重要指数)

第一个命令输出的结果,提供给第二个命令进行过滤,还能够进行第三次或屡次过滤

ps -ef 表示查看当前系统运行的全部进程

netstat -tunlp 表示查看当前系统开放的全部端口

ps -ef | grep lvmeatad   # 过滤出全部lvmaetad关键字的进程
netstat -tunlp  查看服务器的端口占用状况
netstat -na | find "445"  windows下查看并过滤出445端口的占用状况
139和445是windows下面的共享文件端口

主机IP相关:

192.168.12.139表示个人linux机器
127.0.0.1/localhost 表示我本身
0.0.0.0 表示192.168.1.197和127.0.0.1和localhost组合起来
2.12 grep命令,查找文件下有关键字的内容(重要指数)
# 找出/etc/passwd下root用户
grep "root" /etc/passwd

# 找出网卡配置文件下的dhcp
grep "dhcp" /etc/sysconfig/network-scripts/ifcfg-ens33

grep /sbin/nologin /etc/passwd

# 找到/etc/passwd的全部与mysql有关行,行号
cat /etc/passwd |grep -n 'mysql' 
2.13 head和tail命令
head显示文件前几行,默认前10行
tail显示文件后几行,默认后10行
#查看前两行
head -2 /tmp/oldboy.txt
#查看后两行
tail -2 /tmp/oldboy.txt
#持续刷新显示
tail -f xx.log
2.14 which命令(重要指数)

which命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时须要遍历的目录。

which python       #python命令在哪
/usr/bin/python    #命令文件绝对路径
2.15 远程COPY命令(scp) (重要指数*)

用于linux之间的文件或目录的远程传输

语法
scp 【可选参数】 本地源文件 远程文件标记

scp 本地文件  远程用户名@远程ip:远程文件夹/
scp 本地文件  远程用户名@远程ip:远程文件夹/远程文件名
scp -r  本地文件夹  远程用户名@远程ip:远程文件夹/

scp Python-3.6.6.tgz 192.168.1.189:/opt/  # 将文件拷贝到远程机器上
scp 192.168.1.189:/opt/Python-3.6.6.tgz . # 将远程机器上的文件拷贝到本地

参数

-r :递归复制整个目录
-v:详细方式输出
-q:不显示传输进度条
-C:容许压缩
scp -v -r /opt 192.168.1.155:/tmp/  
# 递归拷贝opt目录到远程服务器上(显示详细输出,如debug信息)
scp -r /opt 192.168.1.155:/tmp/   # 递归拷贝opt目录到远程服务器上
scp -C -r /opt 192.168.1.155:/tmp/   # 递归拷贝opt目录到远程服务器上,并压缩传输
2.16 du命令,用于显示目录或文件的大小(重要指数***)
du 【参数】【文件或目录】
-s 显示总计
-h 以k,M,G为单位显示,可读性强

df -h 查看磁盘大小, 和占用空间
# 显示/home的总大小
du -sh /home
2.17 top命令, 动态监视进程活动与系统负载等信息(重要指数*)

2.18 chattr与lsattr(重要指数***)

给文件加锁,只能写入数据,没法删除文件

chattr +a test.py
chattr -a test.py

查看文件隐藏属性(查看文件是否有锁,是否有a属性)

lsattr test.py
2.19 linux时间同步(重要指数***)
//手动修改时间
date 091117152019   # 0911表示月和日, 1715表示时分, 2019表示年份

//以系统时间为基准,修改硬件时间
[root@oldboy_python ~ 10:29:07]#hwclock -w

//以硬件时间为基准,修改系统时间
[root@oldboy_python ~ 10:29:21]#hwclock -s

ntp时间服务器同步

ntpdate -u ntp.aliyun.com
2.20 小知识点(重要指数**)

lrzsz工具包(能够提供linux服务器的上传和下载)

yum install lrzsz   # 下载此工具包

rz   # 上传文件
sz   # 下载文件
2.21 上传下载命令(重要指数*)
wget命令用于在终端下载网络文件
参数是 wget [参数] 下载地址
wget -r -p http://www.luffycity.com#递归下载路飞全部资源,保存到www.luffycity.com文件中
2.22 开关机命令(重要指数*)
reboot或init 6命令用于重启机器
poweroff或init 0用于关闭系统

 

3 VIM编辑器

3.1 vim编辑器工做原理

3.2 vim基本操做命令

重要的我会标为高亮,必需要会,其余的了解就能够

3.2.1 移动光标

w(e)  移动光标到下一个单词 b    移动到光标上一个单词

数字0  移动到本行开头 $    移动光标到本行结尾

H    移动光标到屏幕首行 M    移动到光标到屏幕的中间一行 L    移动光标到屏幕的尾行 gg    移动光标到文档的首行 G    移动光标到文档尾行

ctrl + f  下一页 ctrl + b  上一页

`.  移动光标到上一次的修改行

3.2.2 查找

/tiger 在整篇文档中搜索tiger字符串,向下查找 ?tiger 在整篇文档中搜索tiger字符串,向上查找

查找到关键字以后:
n 表示查找下一个关键字
N 表示查找上一个关键字

查找整个文档,匹配光标所在的全部单词,按下n查找下一处,N上一处

查找整个文档,匹配光标所在的全部单词,按下n查找下一处,N上一处

gd 找到光标所在单词匹配的单词,并停留在非注释的第一个匹配上

%    找到括号的另外一半!!

 

3.2.3. 复制粘贴删除命令

yy 拷贝光标所在行

nyy 拷贝以光标开始往下数n行内容

dd 删除光标所在行 D 删除当前光标到行尾的内容 dG 删除当前行到文档尾部的内容 p 粘贴yy所复制的内容 x   删除光标所在的前一个字符 del键 删除光标所在的字符 u 撤销上一步的操做

 

3.2.4 底线命令模式

:q! 强制退出 :wq! 强制写入退出 :set nu 显示行号

: set nonu 取消显示行号

:数字  调到数字那行

随时按下esc能够退出底线命令模式

 

2、总结

一、linux界面

提示符,#为root管理员用户,$为普通用户

 二、更改主机名:hostnamectl  set-hostname  主机名

 三、递归建立文件夹:

递归建立一个文件夹:mkdir  -p  文件1/文件2/文件3

递归建立多个文件夹(大括号中的文件用逗号分隔,不能有空格):mkdir  -p  /路径1/路径2/{文件夹1,文件夹2,文件夹3。。。   }

五、往文件中追加文字:echo  "追加的字符串"  >>  文件名

清空文件:echo  ""  >>  文件名

六、建立多个文件:touch  文件1  文件2  文件3

在某个文件夹下建立多个文件:touch  /路径1/路径2/{文件1,文件2,文件3,。。。}

七、cat命令

文件查看:cat 文件名

文件查看(默认查看10条):head 文件名 ( tail  文件名 )     -----head查看头部10条,tail查看尾部10条

动态查看文件:tail -f 文件名

cat复制文件(将文件1复制到某路径下并命名文件2):cat  文件1  >   /路径/文件2   

cat 追加内容( EOF 表示结束追加 ):cat  >>  文件 << EOF

  查看文件,同时显示行号:cat -n xxx.py

查看大型文件:

more  文件名    ----空格向下翻页、b是向上翻页、回车键向下读取内容、按q退出查看或Ctrl  c   用来终止操做

( less  文件名    ----可用方向键进行上下翻页 或空格向下翻页)

查看头部或尾部数据(能够在后面加  -数字   表示显示指定行数,默认显示10行,数字位置不能放末尾):

head 表示从上往下数10行,tail 表示从下往上数10行

head(尾部: tail )文件名

  head -11 /home/passwd 

假如须要中间位置10到20数据:head -20  /etc/passwd  |  tail  -10 /etc/passwd

八、复制文件1 到某路径下并命名:cp  文件1  路径/文件2

cp  -r  :递归复制

cp  -r  :复制文件,同时保持文件属性不变

九、移动文件1 到某路径下并命名:mv  文件1  路径/文件2

十、查找文件(查找的文件名最好加引号,这样可使用通配符 * 来进行模糊搜索,否则报错)

只能在根目录下查找:find  -name  文件名

在指定目录下查找(文件名加引号):find   指定目录  -name   ‘’文件名‘’

查找根目录下type表示查找类型参数,f是普通文件类型,name表示按文件名查找:find /  -type  f  -name  文件名

例如,找出以txt结尾的文件(测试结果是文件名带不带引号都可查询):find /  -type  f  -name  " *.txt "

十一、-type 查找某一类型的文件,诸如:

b - 块设备文件。
d - 目录。################
c - 字符设备文件。
p - 管道文件。
l - 符号连接文件。#############
f - 普通文件。#################
s - socket文件

 十二、grep 用法

查询进程:ps -ef

进行多级查询:ps -ef | grep "ssh" | grep "pts" | grep "auto"

查看系统开放的端口( tcp与udp协议的端口状况):netstat  -tunlp

查看系统开放的端口( 只查看tcp协议的端口状况):netstat  -ntlp

配合grep查看指定( 22 )端口: netstat  -ntlp  |  grep  22

grep 参数:-n  表示查找的同时显示行号

查询某文件中的指定文字并携带行号:cat  /etc/passed   |  grep  -n  "mysql"

从文件中查找指定文字:grep  "文字"   文件名

 从文件中查找指定文字而且携带对应行号:grep   -n  "文字"   文件名

grep  参数:-i   表示查询的同时忽略大小写查询

grep  参数:-v  反向选择,表示查询的是你没有指定的文字

1三、linux建立用户: useradd  用户名

给建立的用户建立密码: passwd  用户名  

切换用户: su   -   用户名

1四、linux中建立目录是区分大小写的(大小写不一样能够建立不一样目录),windows中建立目录不区分大小写(大小写不一样的目录表示同一个目录,不能建立)

1五、远程传输文件(传输后须要输入远程root密码):scp 文件路径 远程ip:远程ip的路径/命名新文件名

scp /home/pass 192.168.12.168:/home/ceshi-hu

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2019-11-07

相关文章
相关标签/搜索