linux
1. 文件的基本操作
创建文件 vi/vim touch
创建文件夹 mkdir
-p 递归创建
删除文件 rm
默认只删除文件
-r 删除目录
-f 强制删除不询问
删除系统根目录
rm -rf /*
修改文件
复制 cp
-r 复制文件夹
格式: cp [-r] 要复制的文件 目标位置
我们使用linux会经常修改配置文件,在修改配置文件之前先将配置文件备份,防止修改出错导致,服务无法启动
使用cp 将配置文件复制到当前目录并且改名
移动 mv
格式:mv 要移动的文件 目标路径
一般可以做文件的重命名
cp:原来的位置还在
./demo写名字 就是重新起了个名字
./,就是复制到这个目录
mv:原来的位置就没有了 覆盖原来的文件
可以重命名
查看文件
注意:命令后面跟着文件名
vi/vim
cat
head
-c 数字 从头返回指定数字字节的内容
-n 数字
如果是正数 返回的是从首航到指定行的内容
如果是负数 返回的是从首航到指定负数行以上的内容
tail
-c
-c +2 从头第二个字节开始取 取到最后
-c -2 从倒数第一个字节取到最后
tail -c -3 test2 取不到-3
-n
-n +2 从第二行还是取 取到最后
-n -2 取最后两行的信息
-f 循环读取 如果文件删除将停止监听 vim的操作时不会被监听的
-F 及时输出 如果文件删除重新创建了 会继续监听文件变化
more
回车 显现下一行内容
空格是显示下一页
b 显示上一页
q 是退出
显示完之后 会自动退出
less
回车 显现喜一行内容
空格是显示下一页
b 显示上一页
q 是退出
不会退出
tar命令 归档
-c 创建压缩文档
-v 显示解压缩过程
-f 指定压缩文档
-x 解压tar包
-z 压缩gz的文件 操作gzip格式的文件
-J 操作xz格式的文件
-t 查看压缩文件的内容
-r 向压缩文件中追加内容
-j
-Z
注意:-f必须添加
打tar包 归档 后缀名为.tar
tar -cvf 归档文件的名字 要压缩的文件
解压tar包
tar -xvf 文件名
压缩.py文件为gz包 后缀名一般是.tar.gz
tar -czvf 压缩后文件的名字 要压缩的文件
解压缩gz包
tar -xzvf 要解压的文件
压缩xz的包.tar.xz
tar -Jcvf 压缩后的文件名 要压缩的文件
解压xz的包
tar -Jxvf 要解压的文件
注意:.tar属于归档不会做压缩操作 文件大小不会发生变化
.gz 压缩 会改变文件大小
bz包 bzip2的压缩方式 后缀名为.tar.bz2
-j
Z包 后缀名为.tar.Z
-Z
练习:
在家目录创建一个hello.py的文件
touch hello.py
创建目录 demo
mkdir demo
- 将hello.py文件 复制demo中
cp hello.py ./demo
将hello.py文件 复制demo中并重命名为h.py
cp hello.py ./demo/h.py - 将hello.py 备份成 hello.py.back 到当前目录
cp hello.py ./hello.py.back - 将hello.py 移动到桌面
mv hello.py ./Desktop - 当前在家目录 将桌面上的hello.py 重新命名为 love.py
mv ./Desktop/hello.py ./Desktop/love.py - 创建p.py,a.py
touch p.py
touch a.py
touch p.py a.py - 将p.py和a.py打包成tar文件
[zh@bogon ~]$ tar -cvf py.tar a.py p.py - 将p.py和a.py打包成.tar.gz文件
[zh@bogon ~]$ tar -czvf py.tar.gz a.py p.py - 将p.py和a.py打包成.tar.xz文件
[zh@bogon ~]$ tar -cJvf py.tar.xz a.py p.py
linux常用的压缩格式
命令的格式: ls [-属性] [参数]
tar 归档
tar -cvf 归档后的文件名.tar 要压缩的文件
tar -xvf 要解压的文件.tar
gz
tar -czvf 压缩后的文件名.tar.gz 要压缩的文件
tar -xzvf 要解压的文件.tar.gz
xz
tar -cJvf 压缩后的文件名.tar.xz 要压缩的文件
tar -xJvf 要解压的文件.tar.xz
2. 关机和重启命令
关机
shutdown 只能在root权限下使用
-r 重启
-h 关机
shutdown -r 默认一分钟后重启
shutdown -r now 立即重启
shutdown -r 22:00 22:00 重启
shutdown -h now 立即关机
shutdown -h 10 10分钟后关机
poweroff 立即关机
init 0-6
init 0 关机
init 3 切换至命令行模式
init 5 从命令行模式切换到图形化模式(前提你装了带图形化的系统)
int 6 重启
重启
reboot
3. python2和python3共存
centos7 当中默认安装了python2的环境
ubuntu 默认安装的python2 和python3.5
保证你的虚拟机要能联网
测试是否是连通的:ping www.baidu.com
源码包安装/ yum 安装 类似于python pip
python3 的安装过程详细步骤
-
安装依赖包
切换到root权限下安装
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc* make -y -
下载python安装包
wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz -
解压python安装包
tar -Jxvf Python-3.5.2.tar.xz
-
配置安装路径
切入到解压目录下
配置安装路径
./configure prefix=/usr/local/python3 -
编译安装
切入到解压目录下
make && make install
如果执行make 报错 安装python3.7
“ImportError: No module named ‘_ctypes’” 缺少依赖包
yum -y install gcc kernel-devel kenel-headers make bzip2
yum -y install gcc gcc-c++ zlib zlib-devel libffi-devel
重新编译执行 make检测是否安装成功:
安装没问题。但是我们需要配置环境变量,
需要将python3的执行程序 连接到根下的bin目录 但是根下的bin目录指向的是/usr/bin 所以我们将python3的执行文件链接到/usr/bin下就可以了
cd /usr/local/python3/bin根目录下的bin目录 /根目录
cd /usr/bin -
配置软连接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
-
导出之前python安装的包的清单
导出当前环境的所有第三方包
pip3 freeze >package.txt -
安装清单
批量下载第三方包
Pip3 install -r package.txt
4. 用户管理
添加用户: useradd 用户名
设置密码: passwd 用户名
删除用户 userdel 用户名
-r
userdel 用户名 只删除用户 不会删除用户的文件
userdel -r 用户名 除了删除用户会把用户的home下的文件夹一起删除 彻底删除
用户存放位置
/etc/passwd
系统用户的id一般 0-499
500以上属于个人用户
密码文件存放位置
/etc/shadown
软连接和硬连接区别
软连接 类似于window下快捷方式 但是连接基于源文件 如果源文件被删除 连接将会失效
硬连接 创建硬连接会重新创建一个文件出来 就算源文件被删除 不会对连接文件产生影响
软链接:
ln -s 源文件地址 连接地址
硬链接:
ln 源文件连接地址
python3 的安装过程总结
- 安装依赖
- 下载Python源码包
- 解压
- 在解压后的目录中配置安装路径
- 在解压后的路径中编译
- 执行编译安装
- 将安装的python和pip执行文件创建软件连接到/usr/bin
卸载:
删除/usr/local/python3
删除/usr/bin 连接文件
再次安装只需要从第三步即可