Python高级编程笔记-Linux命令(3)

Python高级编程笔记-Linux命令(3)

一、Linux基础命令

操作系统

常见的操作系统
  • Windows
  • mac OS
  • Linux
  • IOS
  • Android
操作系统的定义

操作系统直接运行在计算机上的系统软件,他是控制硬件和支持软件运行的计算机程序

计算机 —> 硬件、操作系统、软件

操作系统的作用

向下控制硬件向上支持软件的运行,具有承上启下的作用

小结

操作系统是一个控制和支持软件运行的计算机程序,只有安装了操作系统计算机才能正常工作

虚拟机软件

虚拟机软件的介绍

他是能够虚拟出来计算机的一个软件

常用的虚拟机软件有:

  • VMware
  • VirtualBox

说明:只有安装了虚拟机才可以创建虚拟机,当然通过虚拟机软件还可以创建多个虚拟机

虚拟机的介绍

就是模拟一个真实的计算机,好比一个虚拟的电脑,对于快速学习一个新的操作系统就可以通过虚拟机完成

说明:虚拟机之间是相互独立的,删除虚拟机不会对其他虚拟机产生影响,当然也不会对电脑本身产生影响

虚拟机软件的安装说明
  • Windows和Linux下载VMware Workstation版的安装包
  • mac OS下载VMware Fusion版的安装包
  • 当对应的安装包下载完成以后双击进行安装就可以了
  • 当虚拟机软件安装成功就可以创建虚拟机了

Ubuntu操作系统

Ubuntu操作系统的介绍

Ubuntu操作系统是属于Linux操作系统中的一种,他是免费、稳定又可以拥有图形化界面

Ubuntu图形界面介绍
  • 任务栏
  • 窗口操作按钮
  • 窗口菜单条
与Windows目录结构对比

Windows目录结构:每个盘符就是一个根目录,在Windows操作系统里面可能会出现多个根目录

Linux目录结构:Ubuntu没有盘符这个概念,只有一个根目录 / 。

/ --> /bin /etc /home /lib /usr

/home --> /itheima /python /laowang

/python --> /Desktop /Documents /Downloads

/:根目录

/bin:可执行二进制文件

/etc:系统配置文件存放地址

/home:用户家目录

与Windows窗口对比
  • Windows窗口操作按钮在窗口左边
  • Linux窗口操作在窗口右边

Linux内核及发行版

Linux内核

Linux内核是操作系统内部和操作硬件设备的核心程序,它是由芬兰人林纳斯开发的

操作系统–内核–硬件

真正操作和控制硬件是由内核来完成的,操作系统是基于内核开发出来的

Linux发行版

是Linux内核与各种常用软件的组合产品,通俗来说就是我们常说的Linux操作系统

常用的Linux发行版

  • Unbutu
  • CentOS
  • Redhat

查看目录命令

CTRL + ALT + T:启动终端

CTRL + SHIFT + “+”:终端字体放大

CTRL + “-”:终端字体缩小

查看目录命令的使用
命令说明
ls查看当前目录信息
tree以树状方式显示目录信息
查看当前目录路径
命令说明
pwd查看当前目录路径
清除终端内容
命令说明
clear清除终端内容

切换目录命令

命令说明
cd 目录切换到指定目录
cd ~切换到当前用户的主目录
cd …切换到上一级目录
cd .切换到当前目录
cd -切换到上一次目录

注意:

  • cd命令切换目录时,这个目录必须存在
  • cd 后面不写目录等价于cd ~

绝对路径和相对路径

绝对路径

从根目录算起的路径叫做绝对路径

例如:

  • /home/wuxibin/Desktop
  • /usr/bin
相对路径

从当前目录算起的路径叫做相对路径

  • …/test/hello
  • …/static/images
绝对路径和相对路径的使用
  1. 使用绝对路径切换到桌面

    cd /home/python/Desktop

  2. 在下载目录以相对路径切换到桌面

    cd Downloads

    cd …/Downloads

  3. 在桌面使用相对路基切换到上一级目录的上一级目录

    cd Desktop cd …/…/

自动补全
  • 当敲出 文件或者目录或者命令 的前几个字母之后,按下tab键,如果输入的没有歧义,系统会自动补全
  • 当切换目录或者使用命令的时候,如果不确定当前目录下有那些子目录或者其他命令,可以通过两次tab键查看

创建、删除文件及目录命令

命令说明
touch 文件名创建指定文件
mkdir 目录名创建目录(文件夹)
rm 文件名或者目录名删除指定文件或者目录(如果删除的文件夹有内容,则加参数 -r)
rmdir 目录名删除空目录

复制、移动文件及目录命令

命令说明
cp拷贝文件、拷贝目录
mv移动文件、移动目录、重命名

终端命令格式的组成

command [-options] [parameter]

每项信息的说明:

  • command: 命令名,比如:ls、pwd
  • 【-options】: 选项,可以有零个、一个或多个选项可以合并,比如使用的-r就是选项。
  • 【parameter】:参数,可以有零个、一个或多个参数,比如touch 文件名、mkdir 目录名、cd 目标 目录(路径),这些文件名和目录名都是参数。
  • 【】:代表可选

小结:

  • 终端命令完整格式:命令名 选项(可选) 参数(可选)
  • 选项:用于调整命令的功能,比如:-r调整cp命令的功能
  • 选项可以分为短选项和长选项
    1. 短选项的格式:‘-’后面接个单词,比如:-r
    2. 长选项的格式:‘–’后面接个单词,比如:–help
  • 参数:命令的操作对象,一般是文件名或者目录名
  • 对于命令,它的选项和参数一般情况下没有顺序要求,但是scp命令是必须先选项然后跟上参数

查看命令帮助

查看命令帮助方式
  • –help 使用说明:命令 --help

  • man 使用说明:man 命令

    空格:显示下一屏信息

    回车:显示下一行信息

    b:显示上一屏信息

    f:显示下一屏信息

    q:退出

ls命令选项

命令选项说明
-l以列表方式显示
-h以大小单位显示,默认是字节
-a显示隐藏文件和隐藏目录

拓展

-rw-r--r-- 1 root root 14 11月 24 01:31 file

-:文件类型

rw-r–r–:文件存取控制,三个一组,第一组:文件所有者(user)第二组表示与文件所有者同一组(group)的其他用户的权限,第三组表示其他所有用户(others)的权限

1:硬件连接数

root:文件属主

root:文件所属组

14:文件大小

11月 24 01:31:文件修改时间

file:文件名

mkdir和rm命令选项

mkdir命令选项
命令选项说明
-p创建所依赖的文件夹
rm命令选项
命令选项说明
-i交互式提示
-r递归删除目录及内容
-f强制删除,忽略不存在的文件,无需提示
-d删除空目录

cp和mv命令选项

cp命令选项
命令选项说明
-i交互式提示
-r递归拷贝目录及其内容
-v显示拷贝后的路径描述
-a保留文件的原有权限
mv命令选项
命令选项说明
-i交互式提示
-v显示移动后的路径描述

二、Linux高级命令

1. 重定向命令

重定向也称为输出重定向,把在终端执行命令的结果保存到目标文件

命令说明
>如果文件存在则覆盖原有文件内容,相当于文件操作中的‘w’模式
>>如果文件存在则追加写入末尾,相当于文件操作中的‘a’模式

2.查看文件内容命令

查看文件内容命令的使用
命令选项说明
cat查看小型文件
more分屏查看大型文件
gedit文件编辑命令,可以查看和编辑文件

more命令信息过长无法显示在一屏上时,可以使用操作键

空格:显示下一屏信息

回车:显示下一行信息

b:显示上一屏信息

f:显示下一屏信息

q:退出

管道(|)命令的使用

管道(|):一个命令的输出可以通过管道作为另一个命令的输入,可以理解成是一个容器,存放在终端显示的内容

管道(|)一般结合more命令使用,主要是分配查看终端显示内容

例如: ls /bin | more

3.链接命令

链接命令是创建链接文件,链接文件分为:

  • 软链接
  • 硬链接
命令说明
ln -s创建软链接
ln创建硬链接
软链接

类似于Windows下的快捷方式,当一个源文件的目录层级比较深,我们想要方便使用他可以给源文件创建一个软链接

例如:ln -s /home/python/Desktop/AAA/1.txt …/1-s.txt

注意点:

  • 如果软链接和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径
  • 删除源文件则软连接失效
  • 可以给目录创建软链接

创建软链接命令格式:ln -s 源文件路径(使用绝对路径) 软链接

硬链接

类似于源文件的一个别名,也就是说这两个名字指向的是同一个文件数据

文件数据 -----Hello.py

文件数据-----Hello-h.py

注意点:

  • 创建硬链接使用相对路径和绝对路径都可以
  • 删除源文件,硬链接还可以访问到数据
  • 创建硬链接,硬链接数会加1,删除源文件或者硬链接,硬链接数便会减1
  • 创建软链接,硬链接数不会加1
  • 不能给目录创建硬链接

硬链接数:硬链接数就是文件数据被文件名使用的次数,好比引用计数

4.文本搜索命令

grep命令的使用
命令说明
grep文本搜索
grep命令选项
命令选项说明
-i忽略大小写
-n显示匹配行号
-v显示不包含匹配文本的所有行
grep命令结合正则表达式的使用
正则表达式说明
^以指定字符串开头
$以指定字符串结尾
.匹配一个非换行符的字符
扩展
  • grep命令还可以文本搜索管道中的内容,比如:ls / | grep ‘lib’
  • 在使用grep命令的时候还可以省略搜索内容的引号,比如:ls / | grep lib, grep hello 1.txt

5.查找文件命令

find命令及选项的使用
命令说明
find在指定目录下查找文件(包括目录)
find命令选项:
命令说明
-name根据文件名(包括目录名)字查找
find命令结合通配符的使用

通配符:是一种特殊语句,主要有(*)和问号(?),用来模糊搜索文件

通配符说明
*代表0个或多个任意字符
代表任意一个字符

拓展:

通配符不仅能结合find命令使用,还可以结合其他命令使用,比如:ls、mv、cp等,着里需要注意的只有find命令使用通配符需要加上引号。

小结:

  • find命令是用来查找文件操作的
  • 查找文件命令格式为:find 指定查找目录 -name “文件名”

6.压缩和解压缩命令

压缩格式的介绍

Linux默认支持的压缩格式:

  • .gz
  • .bz2
  • .zip

说明:

  • .gz和.bz2的压缩包需要使用tar命令来压缩和解压缩
  • .zip的压缩包需要使用zip命令来压缩,使用unzip命令来解压缩

压缩目的:

  • 节省磁盘空间
tar命令及选项的使用
命令说明
tar压缩和解压缩

tar命令选项:

选项说明
-c创建打包文件
-v显示打包或者解包的详细信息
-f指定文件名称,必须放到所有选项后面
-z压缩或解压缩(.gz)
-j压缩或解压缩(.zip)
-x解包
-C解压缩到指定目录
zip和unzip命令及选项的使用
命令说明
zip压缩成.zip格式文件
unzip解压缩.zip格式文件

unzip命令选项

选项说明
-d解压缩到指定目录

说明:

  • 压缩文件尽量使用.gz格式,因为占用空间较少
  • 使用zip命令压缩文件占用空间比较多,比较通用,操作更简单

.gz的压缩:tar -zcvf xxx.tar.gz 文件名

.gz的解压缩:tar -zxvf xxx.tar.gz -C 路径

.bz2的压缩:tar -jcvf xxx.bz2 文件名

.bz2的解压缩:tar -jxvf xxx.bz2 -C 路径

.zip的压缩:zip xxx 文件名

.zip的解压缩:unzip xxx.zip -d 路径

小结
  • .gz和.bz2的压缩文件使用tar命令来完成压缩和解压缩
  • .zip的压缩文件使用zip和unzip命令来完成压缩和解压缩

7.文件权限命令

chmod 命令介绍
命令说明
chmod修改文件权限

chmod修改文件权限有两种方式:

  • 字母法
  • 数字法
chmod字母法的使用

角色说明:

-rw-r--r--

-:表示文件类型

三个一组:第一组:user;第二组:group;第三组:other。

角色说明
uuser,表示该文件的所有者
ggroup,表示用户组
oother,表示其他用户
aall,表示所有用户

权限设置说明:

操作符说明
+增加权限
-撤销权限
=设置权限

权限说明:

权限说明
r可读
w可写
x可执行
-无任何权限

拓展:

which python3 查看python路径

#注释内容-> #表示一个注释

#!/usr/local/bin/python3 表示声明操作系统使用指定的Python解释器去执行代码

# _*_coding:utf-8_*_表示指定文件编码格式

chmod数字法的使用

数字法就是“rwx”这些权限也可用使用数字来代替

权限说明:

权限说明
r可读,权限制是4
w可写,权限制是2
x可执行,权限制是1
-无任何权限,权限制是0

8.获取管理员权限的相关命令

sudo命令的使用
命令说明
sudo -s切换到root用户,获取管理员权限
sudo某个命令的执行需要获取管理员权限可以在执行命令前面加上sudo
whoami命令的使用
命令说明
whoami查看当前用户
exit命令的使用
命令说明
exit退出登录用户

说明:

  • 如果是切换后的登录用户,退出则返回上一个登录账号
  • 如果是终端界面,退出当前终端
who命令的使用
命令说明
who查看所有登录的用户
passwd命令的使用
命令说明
passwd修改用户密码,不指定用户默认修改当前登录用户密码
which 命令的使用
命令说明
which查看命令位置
关机和重启命令
命令说明
shutdown -h now立刻关机
reboot重启
小结
  • sudo 是临时获取管理员权限
  • sudo -s 是切换到管理员用户
  • exit 是退出当前用户
  • passwd 默认修改当前用户密码

9.用户相关操作

创建用户
命令说明
useradd创建(添加)用户

useradd命令选项:

命令说明
-m自动创建用户主目录,主目录的名字就是用户名
-g指定用户所属的用户组,默认不指定会自动创建一个同名的用户组
设置密码

给其他用户设置密码,需要使用:sudo passwd 用户名

切换用户
命令说明
su切换用户

语法格式:su - 用户名

修改用户信息
命令说明
usermod修改用户信息

usermod选项:

命令说明
-G设置一个附加组
-g修改用户组
扩展:删除附加组
命令说明
gpasswd添加和删除附加组信息

usermod选项:

命令说明
-a 用户名给用户添加附加组
-d 用户名给用户删除附加组
删除用户
命令说明
userdel删除用户

usermod选项:

命令说明
-r删除用户主目录,必须要设置,否则用户主目录不会删除
小结
  • 创建用户命令格式:sudo useradd -m 用户名 ,默认会创建一个同名的用户组
  • 查看用户信息使用 id 命令或者 /etc/passwd 文件
  • 查看用户组信息使用 /etc/group 文件
  • 给用户设置密码使用 sudo passwd 用户名
  • 切换用户使用 su - 用户名
  • 设置附加组使用 sudo usermod -G 组名 用户名
  • 删除用户使用 sudo userdel -r 用户名,默认会删除同名的用户组

10.用户组相关操作

创建用户组
命令说明
groupadd创建(添加)用户组
创建用户并指定用户组

sudo useradd -m -g test python

修改用户组

sudo usermod -g abc python

删除用户组
命令说明
groupdel删除用户组
  • 如果用户组下面有用户先删除用户再删除用户组
小结
  • 创建用户组使用:sudo groupadd 用户组名
  • 创建用户组并指定用户组使用:sudo useradd -m -g 用户组 用户名
  • 修改用户组使用:sudo usermod -g 用户组 用户名
  • 删除用户组使用:sudo groupdel 用户组名

11.远程登录、远程拷贝命令

远程登录、远程拷贝命令
命令说明
ssh远程登录
scp远程拷贝
ssh命令的使用

ssh是专门为远程登录提供的一个安全性协议,常用于远程登录,想要使用ssh服务,需要安装相应的服务端和客户端软件,当软件安装成功后就可以使用ssh命令,以后可以通过远程登录之间操作远程服务器

sudo apt-get install openssh-server 安装ssh服务端软件,可以被客户端电脑进行远程登录

sudo apt-get install openssh-client 安装ssh客户端软件,可以使用ssh命令,远程登录服务端电脑

软件安装步骤:

  • 假如Ubuntu作为服务端,需要安装ssh服务端软件,执行命令:sudo apt-get install openssh-server
  • 客户端电脑如果是macOS系统则不需要安装ssh客户端,默认已经安装过了,直接可以使用ssh命令
  • 客户端如果是Windows系统则需要安装OpenSSH for Windows这个软件

ssh命令格式:

ssh 用户名@ip地址

scp命令的使用

scp是基于ssh进行远程文件拷贝命令,也就是说需要保证服务端和客户端电脑安装了相应的ssh软件。

scp命令格式:

  • 远程拷贝文件:

    scp 本地文件 远程服务器用户名@远程服务器ip地址:指定拷贝到远程服务器的路径

    scp 远程服务器用户名@远程服务器ip地址:远程服务器文件 指定拷贝到本地电脑的路径

  • 远程拷贝目标

    scp -r 本地目录 远程服务器用户名@远程服务器ip地址:指定拷贝到远程服务器的路径

    scp -r 远程服务器用户名@远程服务器ip地址:远程服务器文件 指定拷贝到本地电脑的路径

    -r 表示递归拷贝整个目录

FileZilla软件

FileZilla 是一个免费开源的FTP软件, 使用可视化方式进行上传和下载文件。以后可以通过 FileZilla 来代替 scp 命令

12.编辑器vim

vim的介绍

vim是一款功能强大的文本编辑器,也是早年vi编辑器的加强版,他的最大特色就是使用命令进行编辑,完全脱离了鼠标操作

vim的工作模式
  • 命令模式
  • 编辑模式
  • 末行模式

说明:vim打开文件进入的是命令模式

注意点:编辑模式和末行模式之间不能直接进行切换,都需要通过命令模式来完成

编辑模式 i<–>esc 命令模式 esc<–>: 末行模式

末行模式命令
  • :w 保存

    :wq 保存退出

  • :x 保存退出

  • :q! 强制退出

vim的常用命令
命令说明
yy复制光标所在行
p粘贴
dd删除/剪切当前行
V按行选中
u撤销
ctr+r反撤销
>>往右缩进
<<往左缩进
:/搜索的内容搜索指定内容
:%s/要替换的内容/替换后的内容/g全局替换
:开始行数,结束行数s/要替换的内容/替换后的内容局部替换
.重复上一次的命令操作
G回到最后一行
gg回到第一行
数字+G回到指定行
shift+6回到当前的行首
shift+4回到当前的行末
ctr+f下一屏
ctr+b上一屏

13.软件安装

mac:.dmg

Ubuntu: .deb

Windows: .exe

软件安装的介绍

ubuntu软件安装有两种方式:

  • 离线安装(deb文件格式安装)
  • 在线安装(apt-get方式安装)
deb文件格式安装

是Ubuntu的安装包格式,可以使用dpkg命令进行软件的安装和卸载

命令说明
dpkg安装和卸载deb安装包

dpkg命令选择:

选项说明
-i离线安装deb安装包
apt-get 方式安装

是在线安装deb软件包的命令,主要用于在线从互联网的软件仓库中搜索、安装、升级、卸载软件

在线安装软件命令格式:

sudo apt-get install 安装包,表示在线安装deb安装包

更改镜像源

因为使用apt-get命令默认的是从国外的服务器下载安装的,会导致安装速度很慢,所示需要更改成国内的镜像源服务器

国内的镜像服务器和国外服务器软件信息都是同步的,在国内镜像服务器下载软件速度会变快

更改镜像源的方式:

  1. 可视化方式更改镜像源
  2. 手动方式更改镜像源
小结
  • sudo dpkg -i 安装包 命令
  • sudo apt-get install 安装包 命令卸载
  • 使用apt-get命令也就是在线安装需要更改源镜像,提高下载和安装速度

14.软件卸载

软件卸载
  • 离线安装包的卸载(deb 文件格式卸载)
  • 在线安装包的卸载(apt-get方式卸载)
deb文件格式卸载

命令格式:

sudo dpkg -r 安装包名称

-r 表示安装的卸载

apt-get方式卸载

sudo apt-get remove 安装包名

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值