linux学习笔记

建站
nginx
yum install nginx -y

vim 退出
:wq

————————————————————————————————
linux命令等:

1.创建目录
mkdir %HOME/testFolder

2.切换目录
cd %HOME/testFolder

3.移动目录
mv $HOME/testFolder /var/tmp {testFolder移动到var/tmp}

4.删除目录
rm -rf /var/tmp/testFolder

5.查看文件
ls /etc

6~ 和/各代表什么
~代表个人目录的地址 用root 登录 就在root ;用name登录 就在name
/是根节点

7.把一个文件复制到~位置并命名
cp ~/testFile ~/testNweFile

8.查看文件内容
cat ~/.bash_history

9.过滤出etc/passwd文件中包含 root 的记录
grep ‘root’ etc/passwd

10.从多个文件夹中递归过滤出 linux 的记录 {递归的意思是一般指的改变目录及其子目录和文件 由后往前层层递归}
grep -r ‘linux’ /var/log/

11.管道,cat和grep结合 过滤出/etc目录中名字包含ssh的目录 (不包含子目录)
cat /etc/passwd | grep’root’ ls /etc | grep ‘ssh’

12.对 cloud.tencent.com 发送 4 个 ping 包, 检查与其是否联通
ping -c 4 cloud.tencent.com

13.netstat 命令用于显示各种网络相关信息,如网络连接, 路由表, 接口状态等等
列出所有处于监听状态的tcp端口
netstat -lt
查看所有的端口信息, 包括 PID 和进程名称
netstat -tulpn

14.ps 命令
过滤得到当前系统中的 ssh 进程信息
ps aux | grep ‘ssh’

查看系统版本是什么:lsb_release -a
查看系统是什么位数:getconf LONG_BIT
暂停并且到后台:ctrl+z 继续运行且到前台:fg …
关机命令:1、halt 立刻关机 2、poweroff 立刻关机 3、shutdown -h now 立刻关机(root用户使用) 4、shutdown -h 10 10分钟后自动关机 如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启
1、.tar 用 tar –xvf 解压
2、
.gz 用 gzip -d或者gunzip 解压
3、.tar.gz和.tgz 用 tar –xzf 解压
4、.bz2 用 bzip2 -d或者用bunzip2 解压
5、
.tar.bz2用tar –xjf 解压
6、.Z 用 uncompress 解压
7、
.tar.Z 用tar –xZf 解压
8、.rar 用 unrar e解压
9、
.zip 用 unzip 解压

终端往前删除一个单词:alt+backspace
通配符:*.txt指所有后缀为.txt的文件

硬链接link oldfile newfile
ln oldfile newfile
软链接ln -s …
——————————————————————————————————————
vim
保存命令
按ESC键 跳到命令模式,然后:
:w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑

vi操作:
跳转到哪一行nG n为行数
w向后跳一个单词
b向前跳一个单词
0光标移到行首shift +0光标移到行尾
G光标移动到文件最后一行
x删除当前光标字符
dd删除一行
yy复制当前行,p粘贴当前行
/file1向后查找
?file1向前查找

————————————————————————————————————
数据库以及sql语句
order by (asc)(desc)升序降序排列

SELECT Company FROM Orders
Select DISTINCT Company FROM Orders取唯一不同的值

SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
下面的运算符可在 WHERE 子句中使用:

操作符 描述
= 等于
<> 不等于

大于
< 小于
= 大于等于
<= 小于等于
BETWEEN 在某个范围内
LIKE 搜索某种模式

SELECT * FROM persons WHERE name=‘wang’ 文本值单引号 数值无引号
SELECT * FROM persons WHERE id=43

——————————————————————————————————————
linux2019.5.23
创建一个名为file的文件:touch file
TAB:命令补全(也可以补全参数,目录)
终止当前程序:ctrl + c
暂停当前程序,按下任意键继续:ctrl + s
将当前程序放到后台运行:ctrl + z 。恢复前台命令为fg
删除光标所在位置到行末尾:ctrl + k
向前删除一个单词:alt + backspace
终端向上滚动:shift + pageup

shell通配符:

  1. *匹配0或多个字符
  2. ?匹配任意一个字符
  3. [list]匹配list中的任意单一字符
  4. [^list]匹配list中任意单一字符以外的字符
  5. [c1-c2]匹配c1-c2中任意单一字符如:[0-9][a-z]
  6. {string1,string2,…}匹配string1或string2或更多 其一字符串
  7. {c1…c2}匹配c1-c2中全部字符如{1…10}

通配符*:ls命令可以写成:
ls -l *.txt //在当前目录寻找后缀为txt的文件
创建多个文件时:

touch {1..10}.txt //创建10个txt名字分别为1.txt  2.txt等等

man命令区段:
区段 说明
1 一般命令
2 系统调用
3 库函数,涵盖了C标准函数库
4 特殊文件(通常是/dev中的设备)和驱动程序
5 文件格式和约定
6 游戏和屏保
7 杂项
8 系统管理命令和守护进程
命令如:$ man 1 ls
man解释:
NAME(名称)

该命令或函数的名称,接着是一行简介。

SYNOPSIS(概要)

对于命令,正式的描述它如何运行,以及需要什么样的命令行参数。对于函数,介绍函数所需的参数,以及哪个头文件包含该函数的定义。

DESCRIPTION(说明)

命令或函数功能的文本描述。

EXAMPLES(示例)

常用的一些示例。

SEE ALSO(参见)

相关命令或函数的列表。

也可能存在其它部分内容,但这些部分没有得到跨手册页的标准化。常见的例子包括:OPTIONS(选项),EXIT STATUS(退出状态),ENVIRONMENT(环境),BUGS(程序漏洞),FILES(文件),AUTHOR(作者),REPORTING BUGS(已知漏洞),HISTORY(历史)和 COPYRIGHT(版权)。

通常 man 手册中的内容很多,你可能不太容易找到你想要的结果,不过幸运的是你可以在 man 中使用搜索/<你要搜索的关键字>,查找完毕后你可以使用n键切换到下一个关键字所在处,shift+n为上一个关键字所在处。使用Space(空格键)翻页,Enter(回车键)向下滚动一行,或者使用k,j(vim 编辑器的移动键)进行向前向后滚动一行。按下h键为显示使用帮助(因为 man 使用 less 作为阅读器,实为less工具的帮助),按下q退出。

想要获得更详细的帮助,你还可以使用info命令,不过通常使用man就足够了。如果你知道某个命令的作用,只是想快速查看一些它的某个具体参数的作用,那么你可以使用–help参数,大部分命令都会带有这个参数,如:

$ ls --help

su :切换用户到user 执行时需要输入目标用户的密码
sudu 可以以特权级别运行cmd命令,需要当前用户属于sudo组且需要输入当前用户密码

$ su -l lilei //输入密码后登录lilei用户
退出命令 可以为ctrl+d 或者输入exit

查看用户组:groups shiyanlou
得到结果为:shiyanlou:shiyanlou
冒号之前表示用户,后面表示该用户所属用户组

————————————————————————
数据库端口号
sqlserver默认端口号为:1433

URL:“jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=dbname”

DRIVERNAME:“com.microsoft.jdbc.sqlserver.SQLServerDriver”;

mysql 默认端口号为:3306

URL:jdbc:mysql://localhost:3306/test? user=root&password=&useUnicode=true&characterEncoding=gbk

DRIVERNAME:“com.mysql.jdbc.Driver”;

oracle 默认端口号为:1521

URL:“jdbc:oracle:thin:@localhost :1521:orcl”;

DRIVERNAME:“oracle.jdbc.driver.OracleDriver”;

——————————————————————————————————
关系型数据库 oracle db2 一对1或者1对多
非关系型数据库 mangodb 键值对
、、
常见的关系型数据库:
Oracle、DB2、PostgreSQL、Microsoft SQL Server、Microsoft Access、MySQL
关系型数据库的特点:
安全(因为存储在磁盘中,不会说突然断电数据就没有了)、
容易理解(建立在关系模型上)、
但不节省空间(因为建立在关系模型上,就要遵循某些规则,好比数据中某字段值即使为空仍要分配空间)
、、

常见非关系模型数据库:
列模型:Hbase
键值对模型:redis,MemcacheDB
文档类模型:mongoDB
、、
非关系型数据库的特点:
效率高(因为存储在内存中)、
但不安全(断电丢失数据,但其中redis可以同步数据到磁盘中),现在很多非关系型数据库都开始支持转存到磁盘中。
、、
主键,外键,区别:
主键:能够唯一表示数据表中的每个记录的字段或者字段的组合就称为主键。一个主键是唯一识别一个表的每一行记录,但这只是其作用的一疗分,主键的主要作用是将记录和存放在其他表中的数据进行关联,在这一点上,主键是不同表中各记录间的简单指针,主键约整就是确定表中的每一条记录,主键不能是空值,唯一约束是用于指定一个或多个列的组合值具有唯一性,以防止在列中输入重复的值,所以,主键的值对用户而言是没有什么意义,并且和它赋予的值也没有什么特别联系。
外键:
若有两个表A,B,C是A的主键,而B中也有C字段,则C就是表B的外键,外键约束主要用来维护两个表之间数据的一致性。
A为基本表,B为信息表。
在数据库中,常常不只是一个表,这些表之间也不是相互独立的,不同的表之间需要建立一种关系,才能将它们的数据相互沟通,而在这个沟通过程中,就需要表中有一个字段作为标志,不同的记录对应的字段取值不能相同,也不能是空白的,通过这个字段中不同的值可以区别各条记录,就像我们区别不同的人,每个人都有名字,但它却不能作为主键,因为人名很容易出现重复,而身份证号是每个人都不同的,所以可以根据它来区别不同的人,数据库的表中作为主键的段段就要像人的身份证号一样,必须是每个记录的值都不同,这才能根据主键的值来确定不同的记录。
关系:外键一定是另外某个表的主键。
非关系型数据库的优势:

1性能
NOSQL是基于键值对的,可以想象成表中的主键和值的对应关系,而且不需要经过SQL层的解析,所以性能非常高。

2可扩展性
同样也是因为基于键值对,数据之间没有耦合性,所以非常容易水平扩展。
关系型数据库的优势:

3复杂查询
可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询。

4事务支持
使得对于安全性能很高的数据访问要求得以实现。

5对于这两类数据库,对方的优势就是自己的弱势,反之亦然。
——————————————————————————————

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值