conda
A system-level, binary package and environment manager
Anaconda和Miniconda都是Continuum Analytics的开源项目,用于管理Python的环境和包
Anaconda是一个包含了conda、Python和超过150个科学包及其依赖项的科学Python发行版。
Miniconda更加轻量级。它只包含了Python和Conda,但并没有预装其他的库。
Conda is written entirely in Python
Package, dependency and environment management for any language---Python, R, Ruby, Lua, Scala, Java, JavaScript, C/ C++, FORTRAN
conda常见命令
conda --version #查看conda版本,验证是否安装 二进制
conda config --show channels #查看源地址: Modify configuration values in .condarc channel
conda info #Conda创建的新环境以及过往安装的模块缓存都存储在用户目录
##环境
conda env list // 显示所有的虚拟环境
conda create -n xxx python=3.7 // 创建Python3.7的名为xxx虚拟环境
conda activate/deactivate // 激活与取消激活
conda remove -n xxx --all // 删除虚拟环境
##包
conda list
conda install //两者都可以安装python包
conda clean -p //来删除一些没用的包
pip
wheel或源码
pip+virtualenv
virtualenv能实现的只是不同环境下的python包互相独立,但是不同环境下用的python是同一个版本
其他语言
Sonatype Nexus,是Sonatype公司的一个产品,叫Nexus,是Maven的私服
Nexus Repository 是搭建maven的镜像的工具之一,在全球范围内使用挺广的
Apache Archiva Repository Apache Archiva 是一个开源的软件仓库管理器,可用于存储和分发软件包、库和依赖项
Archiva 还支持 Maven、Gradle、Ivy 等多种构建工具,并具有灵活的配置选项,
JFrog Artifactory 是一个可扩展的通用二进制存储库管理器,可在整个应用程序开发和交付过程中自动管理你的工件和依赖项
C++ 二进制存储管理工具 jfrog artifactory是一款二进制存储管理工具
使用conda打造C++包服务器
linux命令行
ps
-e 显示所有进程
-u:显示与指定用户相关的进程信息。
-f 全格式
x 显示没有控制终端的进程
ps -ef: 显示系统中所有进程的列表,包括其他用户的进程。
ps -aux: 显示详细的进程信息,包括CPU和内存使用情况等。
-A, -e all processes
-a all with tty, except session leaders
a all with tty, including other users
tty进程的主要功能是实现用户与系统进行交互,它可以接受用户输入的信息,并将处理结果返回给用户
用户进程是指由用户启动并运行的进程,通常是各种用户应用程序
父进程和子进程 工作组和会话机制依
进程组 (process group) 领导进程 (process group leader) 导进程的PID成为进程组的ID (process group ID, PGID)
shell支持工作控制(job control)的前提下,多个进程组还可以构成一个会话 (session) bash(Bourne-Again shell)支持工作控制,而sh(Bourne shell)并不支持。
每个会话可以连接一个控制终端(control terminal)-会话主要是针对一个终端建立的-
打开多个终端窗口时,实际上就创建了多个终端会话。每个会话都会有自己的前台工作和后台工作 session session leaders
jobs
建立与控制终端连接的会话首进程被称为控制进程 (controlling process)
终端在关闭时会发送SIGHUP信号给session leader,此处就是bash进程,bash收到后向session内的所有进程发送SIGHUP然后退出
nohup 注册了SIGHUP的一个处理函数,忽略这个信号,然后去执行实际的命令
pkill和killall一样都是通过名字来杀死进程 原理都是通过查找/proc这个内存文件系统
参考
Linux下安装conda https://www.cnblogs.com/ytwang/p/14580513.html
https://github.com/conda/conda
https://docs.conda.io/projects/conda/en/stable/
标签:常用,Python,用户,命令,session,conda,进程,Conda
From: https://www.cnblogs.com/ytwang/p/17631964.html