wget的断点续传?
在服务器上下载imagenet的训练数据总是断开,于是想要能够像rsync一样的断点续传功能。
1 | wget -c -t 100 URL |
其中,-c表示断点续传,-t 100代表重试100次,-t 0 表示无穷次重试直至成功连接。
在服务器上下载imagenet的训练数据总是断开,于是想要能够像rsync一样的断点续传功能。
1 | wget -c -t 100 URL |
其中,-c表示断点续传,-t 100代表重试100次,-t 0 表示无穷次重试直至成功连接。
实习小半年了,经常用到/也学到了一些好用的Linux命令,记录一下。 方便日后查阅。
查看当前目录下的进程 1
lsof +D ./
查看占用端口为8076的进程 1
2
3lsof -i:8076
# 解除端口占用 / 杀死该进程
kill -9 进程号
查看日志目录下有无panic字样 1
2cd logs/ # 先进入日志目录下
grep panic ./ -r
1 | class UF { |
优雅地终止线程
1 | import lombok.extern.slf4j.Slf4j; |
关于interrupt的api
方法 | 作用 | 备注 |
---|---|---|
isInterrupted() |
判断是否被打断 | 不会清除打断标记 |
interrupted() |
static方法,判断是否被打断 | 会清除打断标记(设为false) |
interrupt() |
打断线程 | 如果打断阻塞线程,会抛出InterruptedException异常,并清除打断标记(设为false);如果打算正常线程,则会设置打断标记(设为true);park线程也会被打断,也会设置打断标记 |
打断sleep线程,会抛出异常, 清空打断状态,即打断标记为false
不会对线程产生影响,设置打断标记,设为true
一种写法:
this
是指本对象,锁的是该对象,是一个实例。
1 | class Room{ |
另一种写法,是把synchronized
加在方法上:
1 | class Room{ |
一种写法,是锁类
1 | class Test{ |
另一种写法,是加在静态方法上
1 | class Test{ |
使用ssh的同步文件的工具,用来传输文件很方便,可以断点续传!
常用:
1 |
|
参考:rsync 用法教程
写在前:在深度学习中,数据集通常比较大,占用的存储空间较多。而很多项目会基于同一个数据集进行实验。
所以,强烈推荐将数据集放在项目外,并通过软链接的方式链接到项目中的
data/
目录下。
补充软链接的用法:
1 | ln -s 原始路径 目的路径 |
注意:原始路径必须写绝对路径。
总要配置环境,记下步骤来就方便很多啦~ linux: Ubuntu 18.04 LTS
1 | wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh |
1 | sh Miniconda3-latest-Linux-x86_64.sh |
安装过程中可以指定安装目录
并 running conda init
1 | cat .bashrc |
1 | source ~/.bashrc |
1 | which conda |
=== 至此,conda就安装好啦
报错: 1
2行 2: $'\r': 未找到命令
行 78: 未预期的符号 `$'{\r'' 附近有语法错误
解决: 1
2
3sudo apt-get install dos2unix
dos2unix **.sh
记录常用的linux命令
1 | $ scp |
常用:传输文件夹,前面是src,后面是dest 1
scp -P 端口号 -r 本地文件夹路径 用户名@xxx.xxx.xxx.xxx:服务器上的文件路径
比如:
1 | scp -P 222 -r ./folder/ 用户名@xxx.xxx.xxx.xxx:/home/zsx/projects/ |
就会将本地当前路径下的folder文件夹传到服务器的/home/zsx/projects/
目录下
最最最后,刚写完这个post就发现一篇解释得很详细的文章~ 指路:linux scp命令安全远程文件复制程序