Commands Summary
pip常用命令
1. 安装pip
- 安装pip
方式一:官网下载用Linux命令解压安装
- 进入https://pypi.python.org/pypi/pip,下载 .tar.gz压缩包
- Linux安装pip
tar -xzvf pip-1.5.4.tar.gz 解压
cd pip-1.5.4 进入解压文件
python setup.py install 安装
方式二:下载并安装Python,会自动安装pip
- 升级pip的命令
pip install --upgrade pip
2. 使用pip
- 使用pip安装包的命令
pip install 包名
- pip查看是否已安装
pip show --files 安装包名
显示:
Name:SomePackage # 包名
Version:1.0 # 版本号
Location:/my/env/lib/pythonx.x/site-packages # 安装位置
Files: # 包含文件等等
../somepackage/__init__.py
[...]
- pip检查哪些包需要更新
pip list --outdated
- pip升级包
pip install --upgrade 包名
- pip卸载包
pip uninstall 包名
3. pip参数解释
# pip --help
Usage:
pip<command>[options]
Commands:
install 安装包.
uninstall 卸载包.
freeze 按着一定格式输出已安装包列表
list 列出已安装包.
show 显示包详细信息.
search 搜索包,类似yum里的search.
wheel Buildwheelsfromyourrequirements.
zip 不推荐.Zipindividualpackages.
unzip 不推荐.Unzipindividualpackages.
bundle 不推荐.Createpybundles.
help 当前帮助.
GeneralOptions:
-h,--help 显示帮助.
-v,--verbose 更多的输出,最多可以使用3次
-V,--version 现实版本信息然后退出.
-q,--quiet 最少的输出.
--log-file<path> 覆盖的方式记录verbose错误日志,默认文件:/root/.pip/pip.log
--log<path> 不覆盖记录verbose输出的日志.
--proxy<proxy> Specifyaproxyintheform[user:passwd@]proxy.server:port.
--timeout<sec> 连接超时时间(默认15秒).
--exists-action<action> Defaultactionwhenapathalreadyexists:(s)witch,(i)gnore,(w)ipe,(b)ackup.
--cert<path> 证书.
Anaconda常用命令
1. 生成配置文件并查看相关配置
conda config #生成配置文件.condarc
键盘键入Windows+R,输入%HOMEPATH%,可找到配置文件所在目录
conda config --show # 查看所有的配置选项
conda config --show channels #显示配置文件中的下载源
2. 添加镜像源
# 添加清华镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
# 添加pytorch镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
# for legacy win-64
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/peterjc123/
# 从 channel 中安装包时显示 channel 的 url, 方便查看包的安装来源
conda config --set show_channel_urls yes
3. 删除镜像源
conda config --remove channels 源url
4. 虚拟环境相关操作
# 查看虚拟环境列表
conda env list
# 创建新的虚拟环境
conda create --name envname python=3.10
# 注意1:
修改创建虚拟环境的默认位置(默认是在C盘的某个目录下,可通过conda config --show envs_dirs查看,第一个为默认位置)
首先:
在配置文件.condarc最后加入:
envs_dirs:
- 希望改为的绝对路径(我的是Anaconda的安装目录下的envs目录:D:\FileApp\DevelopApp\Anaconda\envs)
或者直接在命令行敲命令:conda config --add envs_dirs 希望改为的绝对路径
然后:
因为在安装Anaconda时有可能是为此电脑多有用户可用,因此Anaconda的安装目录的权限默认设置为只读不可修改,而创建虚拟环境 则是在该Anaconda安装目录下的envs目录下创建,若权限为只读的话则无法创建成功,而是创建到默认的C盘目录下,解决办法是修改Anaconda安装目录下的envs文件夹的权限,取消只读并是user获取所有修改权限,操作:点击envs文件夹->右击属性->常规中取消勾选“只读”->安全->User中将权限全都勾上。
# 注意2:
若在创建虚拟环境时指定Python版本,务必要将新创建的虚拟环境中Python配置文件中的Scripts目录添加到环境变量PATH中
# 激活并进入新环境
conda activate envname
# 关闭虚拟环境
conda deactivate
# 删除虚拟环境
conda remove -n envname --all
5. 安装pytorch
- 安装cpu版本的PyTorch
在配置好pytorch的清华源之后可以在conda prompt中切换为指定的虚拟环境(该环境已配置好Python包),在该虚拟环境下执行以下命令:
conda install pytorch torchvision torchaudio cpuonly
安装pytorch2.0(CPU版本)的命令:
pip3 install numpy --pre torch torchvision torchaudio --force-reinstall --index-url https://download.pytorch.org/whl/nightly/cpu
- 安装GPU环境的PyTorch2.0以上版本:
前提是电脑已经安装了对应cuda驱动,下面命令会自动根据你的cuda驱动安装对应的Python依赖包
# 先设置清华源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 再安装指定版本的PyTorch
pip3 install torch==2.0.1 torchvision torchaudio
6. 在jupyter中利用虚拟环境创建python文件
创建好虚拟环境,如何在jupyter中利用该虚拟环境创建python文件:
# 首先在命令行激活该虚拟环境,并下载ipykernel包
pip install ipykernel
# 接着将虚拟环境写入Jupyter的kernel中
python -m ipykernel install --name {你的虚拟环境名字,如qq} --display-name {你想显示的名称}
刷新即可大功告成,可以在Jupyter中利用该环境美美编程了
Git操作命令
1. 安装Git后的初始操作
给电脑中的Git绑定名字和邮箱:
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
可通过以下命令查看是否安装成功:
git config user.name
git config user.email
查看Git全局配置信息的命令:
git config --global -l
2. Git相关操作
git操作命令行参考:https://backlog.com/git-tutorial/cn/reference/
1)最基本的三步操作
# 1. 仓库初始化
将目前目录初始化为Git能够管理的仓库,在当前目录下右键选择Git Bash Here,在跳出来的命令框输入:
git init
即可将当前目录初始化为仓库
# 2. 往仓库添加文件必要的两个步骤,按顺序输入命令
1)首先将文件添加到仓库的暂存区,该命令可以执行多次,切每次命令可添加多个文件
命令:
git add 文件名1 文件名2
2)把暂存区的所有内容提交到当前的分支,并告诉仓库你做了什么(通过附加信息说明)
命令:
git commit -m "解释你提交文件的信息"
参数-m是-- message的缩写
# 3. 向远程仓库提交项目
如果是初始创建的本地仓库,需要先建立本地仓库和远程仓库的连接(远程仓库已经创建的前提下),连接远程仓库的命令:
git remote add <repositoryname一般写origin> <创建的远程仓库链接>
建立连接之后将本地仓库push到远程仓库的命令:
git push <repositoryname> <branchname>
如果远端仓库是初次建立的话,远端仓库是没有分支的,因此初次push的时候需要加入--set-upstream参数来为远程仓库建立同名分支,即为以下命令:
git push --set-upstream <repositoryname> <branchname>
2)查看status、diff、log、checkout等
- status
可通过下面命令查看仓库的当前状态,方便进行决策:
git status
- diff
假设通过上面的状态命令得知readme.md文件修改了,则可以通过下面命令查看具体修改情况:
git diff readme.md
- log
在Git中,用HEAD指向当前版本(查看日志信息可发现),上一个版本就是
HEAD^
,上上一个版本就是HEAD^^
,当然往上100个版本写100个^
比较容易数不过来,所以写成HEAD~100
。
查看以前的提交日志:
git log
显示标签资料的历史记录(比较详细):
git log --decorate
显示精简的日志信息(比较简略,只有commit id和对应注解):
git log --pretty=oneline
- checkout
加入你修改了readme.md文件的内容,保存退出后想撤销刚才的修改,可以通过下面命令实现:
git checkout -- <filename>
注意:一定要加上--,并且--和需要撤销修改的文件名之间有空格,别忘了,如果不加--,那就是切换分支的操作了,在第5)条会说明;
checkout操作就是一键还原操作,即使你刚才把readme.md文件删除,然后通过git checkout readme.md命令,也可以把误删的文件恢复
3) 与远端仓库的交互
-
pull:执行pull,远程仓库的内容就会合并到本地。但是,有时只是想确认本地数据库的内容而不想合并。这种情况下,就需要使用fetch。
-
fetch:执行fetch可以取得远程数据库的最新历史记录。取得的提交会导入到没有名字的分支,这个分支可以从名为FETCH_HEAD的退出。例如,在本地数据库和远程数据库的origin,如果在从B进行提交的状态下执行fetch,就会形成如下图所示的历史记录。
-
push:执行push,会将本地仓库的修改推送到远程仓库,并与远程仓库进行合并
-
相关命令
初始创建的本地仓库需要先建立本地仓库和远程仓库的连接(远程仓库已经创建的前提下),连接远程仓库的命令:
git remote add <repositoryname一般写origin> <创建的远程仓库链接>
查看本地仓库已绑定的远端仓库列表用下面命令(参数-v可选,用来显示远端仓库的详细信息):
git remote -v
删除本地仓库已绑定的某个远端仓库:
git remote rm <repositoryname>
将本地仓库push到远程仓库的命令(已建立连接的情况下):
git push <repositoryname> <branchname>
拉取远端仓库与本地仓库合并的命令(已建立连接的情况下):
git pull
4) 标签操作
- 什么是标签?
标签是为了更方便地参考提交(commit)而给它标上易懂的名称,也即对每次的提交(commit)设置一种易懂的名称。tag就是一个让人容易记住的有意义的名字,它跟某个commit绑在一起。
- 标签相关命令
创建标签:
默认创建的标签是和最新commit绑定在一块
创建标签(轻标签):
git tag <tagname>
创建注解标签:
git tag -a <tagname> -m "注解内容"
如果想要对以往的某次commit打上标签,则需要找到那次commit对应的commit id,用下面命令打标签:
git tag <tagname> <commit id>
删除标签
删除标签:
git tag -d <tagname>
查看标签列表:
查看标签列表的命令(注意:标签不是按时间顺序列出,而是按字母排序的):
git tag
查看标签列表并同时显示注解信息(添加参数-n):
git tag -n
根据标签名查看该标签的详细信息:
git show <tagname>
5)操作分支的命令
创建分支:
git branch <branchname>
删除分支(在branch后面指定-d参数就是删除分支):
git branch -d <branchname>
查看分支有哪些(带星号的表示当前所在branch):
git branch
切换分支(假设切换到分支issue1):
git checkout issue1
创建并切换分支(通过添加参数-b来执行):
git checkout -b <branch>
合并分支的操作(一般是将其他分支合并到主分支master中),例如在分支issue1中进行了修改,现在需要将issue1分支合并到主分支master中,合并操作如下:
首先要切换到master分支上:
git checkout master
然后再把issue1分支导入到master分支上:
git merge issue1
6) 版本回退reset
假设当前版本(也就是HEAD指向的版本)为version1,上一个版本为version2(HEAD),上上版本为version3(HEAD^),则:
进行版本回退的命令:
git reset --hard HEAD^
这样你的版本就回退到version2了
如果你还想再回到version1,那需要再找到version1那次提交对应的commit id(随便设为290ab4),则还是用reset命令进行回退:
git reset --hard 290ab4
如果你找不到version1对应commit的那次id怎么办,不慌,可以通过以下命令进行查看:
git reflog
这个命令会记录以往的每次命令并显示出来
Nodejs安装操作
1. 安装注意事项
- 将安装路径改到D盘的开发文件夹内
- 除了修改安装路径,其他一路点击next,保持默认设置,直至安装完成
- 安装完成后查看安装是否成功?
# 打开cmd,输入node -v可查看Nodejs的版本
# 包管理器npm随着Nodejs一起安装至电脑中,通过在cmd输入命令npm -v查看npm版本
# 如果均显示出版本号则代表安装成功
# 如果未成功,将下列路径加入对应的环境变量里:
C:\Users\Hishallyi\AppData\Roaming\npm # 加入用户变量(需按个人电脑修改)
D:\DevelopEnv\Nodejs\ # 加入系统变量(Nodejs的安装路径)
2. Nodejs常用操作
npm root -g # 查看利用npm安装包时的默认安装路径
npm config ls # 查看npm配置
npm config ls -l # 查看npm所有配置
下载完npm后需要进行的操作:
1. 在安装的最终目录下(D:\DevelopEnv\Nodejs)创建两个文件夹node_cache和node_global
2. 修改npm的cache和prefix的默认目录,改为刚创建的两个文件下
以管理员身份运行cmd(非常重要!),分别在cmd命令行中输入下面两条命令并回车确认,若没提示则修改成功(可通过npm config ls查看配置结果)
npm config set prefix "D:\DevelopEnv\Nodejs\node_global"
npm config set cache "D:\DevelopEnv\Nodejs\node_cache"
# 查看是否设置成功可以用下面两个命令:
npm config get prefix
npm config get cache # 如果对应目录是上面设置的目录那说明就是对的
3. 然后将"D:\DevelopEnv\Nodejs"、"D:\DevelopEnv\Nodejs\node_cache"、"D:\DevelopEnv\Nodejs\node_global"三个目录均加入系统变量中,注意是系统变量,不是用户变量。
4. 修改用户变量的path中npm地址,讲"C:\Users\Hishallyi\AppData\Roaming\npm"修改为刚才node_global下的目录"D:\DevelopEnv\Nodejs\node_global"
5. 在node_global目录下创建文件夹node_modules,用来存放npm安装的包
# 设置淘宝镜像
npm config set registry https://registry.npm.taobao.org
# 查看是否安装成功
npm config get registry
# 安装中国版的包管理器cnpm(如果出现4048错误,可参考https://blog.csdn.net/wzxzRoad/article/details/122766142)
npm install -g cnpm --registry=https://registry.npmmirror.com
# 查看cnpm是否安装成功
cnpm -v
查看最根目录安装了哪些包:
npm list --depth=0 -global
3. npm安装包的方式:
- 全局安装在任何文件夹都可运行,原理是写进环境变量,每次在命令行中敲入命令时,根据环境变量的设置寻找对应的可执行程序运行
npm install -g <package_name>
- 局部安装就是在当前项目中建立包,在当前项目中起作用
npm install <package_name>
4. npm安装包时的常用操作
npm -v:# 查看npm安装的版本。
npm init:# 会引导你建立一个package.json文件,包括名称、版本、作者等信息。
npm list:# 查看当前目录下已安装的node包。
npm ls:# 查看当前目录下已安装的node包。
npm install moduleNames:# 安装Node模块到本地目录node_modules下。
npm install < name > -g:# 将包安装到全局环境中。
npm install < name > --save:# 安装的同时,将信息写入package.json中,项目路径中若是有package.json文件时,直接使用npm install方法就能够根据dependencies配置安装全部的依赖包,这样代码提交到git时,就不用提交node_modules这个文件夹了。
npm install < name> --save-dev:# 安装的同时,将信息写入package.json中项目路径中若是有package.json文件时,直接使用npm install方法就能够根据devDependencies配置安装全部的依赖包,这样代码提交到git时,就不用提交node_modules这个文件夹了。
npm uninstall moudleName:# 卸载node模块。
设置SSH免密登录
要设置SSH免密码登录,可以按照以下步骤进行操作:
注意:以下命令是在本地电脑的PowerShell中运行的,并不是在命令提示符cmd中运行的
-
生成公私钥对:首先,在本地计算机上生成公私钥对。可以使用以下命令生成,默认情况下会生成RSA密钥对。
ssh-keygen -t rsa
执行命令后,会提示你选择密钥保存的路径和输入密码(留空代表无密码)。生成的公私钥文件分别是
id_rsa.pub
(公钥)和id_rsa
(私钥)。 -
将公钥复制到目标服务器:将本地生成的公钥复制到目标服务器上的
~/.ssh/authorized_keys
文件中。ssh-copy-id user@server-ip
或者手动方式,将本地的公钥内容复制到目标服务器的
~/.ssh/authorized_keys
文件。 -
验证免密码登录:尝试使用SSH登录目标服务器,应该不再需要输入密码。
ssh user@server-ip
如果一切配置正确,你应该能够直接登录到目标服务器,而无需输入密码。
需要注意的是,以上步骤假设你已经在服务器上设置了SSH服务,并且你拥有对目标服务器的登录凭证。
另外,为了确保SSH连接的安全性,建议采取以下措施:
-
设置私钥文件的权限:为了保护私钥的机密性,将私钥的权限设置为只有当前用户可读写,可以执行以下命令:
chmod 600 ~/.ssh/id_rsa
-
禁用密码登录:为了提高安全性,可以在目标服务器上禁用密码登录,只允许公钥登录。在SSH服务器配置文件(通常是
/etc/ssh/sshd_config
)中将PasswordAuthentication
设置为no
。然后重新加载SSH服务。sudo service sshd reload
这样,你就设置了SSH免密码登录,方便快捷地使用SSH连接目标服务器。