Linux常用用命令:
目录结构
- /bin - 基本命令的二进制文件。
- /boot - 引导加载程序的静态文件。
- /dev - 设备文件。
- /etc - 配置文件。
- /home - 普通用户主目录的父目录。
- /lib - 共享库文件。
- /lib64 - 共享64位库文件。
- /lost+found - 存放未链接文件。
- /media - 自动识别设备的挂载目录。
- /mnt - 临时挂载文件系统的挂载点。
- /opt - 可选插件软件包安装位置。
- /proc - 内核和进程信息。
- /root - 超级管理员用户主目录。
- /run - 存放系统运行时需要的东西。
- /sbin - 超级用户的二进制文件。
- /sys - 设备的伪文件系统。
- /tmp - 临时文件夹。
- /usr - 用户应用目录。
- /var - 变量数据目录。
命令格式
命令 [命令的参数] [命令作用用的对象]
- Tab - 命令补全 / 路路径补全
command not found - 命令没有找到(敲了了无无效的命令)
终端常用
- w / who / whoami / last - 查看登录用用户情况
- adduser / passwd / userdel - 创建用用户修改密码/删除用用户
- date / cal - 查看日期/日历
- write / wall / mesg - 发送消息
- clear - 清除屏幕
- logout / exit - 退出登录
- man / info / --help - 查看帮助
- history - 历史命令 -
!命名编号 - 再次执行历史命令
c - 清除历史记录 - reboot - 重启系统 - init 6
- shutdown - 关机 - init 0
例如:shutdown now - su - switch user - 切换用用户
命令别名alias
alias 设置别名
alias ll='ls -l'
alias frm='rm -rf'unalias 清除别名设置
unalias frm
frm sohu.html
输出重定向
> - 输出重定向
>> - 追加输出重定向
2> - 错误输出重定向
2>> - 错误追加输出重定向
终端快捷键
Ctrl+D - 结束输入
Ctrl+C - 中断一个正在执行的命令
Ctrl+W - 删除命令中的一一块
Ctrl+A - 光标到行首
Ctrl+E - 光标到行尾
目录操作
- pwd - print working directory - 打印工工作目目录
- cd - change directory - 改变目录 - 相对路径和绝对路径
- ls - list directory contents - 列出目录下的内容
-l - 长格式查看
-a - 查看所有文件 - 在Linux系统中以点开头的文件和文件夹是隐
藏的
-R - 递归式的查看 - 遇到文件夹要递归的列列出文件夹下的内容 - mkdir - make directory - 创建文件夹
-p - 如果需要就创建父文件夹 - rm - remove - 删除
-f - 强制删除
-r - 递归删除 - 删文文件夹需要指定该参数 - rmdir - remove empty directory - 删除空文文件夹
Linux文件操作:
创建文件
touch - 创建空文文件或者修改已有文文件的最后访问时间
打印/显示/查看
- cat - concatenate - 连接多个文文件(查看文文件的内容)
cat /proc/cpuinfo
打印显示
cat -n /proc/cpuinfo
打印显示带行号 - wc - word count - 查看文件行数、单词数、字符数
-l - 查看行行数
-w - 查看单词数
-c - 查看字符数 - head / tail - 查看文文件的开头/结尾部分
- more / less - 分⻚看文件
例子:cat -n taobao.html | more - | - 管道 - 将多个进程连接起来(把前一一个命令的输出作为下一一个命令的
输入入)
排序/去重/比较
- sort - 文文件排序
-r - 降序(默认是从小小到大大 - 升序) - uniq - unique - 文文件去重(相邻相同的内容会被过滤掉)
- diff - different - 比比较文文件的差别
移动/复制/重命名
- cp - copy - 拷⻉文件
- mv - move - 移动文件(同一一个路径下移动相当于是重命名操作)
文件下载
wget - 通过网网络获取文文件
-O - 重新命名下载的文文件
- 例例如:wget https://www.python.org/ftp/python/3.7.3/
Python-3.7.3.tar.xz - 例例如:wget https://www.python.org/ftp/python/3.7.3/
Python-3.7.3.tgz
文件 压缩/解压 打包/解包
- gzip / gunzip - 文文件压缩/解压缩(gz/tgz)
例如:gunzip Python-3.7.3.tgz - xz - 文文件压缩/解压缩(xz)
-z - 压缩
-d - 解压缩
例如:xz -d Python-3.7.3.xz - tar - archive - 文文件归档/解归档
-xvf - 解归档(将一一个文文件拆成多个文文件)
例例如:tar -xvf Python-3.7.3.tar
-cvf - 创建归档文文件(将多个文文件合并成一一个文文件)
权限管理chmod / chown
- chmod给文件添加执行行权限
chmod u+x,g+x,o+x 文件名
u - user - 当前用用户
g - group - 同组用用户
o - other - 其他用用户 - ls -l 文文件名
在⻓格式查看时可以看到文文件的权限字符
r - read - 读权限
w - write - 写权限
x - execute - 执行行行权限 - chown - 改变文件所有者
chown 用户 文件
链接
- 硬链接可以认为是一个指向文件数据的指针,只有当文件的链接数为0时,文件所对应的存储空间才有可能被其他文件覆盖。
- 软链接(相当于Windows系统下的快捷方方式)
ln -s /usr/local/python37/bin/python3 /usr/bin/python3
查找命令:
grep - 搜索字符串(支持正则表达式)
find - 搜索文件
-name - 根据名字搜索 - find / -name "*.html"
-size - 根据大小搜索 - -10M / +10M
-type - 根据类型搜索 - d / f / l / s
-atime - 最后访问时间
-mtime - 最后修改时间 - find . -mtime 0
-ctime - 创建时间
网络相关命令:
- ssh - 安全远程连接
例如:ssh root@39.104.170.48 - scp - 安全文文件拷贝
例如:scp -r /root/code root@39.104.170.48:/root/code2 - sftp - 安全文文件传输(file transfer protocol) - 例例如:
sftp root@39.104.170.48
put - 上传
get - 下载
bye - 退出
help - 查看帮助 - ping - 检查网网络可达性 - ICMP - Internet Control
- ifconfig / ip
- netstat
netstat -nap | grep 进程或者端口口
~ p - process - 查看进程信息(进程编号和进程名字)
~ kill 进程号启动停止止重启服务:
服务相关
service nginx start //启动nginx
systemctl start nginx//启动nginx
systemctl stop nginx//停止nginx
systemctl restart nginx//重启nginx
systemctl status nginx//查看nginx
systemctl enable nginx//设置开机启动nginx
systemctl disable nginx//取消开机启动nginx
进程操作相关命令:
- & - 把命令放到后台运行行行
- Ctrl+z - 把前台命令停下来放到后台
- ps - processes - 例例如:ps -ef | grep redis
- kill - 结束进程
- jobs - 查看后台运行行行或停止止的进程
~ fg - foreground - 将后台命令置于前台
~ bg - background - 让命令在后台运行行行 - top - 相当于是Windows下的任务管理理器器 - 可以查看进程占用用CPU、内存等资源的情况
定时任务:
~ at - 在将来的某个时间执行行行某个任务
~ crontab - 克⻰龙表(计划任务表)- 在将来的时间周期性执行行行任务
-crontab -e - 编辑克⻰龙表
*****
分/时/日/月/星期几
0-5
0/2
1,11 6-9
5
Linux系统下的软件安装:
redhat package manager
yellowdog updater modified
包管理理工工具 - yum / rpm / apt
- yum search nginx - 从默认的仓库搜索有没有指定的软件
- yum install -y nginx - 安装软件
- yum remove -y nginx - 卸载软件
- yum info nginx - 查看软件相关信息
- yum list installed - 查看已经安装的软件
- yum update nginx - 更更新软件2. 源代码构建安装 - gcc / make
其他命令:
~ df - 查看磁盘空间使用用状况
~ fdisk - 操作文文件分区表
~ sar - 查看系统活动信息
~ free - 查看系统内存使用用状况
~ pmap - 查看进程使用用内存情况
~ iostat - 报告I/O统计信息Python中的排序:
源代码构建安装Python3.7
下载
wget https://www.python.org/ftp/python/3.7.3/
Python-3.7.3.tar.xz
解压缩和解归档
xz -d Python-3.7.3.tar.xz
tar -xvf Python-3.7.3.tar
补充依赖库
yum -y install zlib-devel bzip2-devel openssl-devel
ncurses-devel sqlite-devel readline-devel tk-devel
gdbm-devel db4-devel libpcap-devel xz-devel libffi-
devel
进入入Python源代码目目录安装前准备工工作
cd Python-3.7.3
./configure --prefix=/usr/local/python37 --enable-
optimizations
构建和安装
make && make install
注册PATH环境变量
cd ~
vim .bash_profile
PATH=...:/usr/local/python37/bin
激活环境变量
source .bash_profile
测试安装是否成功
python3 --version
安装和使用用Git
Git / Mercury
~ git --version
init - 将文文件夹初始化为Git仓库
add <file> - 将工工作区的指定文文件放入入暂存区
status - 查看工工作区和暂存区的状态
commit -m '提交的原因' - 将暂存区的内容添加到仓库
log - 查看提交日日志(历史提交记录)
checkout -- <file> - 将暂存区的文文件恢复到工工作区
reset --hard HEAD^ - 回到上一一个版本
reset --hard <ID> - 回到指定的版本
reflog - 查看历史和未来版本
国内的代码托管平台:码云gitee / coding
https://gitee.com
https://coding.net
~ git clone <url> - 克隆隆代码
~ git push - 将本地代码推到服务器器(将工工作成果同步到服务器器)
~ git pull - 将服务器器更更新同步到本地
安装mysql
安装和运行行行MySQL数据库(MariaDB)
~ yum install mariadb mariadb-server - 安装
~ systemctl start mariadb - 启动
~ systemctl status mariadb - 查看服务状态
~ netstat -nap | grep 3306 - 检查3306端口口是否绑定到MySQL服务
~ ps -ef | grep mysql - 检查是否有名为mysql的进程
使用用客户端工工具连接MySQL(MariaDB)
~ mysql -u root -p
> use mysql;
> update user set password=password('123456') where
user='root';
> flush privileges;
> quit