linux自带2.x,有时候需要2.x执行一些工具,开发的时候又想用p3,就需要同时装python2和python3
依次执行以下命令
ssh xxx@xx.xx.xx.xx #进入linux服务器
su #输入密码,如果不知道管理员账户但拥有sudo权限,下面所有命令前缀都跟sudo
mkdir /etc/python3
cd /etc/python3
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0a1.tar.xz
tar xvf Python-3.6.0a1.tar.xz
cd Python-3.6.0a1
./configure
make && make install
安装成功,验证:
python3 --version
>>python 3.6.0a1
python --version
>>python 2.7.5
mkdir /opt/PythonProject/test
cd /opt/PythonProject/test
python -m venv venv
至此,在test创建了一个venv的目录,保存python环境
激活虚拟环境
source env/bin/acticate
退出虚拟环境
source env/bin/acticate
https://blog.csdn.net/qq_31628559/article/details/124467951
Command “/opt/PythonProject/python_test/venv/bin/python3 -u -c “import setuptools, tokenize;file=‘/tmp/pip-build-ybmb9bk6/llvmlite/setup.py’;f=getattr(tokenize, ‘open’, open)(file);code=f.read().replace(‘\r\n’, ‘\n’);f.close();exec(compile(code, file, ‘exec’))” install --record /tmp/pip-8w41ni_o-record/install-record.txt --single-version-externally-managed --compile --install-headers /opt/PythonProject/python_test/venv/include/site/python3.6/llvmlite” failed with error code 1 in /tmp/pip-build-ybmb9bk6/llvmlite/

可以尝试使用pip install --upgrade pip重新安装包

debug 模式卡住
https://www.jianshu.com/p/c9144aeb0f38
网站seo相关工具
今天给大家介绍linux下vim编辑器的全局替换功能
全局替换
创建一个文件

vim 打开

3. 写入一些内容

4. 现在要求吧hello 替换为hi
输入 :%s/hello/hi/g 其中g代表全局替换

得到结果

开始我有一个文件

2. 现在我想向文件的最后添加一行数据,但是使用vim编辑器打开太麻烦了,下面通过一行命令就可以向文件中添加一行数据

可以看到现在成功添加了一行数据

“>”会覆盖目标的原有内容。当文件存在时会先删除原文件,再重新创建文件,然后把内容写入该文件;否则直接创建文件。
”>>“会在目标原有内容后追加内容。当文件存在时直接在文件末尾进行内容追加,不会删除原文件;否则直接创建文件。
原文链接:https://www.jianshu.com/p/81fa507f15ee
总的来说 > 是覆盖写,>>是追加写
默认情况下,mysql是没有开启远程连接的
mysql -u root -p
# 输入数据库root用户密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的root密码' WITH GRANT OPTION;
# %:表示从任何主机连接到mysql服务器
FLUSH PRIVILEGES;
ps aux
显示其他用户启动的进程(a)
查看系统中属于自己的进程(x)
启动这个进程的用户和它启动的时间(u)
ps -m [pid]
显示进程下的线程
协程

在大多数情况下计算机加锁都是比较耗费性能的操作
统计项目所有成员的代码行数
git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -; done
gradle是用于构建项目的,gradle侧重于大项目的构建
gradle构建项目更快
spring默认的构建工具已转向gradle
市面上的公司开始使用gradle
gradle侧重项目的构建,功能更全面,而maven只是侧重于jar包管理
cente os 通过yum安装redis
yum install redis
.2. 连接redis
如果报下面的错证明redis-server没有成功启动
Could not connect to Redis at 127.0.0.1:6379: Connection refused
注释掉bind 127.0.0.1,这种方式意味所有人都可以访问这台机器的redis实例,这是相当危险的,线上项目应该避免这样做
同时设置守护进程方式启动,在配置文件中修改
daemonize yes
redis-server /etc/redis.conf
ps -ef | grep redis

6. 连接redis进行测试
7.
如果redis没有指定bind address ,也没有指定密码,那么redis仅允许本机去访问,处于保护模式
可以参考以下链接
https://blog.csdn.net/m0_58746619/article/details/125865904
停止redis实例
修改配置文件
启动redis实例
编写如下测试代码
package controller;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = HelloApplication.class)
public class RedisTest {
@Autowired
private RedisTemplate redisTemplate;
@Test
public void setTest(){
redisTemplate.boundValueOps("name").set("zhangsan1");
}
@Test
public void getTest(){
Object name = redisTemplate.boundValueOps("name").get();
System.out.println(name);
}
}
修改配置文件
spring:
profiles: prod
redis:
host: 175.24.184.55
password: ********
nginx 默认监听80端口, 不带端口的方式默认就是访问80端口
nginx安装
yum install nginx
2. centos nginx 启动
systemctl start nginx
3. nginx位置
whereis nginx
3. nginx位置
whereis nginx

我这个nginx不是用yum安装的,和使用yum安装的目录结构不同
db.ticket.update(
{
'form_data.assignment': 'XXX@XXX.cn'
},
{
$set: {'form_data.assignment': 'XXX1@XXX.cn'}
},
{
multi: true
}
)
不加此选项默认更新一条数据
{
multi: true
}
查找不存在某个字段的数据
db.ticket.find({
'create_time': {'$exists': false}
})
.projection({})
.sort({_id:-1})
.limit(100)