文章目录
1 在ubuntu上管理文件
1.1 cat 合并与显示
concatenate files and print on the standard output,cat命令主要用来查看文件内容,创建文件,文件合并,追加文件内容等功能。
- 1、cat f1.txt,查看f1.txt文件的内容。
- 2、cat -n f1.txt,查看f1.txt文件的内容,并且由1开始对所有输出行进行编号。
- 3、cat -b f1.txt,查看f1.txt文件的内容,用法与-n相似,只不过对于空白行不编号。
- 4、cat -s f1.txt,当遇到有连续两行或两行以上的空白行,就代换为一行的空白行。
- 5、cat -e f1.txt,在输出内容的每一行后面加一个$符号。
- 6、cat f1.txt f2.txt,同时显示f1.txt和f2.txt文件内容,注意文件名之间以空格分隔,而不是逗号。
- 7、cat -n f1.txt>f2.txt,对f1.txt文件中每一行加上行号后然后写入到f2.txt中,会覆盖原来的内容,文件不存在则创建它。
- 8、cat -n f1.txt>>f2.txt,对f1.txt文件中每一行加上行号后然后追加到f2.txt中去,不会覆盖原来的内容,文件不存在则创建它。
1.2 删除
在Ubuntu中好多文件或文件夹是不能使用右键删除的,因此知道删除文件或文件夹的rm命令显得尤为重要。
rm命令的语法:
rm [选项] 文件名或文件夹名
1.2.1 rm命令的一些[选项]:
选项 | 解释 |
---|---|
-f、–force | 强力删除,不要求确认 |
-i | 每删除一个文件或进入一个子目录都要求确认 |
-I | 在删除超过三个文件或者递归删除前要求确认 |
-r、-R | 递归删除子目录 |
-d、-dir | 删除空目录 |
-v、-verbose | 显示删除结果 |
常用的几个rm命令 |
删除一个空目录
rm -d 目录名
rm -dir 目录名
删除一个非空目录
rm -r 目录名
删除文件
rm 文件名
删除文件(使用超级管理员权限)
要注意的是,直接使用rm命令的话通常会报没有权限修改的错,这时候可以在命令前面加上sudo命令就有权限去修改了。sudo顾名思义就是su-do,就是su(super user)管理员去do(执行)的意思,有了管理员权限之后就可以为所欲为了。
sudo rm 文件名
文件夹软连接
文件夹建立软链接(用绝对地址)
格式:ln -s 源地址 目的地址
举例:比如我把linux文件系统 rootfs_dir 软链接到 /home/jyg/ 目录下
ln -s /opt/linux/rootfs_dir /home/jyg/rootfs_dir
-1 Introduction
-1.1 Motivation
快速掌握使用terminal 控制Ubuntu开展深度学习流程,轻松使用云端服务器资源。持续更新哦
-1.2 What is Linux?
Linux 内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux 英文解释为 Linux is not Unix。
Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux 的发行版就是将 Linux 内核与应用软件做一个打包。目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。
-1.3 Why Ubuntu?
很多时候, 机深度学习的开发是基于 Linux 的, 所以 Linux 的一些使用技巧就必不可少. 深度学习的许多模块, 比如 Tensorflow, Pytorch, 都是 Linux 支持最好. Ubuntu是相对容易入门的Linux发行版之一,更新速度快,对硬件支持良好(比如雷电3接口驱动等)。
0 在Ubuntu上安装软件
0.0 shell
0.0.1 什么是shell
0.0.2 尝试使用shell
查看你的电脑
查看存储空间
df:显示磁盘分区上可以使用的磁盘空间
df -a 查看全部文件系统,单位默认KB
du : 显示每个文件和目录的磁盘使用空间~~~文件的大小。
命令参数:
-a #显示目录中文件的大小 单位 KB 。
-b #显示目录中文件的大小,以字节byte为单位。
-c #显示目录中文件的大小,同时也显示总和;单位KB。
-k 、 -m 、#显示目录中文件的大小,-k 单位KB,-m 单位MB.
-s #仅显示目录的总值,单位KB。
-h #以K M G为单位显示,提高可读性~~~(最常用的一个~也可能只用这一个就满足需求了)
通过命令du -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。
(最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。)
free 可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。
1.命令格式:
free [参数]
2.命令功能:
free 命令显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略
3.命令参数:
-b 以Byte为单位显示内存使用情况。
-k 以KB为单位显示内存使用情况。
-m 以MB为单位显示内存使用情况。
-g 以GB为单位显示内存使用情况。
-o 不显示缓冲区调节列。
-s<间隔秒数> 持续观察内存使用状况。
-t 显示内存总和列。
-V 显示版本信息。
0.1 源与软件仓库(Software Repository)
在windows下安装软件,我们只需要有EXE文件,然后双击,下一步直接OK就可以了。但在LINUX下,不是这样的。每个LINUX的发行版,比如UBUNTU,都会维护一个自己的软件仓库,我们常用的几乎所有软件都在这里面。这里面的软件绝对安全,而且绝对能够正常安装。
那我们要怎么安装呢?在UBUNTU下,我们维护一个源列表,源列表里面都是一些网址信息,这每一条网址就是一个源,这个地址指向的数据标识着这台源服务器上有哪些软件可以安装使用。
0.1.1 编辑源列表 /etc/apt/sources.list
sudo gedit /etc/apt/sources.list
在/etc/apt/sources.list
这个文件里加入或者注释(行前加#号)掉一些源后,保存。这时候,我们的源列表里指向的软件就会增加或减少一部分。
接一下要做的就是:
0.1.2 更新软件列表 apt-get update
sudo apt-get update
这个命令,会访问源列表里的每个网址,并读取软件列表,然后保存在本地电脑。我们在新立得软件包管理器里看到的软件列表,都是通过update命令更新的。
update后,可能需要upgrade一下。
0.1.3 升级本地软件 apt-get upgrade
sudo apt-get upgrade
这个命令,会把本地已安装的软件,与刚下载的软件列表里对应软件进行对比,如果发现已安装的软件版本太低,就会提示你更新。如果你的软件都是最新版本,会提示:
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
总而言之,update是更新软件列表,upgrade是更新软件。
0.2 环境变量设置方法
0.3 Ubuntu新机必备软件安装
0.3.1 中文输入法
搜狗for Linux官方安装指南:https://pinyin.sogou.com/linux/help.php
0.3.2 字体路径:/usr/share/fonts/
0.4 dpkg 查看已安装软件/卸载已安装软件/管理软件占用空间
主要使用dpkg命令,“dpkg ”是“Debian Packager ”的简写。为 “Debian” 专门开发的套件管理系统,方便软件的安装、更新及移除。所有源自“Debian”的“Linux ”发行版都使用 “dpkg”,例如 “Ubuntu”、“Knoppix ”等。
dpkg是Debian软件包管理器的基础,它被伊恩·默多克创建于1993年。dpkg与RPM十分相似,同样被用于安装、卸载和供给.deb软件包相关的信息。dpkg本身是一个底层的工具。上层的工具,如APT,被用于从远程获取软件包以及处理复杂的软件包关系。 “dpkg”是“Debian Package”的简写。
0.4.1. 查看安装的所有软件
查看所有软件
dpkg -l
dpkg -l | less
分页显示,按上下箭头或回车查找;字母q为退出
dpkg -l | grep dove* 使用*号时,建议文件名要在4个字以上
dpkg -l | grep <完整文件名> 例如:
查看模糊名软件
dpkg -l *360
显示所有安装包的统计信息
可以统计已经安装包的数量,大小,占用空间等:
apt-cache stats
0.4.2. 查看软件安装的路径,目录和文件
dpkg -L <完整文件名>
dpkg -L | grep <完整文件名>
有错也可尝试用
whereis <完整文件名>
0.4.3. 软件卸载
3.1、如果是从Ubuntu Software Center安装的,进入center,找到那个软件,很明显会有“卸载”的按钮;
3.2、如果是tar、gz、zip之类解压就能用,免安装的,直接删除;
3.3、如果是自己下载的deb包安装,或者通过apt-get install安装、或者通过添加ppa安装,使用sudo apt-get autoremove software-name
来卸载,为了一次卸干净,可以再加上一个参数sudo apt-get autoremove --purge software-name
3.4、如果是通过configure然后make & make install,也可以直接删除;
4. 清除所有已删除包的残余配置文件:可以清除旧版本的软件残留无用的配置。
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
0.4.4.清理无用的安装包
先修理系统安装的包
sudo apt --fix-broken install
然后自动清理即可
sudo apt-get autoremove
参考资料
莫烦python‘的Linux简易教学
pytorch、tensorflow等开发框架安装与虚拟环境管理与使用技巧
请参考我的博客:“Anaconda虚拟环境管理、深度学习开发框架搭建”