计算机系统
硬件
- 运算器
- 控制器
- 储存器
- 输入设备
- 输出设备
软件
系统软件
操作系统(Windows,Linux,Macos等)
应用软件
Linux命令
- 查看是什么shell版本: ps
- 清屏: clear
- 创建新用户 :adduser helloword
- 设置新用户密码: passwd helloword
- 查看系统: uname
- 查看主机名: hostname
- 切换用户(switch user): su 用户名
- 查看历史命令: history
- 调用某条历史命令: ! (命令编号)
- 查看当前工作路径(print working directory): pwd
- 切换上一级工作路径: cd ..
- 查看当前目录下有哪些文件和文件夹(lists): ls
- 查看所有文件,包括隐藏文件: li -a
- 用长格式显示: li -l 或者用它的别名 ll
- 建立空文件(以.开头的文件为隐藏文件): touch hello.txt
- 以管理员身份创建文件: sudo touch hello.txt
- rwx = read/write/execute
- 查看文件内容: cat
- 一屏一屏看输出结果:(命令)| less(more)
- 查看某个命令的信息:man 或者 –help 或者 info
- 删除文件:rm
- 强行删除文件:rm -f
- 创建文件夹:mkdir
- 删除文件夹:rmdir
- 回声: echo
- 将内容回声到某个文件中:echo hello,word! > hello.txt
- 拷贝文件: cp hello.txt (文件夹)/(新名字)
- 剪切文件(或者给文件改名字):mv shit.txt goodbye.txt(改名操作)
- 搜索文件中的字符串(一般用法比如): cat goodbye.txt | grep script
- 查看文件前面部分,比如查看文件前五行: head 5 hello.txt
- 查看文件后面部分:tail
- 给文件内容排序:sort
- 比较两个文件的异同: diff goodbye.txt hello.txt
- 计算文件中有多少单词: wc(-w,-l,-c,只数单词,行数,字符数)
- 联网下载东西: wget
- 查看文件类型: file
- 去掉文件内容重复部分:uniq
- 压缩/解压缩文件:gzip/gunzip
归档文件(together archive):
归档文件 tar -cvf test.tar .txt .html
归档文件夹 tar -cvf hello.tar abc/*
解归档 tar -xvf test.tar
- 查找python位置:which python
- 查找所有含有python的路径: whereis python
- 退出: exit()
- 查看时间,日历:date cal
- 录制脚本:script (跟文件名)
- 查看进程:top
- 查看某个进程:ps -aux | grep (进程名字)
- 查看已经下载的进程(以yum举例):yum list installed | grep (进程名)
停止进程:
systemctl stop (进程名)
start为启动进程
status查看进程状态
restart重启进程
- 给防火墙开洞(开放80端口):firewall-cmd –zone=public –add-port=80/tcp –permanent
- 重启防火墙:firewall-cmd –reload
- 查看防火墙状态:firewall-cmd –state
搜索文件内容:
grep “function” *.html -n -R
-n表示显示行号,-R表示递归找
crontab -e:
编辑cron表达式
crontab -l:
查看
vi
- set nu:调出vi中行数
- syntax on:调出vi中高亮语法
- set ts=4:设置智标建为四个空格
- 双击dd:删除此行代码,
- u: 恢复
- yy:拷贝一整行代码
- p:粘贴
- wq:保存退出
- G:去到最后一行,或者去第50行,50G
- gg: 回到首行
修改文件权限:
chmod u+x (文件名)
chmod 755 (文件名)
chmod 777 (文件名)
chmod 444 (文件名)
chmod 644 (文件名)
转码:#-- coding: utf-8 --
- 重启网页服务器:nginx -s reload
替换(首先进入默行模式):
:1,$s/正则表达式/jlsfja/gice
g:全局
i:忽略大小写
c:确认
e:显示错误信息
MySQL
安装mysql,输入:
yum install mariadb-server mariadb
是否成功安装:
yum list installed | grep mariadb
启动服务器:
systemctl start mariadb
进入mysql:
mysql -u root
设置开机自启mysql:
systemctl enable mariadb
关闭开机自启:
systemctl disable mariadb
创建符号链接(硬链接,删掉hello.py,hehe依然会有内容,相当于建立备份,但不会占用内存):
len hello.py hehe(hello.py为文件名,heh链接)
软链接(也叫符号链接,hehe相当于hello.py的快捷方式):
len -s hello.py hehe
awk:
ps -aux | grep mysql | awk ‘{print}’ | xargs kill -9 2>error.log
xargs表示传递参数,这里相当于传递了前面的进程号
select * from limit 5:
限制查询条数,只能查询前五条
select * from limit 5 offset 6:
从第五条开始(但不包含第五条),查找后六条
select * from student order by(-id):
从id最大的开始查找
desc student:
查看表结构
将连个表通过主键外键连接:
foreign key(g_id) references grade(id)
key和grade是两个表
select * from student s join grade g on g.id=s.g_id where g.g_name=’java’;
将两个表关联起来
找出每个班级中有多少学生:
mysql> select count(*) as '学生个数', g.g_name as '班级名称' from student s join
grade g on s.g_id=g.id group by(g.id);
+----------+----------+
| 学生个数 | 班级名称 |
+----------+----------+
| 2 | python |
| 2 | java |
| 2 | php |
| 2 | c |
| 1 | html5 |
+----------+----------+
删除某个字段(列):
alter table student drop s_gardes
找出最大值
select max(g_grades) from student
找出最小值:
select min(g_grades) from student
找出平均值:
select avg(g_grades) from student
网络相关命令
[学习网站](http://linuxtools-rst.readthedocs.io/zh_CN/latest/index.html
)
1. 查询网络配置:
ifconfig
ip
检查网络链接性:
ping
查看启动了哪些服务(名字,IP地址,进程号):
netstat -nap
- 重定项:
远程链接别人:
ssh 用户名@地址
上传(下载)文件
sftp
源代码构建安装:
make && make install
启动redis服务:
redis-server myredis.conf > redis.log &
&是表示让服务在后台运行,重定向在redis.log
切回前台:
fg %1
在Linux中添加Python3
- 下载python3.6的源代码
- 将源代码通过xshell上传
- 博客