基础指令练习

linux系统指令

win powershell ssh远程登录

ssh -p [port] user@host
# ssh -p 22140 simpleai@192.168.101.88

~/ :/home/name/
在这里插入图片描述

创建、删除、移动、拷贝、重命名文件夹/文件

创建文件

 touch my.txt

创建文件夹

 mkdir dirname1 dirname2...

删除文件

rm [-i 删除前逐一询问确认;
-f 直接删除;
-r 将目录及之下的所有文件逐一删除] * .zip

复制文件/文件夹

cp [-a 所有文件;
-f 强制;
-i 若目标文件destination已存在,在覆盖前会先询问是否真的操作;
-r 递归复制] source destination

cp t.txt test
cp -r test2 test3

移动文件夹

# mv souce destination
mv test1/ test2/

文件重命名

mv filename new_filename
mv test1 test2 #将文件test1重命名为test2

修改文件权限(读、写、执行)

ls -la #查看目录下所有文件及属性,r=1,w=3,x=4
chmod +x test.sh
chmod 777 test.sh

修改文件夹用户归属

sudo chown -R root:root filename

创建tar.gz压缩文件

tar -zcvf test1.tar.gz test1 #将test1文件压缩

tar.gz解压、zip文件解压

tar -zxvf test1.tar.gz 

在使用zip之前需要看一下zip是否安装
在这里插入图片描述
未安装需要apt install 安装

sudo apt install zip
#这边补充安装git lfs,当git项目中需要传入数据集等大文件时以lfs的形式传入
sudo apt install git-lfs 
sudo apt update #注意谨慎使用apt upgrade,可能会导致各个包版本不匹配等问题
git lfs install
  • tar.gz 解压
tar -zxvf test1.tar.gz

-zip解压

zip -r test1.zip test1
####补充####
git lfs track "*.zip" #产生.gitattributes文件
cat .gitattributes
#后面接git add,git commit,git push
###
unzip test1.zip

查看当前所在路径

print work directory

pwd

在这里插入图片描述

查看网络配置

ifconfig

查看历史输入命令

history

动态查看日志文件(tail)

tail 命令可用于查看文件的内容,有一个常用的参数 -f (folow)常用于查阅正在改变的日志文件。-n显示文件尾部n行。

tail -f log.txt
tail -n 10 log.txt

这个指令在训练过程中,用来查看训练进程很有效0。

  • 运行 .py文件
python3 train.py >> log.txt #将train.py中print输出输出到log.txt,而不是在终端显示出来,这样终端就可以关掉,而训练继续进行,要查看训练进程直接tail就行 
tail -f log.txt
  • 在程序中加入sys.stdout设置日志文件的程序块
import time
#定义全局变量
public_para={"is_log_handle":True,
	"log_file":"./log.txt"}
#用sys.stdout标准输出将控制台所有信息输出打印到文件
if public_para["is_log_handle"]:
	sys.stdout=open(public_para["log_file"], "a")
	#程序开始时间非必要
	start_time = time.strftime("%Y-%m-%d %a %H:%M:%S", time.localtime(time.time()))
	print(f"[{start_time}]:program starting")
  • 一次性输出打印查看文件内容(cat)

-ubuntu安装软件包/卸载软件包

python3安装软件包/卸载软件包

pip3 list
pip3 install zip
pip3 uninstall zip

大名鼎鼎sudo

sudo apt-get update
sudo apt-get install python
sudo apt-get install g++
  • 报错
  • 在这里插入图片描述
ps -aux
kill -9 3809

-ssh远程登陆服务器
-scp远程拷贝文件/文件夹
-测试ip连通性
-查找文件

查看进程

ps -ef

-查看内存/磁盘/cpu使用率

查看显卡使用情况

watch -n 0.5 nvidia-smi 

vim操作

vi/vim filename 直接新建并进入
命令模式
i切换到输入模式,以输入字符
x删除当前光标所处在处的字符
:切换到底线命令模式

输入模式
编辑文本
Esc退出输入模式,回到命令模式

底线命令模式
q 退出程序
w保存文件

-关键字查找
-撤销/反撤销
-显示行号
-批量注释/反注释
-复制/粘贴/剪切/删除
-其他插件

git命令

创建本地仓库、关联远端仓库(SSH)

注意一个新的容器进行关联的时候,需要生成SSH key:

cd
cd .ssh
la (查看是否有钥)
ssh-keygen(产生密/公钥;中间没有空格)
cat id-rsa.pub(<kbd>Ctrl+c</kbd>粘贴到git SSHkey)

由于一个ssh key只能连接到一个git账户连接。

###未成功啊啊啊啊,需要帮助#####
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

在git添加完密钥以后,初始化git

git init
git status #查看git的状态(文件变化情况,有没有commit等)
git remote add origin < url > #<url>为项目地址

clone远端仓库

注意此处clone,需要删除该文件下的.git文件,才能保证之后push不出错,当然也可以采用submodule的方法

git clone < url >

添加submodule

运行后默认将submoule clone到当前目录,产生.gitmodules文件

git submodule add < url > 

推送代码

git add . #空的文件夹,.gitgnore中的文件不会被tracked
git commit -m "..."
git push -u origin *master*

git push 常见错误

1.please tell us who you are

1. 若出现以下错误,要打开.git中的config添加

[user]
	email=xxx@xx.com
	name=xxxx

fatal: unable to auto-detect email address (got 'simpleai@3b76fa4eddc8.(none)')

2. ! [rejected] master -> master (fetch first)

为远程与本地版本不匹配问题,运行*

git pull --rebase origin master

在这里插入图片描述

新建分支/切换分支

注意在commit之后再修改分支

git branch develop #新建develop分支
git checkout develop #切换到develop分支
git branch #查看当前分支状态

忽略提交文件

如果已经add完,那么单单更新 .gitignore是无法删除已经被tracked的文件的,此时需要:
1.清除git cached
2.更新.gitignore
3.add ->push
即:

git status
git rm --cached -r .
vim .gitignore
git add .
git commit -m "Update .gitignore"

在这里插入图片描述

lfs 大文件

sudo apt install zip
sudo apt install git-lfs
sudo apt update
git lfs install
git init
git remote add origin @

zip -r data.zip data
git lfs track src/*.zip ## 显示: tracking “src/data.zip”
cat .gitattributes

git add .
git commit -m "Add:dataset"
git push -u origin master 

用脚本从gitlab上clone

ssh-keygen
cat ~/.ssh/
cat ~/.ssh/id_rsa.pub
#将ssh key粘到git
touch download.sh
vi download.sh

在download.sh中写入

#!/bin/bash
  
cd model/images/
git lfs clone -b develop ssh://git@192.168.101.88:8022/model/images/darknet.git
git lfs clone -b develop ssh://git@192.168.101.88:8022/model/images/densenet.git

:wq保存退出,在终端运行.sh文件

chmod +x download.sh
#赋予dowload.sh文件执行的权力
./download.sh
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值