ubuntu常用指令

时间:2021-01-30 08:59:47

总结一下常用的linux指令。

mark一个linux指令学习和速查的网站:http://man.linuxde.net/

(0) su和sudo:得到root权限

su 切换到root用户
sudo command 切换到root用户,执行command,然后切换回当前用户
su liaohuqiang 切换回普通用户

(1) apt:用于安装软件包

apt list 根据名称列出软件包
apt show 显示软件包细节
sudo apt install 安装软件包
sudo apt remove 卸载软件包
sudo apt-get check 检查依赖
sudo apt update 更新可用软件包列表
sudo apt upgrade 通过安装/升级软件来更新系统 dpkg -i xxx.deb 运行deb程序进行安装
sudo apt-get -f install 修复依赖

(2) pip:用于安装python模块(不是linux里的默认指令,需自行安装sudo apt install pip)

pip install 安装包
pip uninstall 卸载包
pip search 搜索能安装的包
pip list 列出所有的已安装的包
pip show 展示已安装包的信息,可以指定单个包名展示
pip check 检查依赖
pip --version 显示pip版本和位置
pip help 查看帮助
pip help install 查看install指令的相关option介绍

(3) ssh和scp:主机间通信

ssh username@ip 登录到远程主机
scp local_file username@ip:remote_directory 复制本地文件到远程主机
scp -r local_directory username@ip:remote_directory 复制本地文件夹到远程主机
sudo ufw disable #关闭防火墙
sudo ufw enable #开启防火墙 sudo apt-get install vsftpd # 安装和启动sftp
service vsftpd start

(4) 压缩和解压:zip, unzip, tar, rar, unrar, 7z

zip -r target.zip . 把当前目录以及目录下的子文件夹全部压缩
zip target.zip 压缩当前目录,如果有文件夹则不会压缩进去(因为没有加-r) unzip source.zip -d 'folder' 解压到folder目录下
unzip source.zip 解压到当前目录下 tar -zcvf target.tar.gz sorceFoler c代表打包,z代表用gzip来压缩/解压,v详细报告处理信息,f必选并且后带文件名 tar -zxvf source.tar.gz -C 'folder' 解压到folder目录下,,其中z代表gzip属性的,x代表解压,v代表解压时输出相关信息,f必须有并且放最后并且后带文件名。
tar -xvf source.tar.gz 试了一下,少了个z也可以,效果同上
tar -jxvf source.tar.bz2 rar a -r test.rar source/ 将source文件夹的内容压缩到test.rar中
unrar x ../test.rar 解压父目录中的test.rar到当前目录 apt-get install p7zip-full
7z x file

(5) 查看磁盘的存储占用:du;查看文件系统的存储占用:df。

du -s或--summarize 仅显示总计,只列出最后加总的值。
du -c 除了显示个别文件或目录的大小外,还显示一行目录和文件的总和大小
du -h 以K,M,G为单位,提高信息的可读性。
du --max-depth= 查看当前目录所有(一级)文件的大小 对于-c和-s稍微区分一下
du -sh *.mkv 显示每个mkv文件的大小
du -csh *.mkv 除了显示每个mkv文件的大小,还显示总和,这里的s加不加都行,因为只显示普通文件 df -h 以K,M,G为单位,提高信息的可读性。
df -T x显示文件系统类型

(6) 查找命令

6.1 which 在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
6.2 whereis 只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
6.3 locate 配合数据库查看文件位置。linux会将系统内所有文件记录在一个数据库文件中,但是该数据库并不是实时更新。
6.4 find 实际搜寻硬盘查询文件名称。

find . -name '*.conf' 当前目录查找扩展名为.conf的文件

updatedb 更新数据库
locate 字符串 快速查找系统数据库中指定的内容 whereis python
which python

(7) 文件权限

chmod [ugoa][+-=][rwx] 文件名或路径 改变指定目录或文件的权限
u代表该文件所有者,g代表该文件所有者的同组用户,o代表其它
+代表增加权限,-代表取消权限,=代表唯一设定权限
r可读,w可写,x可执行
chmod u+x test 该文件所有者增加可执行的权限 用数字表示,规定r=, w=, x=,
chmod test 三种用户都赋予可读可写可执行的权限 chown -R 用户名[:组名] 文件名或目录 改变指定目录或文件的所属用户,-R代表递归地改变目录下的所有文件

(8) 文件和文本操作

grep str /tmp/test 在文件/tmp/test中查找str
grep ^str /tmp/test 在文件/tmp/test中查找以str开始的行 ls -ld */ 显示当前目录的所有目录文件
ls -l | grep '^d' 显示当前目录的所有目录文件 wc -l 统计文件行数
wc -w 统计单词数量 ls -l | wc -l 统计当前目前的文件数量,注意要减去“总用量”那一行 cp -a dir1 dir2 复制目录
mv dir1 dir2 移动/重命名目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
rm -f file1 删除文件
rm -rf dir1 删除目录 ln -s /real_file /soft_link 创建软链接

(9) 进程

ps -e 显示所有进程
ps -f 全格式显示进程
ps -u 'liaohuqiang' | grep 'tmux' 显示指定用户执行的进程,并匹配出包含'tmux'的那一行进程
ps -ef | grep 'python' | grep -v grep 把grep命令排除掉
ps -ef | grep 'python' | grep -v grep | awk '{print $2}' 提取进程号 kill - pid 类似ctrl+C,在程序结束之前能够保存相关数据,再退出
kill - pid 直接强制结束进程 reboot 重启
shutdown -r now 立刻重启
shutdown -r 30分钟后重启
shutdown -r : 晚上11点重启 halt 立刻关机
poweroff 立刻关机
shutdown -h now 立刻关机
shutdown -h 30分钟后关机 shutdown -c 取消shutdwon的重启或关机
command & 使指令成为后台任务
nohup 不挂断地运行命令,通常和&一起用,输出将附加到目录的nohup.out
jobs -l 列出任务列表,l表示显示进程号(只查看当前终端的,关闭终端后无法看到)
fg 把最近一个job切换到前台
fg n 把某个job切换到前台
ctrl z 挂起某个前台进程
bg 把作业放到后台运行 top 动态显示进程信息
top -i 不显示任何闲置或无用的进程
k 杀死某进程
n 改变显示的进程数量
u 显示指定用户
P 按CPU使用情况排序
q 退出

(10) 网络

netstat 显示网络情况
netstat -a 列出所有端口
netstat -l 只显示监听端口
netstat -t 列出所有tcp端口
netstat -p 显示使用该端口的pid和程序名称
netstat -n 直接使用ip地址,不通过域名服务器 找出程序运行的端口:netstat -anp | grep ssh 找出运行在指定端口的进程:netstat -anp | grep ':80' ifconfig 查看网卡信息

(11) 查看电脑配置

free -m  # 查看内存使用情况
df # 查看磁盘使用情况
cat /proc/cpuinfo # 查看cpu信息
lspci | grep VGA # 查看显卡
nvidia-smi # 查看英伟达系列显卡的使用情况
nvidia-smi -L # 查看显卡型号
watch -n -d nvidia-smi # 实时监控nvidia-smi,每隔一秒刷新一次,d表示高亮
cat /proc/driver/nvidia/version # 查看显卡驱动
cat /etc/issue # 查看ubuntu版本

(12) 其它

date 显示时间
whoami 显示当前用户名
who 目前登录系统的用户信息
curl 'url' -O --progress 下载文件,-O代表保存文件(如果没有则输出到屏幕), --progress表示会显示进度条
(curl不是linux的默认自行,需自行安装apt install curl)
echo $SHELL 查看系统使用的是哪种shell
echo $PATH 查看环境变量 xdg-open filename 用默认应用程序打开文件 python run_generation.py | tee vggTrainResult 重定向到文件 cat /usr/local/cuda/version.txt 查看cuda版本 cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 查看cudnn版本

ubuntu常用指令的更多相关文章

  1. ubuntu 常用指令

    1.进入到root权限的指令 sudo su,效果同su,只是不需要root的密码,而需要当前用户的密码.(亲测有效) 2.从root权限里面退出到 普通用户模式 exit---指令亲测有效 3.下载 ...

  2. linux(ubuntu) 常用指令

    1.新建文件夹 mkdir mkdir test 2.进入文件夹 cd cd test 3.创建/修改文件 vim vim a.txt 如果不存在a.txt,就会新增a.txt; 如果存在,则修改 先 ...

  3. Ubuntu Mysql 常用指令

    mysql 常用指令及中文乱码解决 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

  4. Ubuntu常用命令大全(转)

    点评:Ubuntu常用命令大全,学习ubuntn系统的朋友可以收藏下,用ctrl+F查找即可 一.文件/文件夹管理 ls 列出当前目录文件(不包括隐含文件) ls -a 列出当前目录文件(包括隐含文件 ...

  5. ROS零门槛学渣教程系列(二)——Linux常用指令:mkdir、tar、 unzip、cp、scp、mv、rm、find、apt、ssh

    Linux常用指令通过上一教程,我们获得了ubuntu系统.Linux是一个很大的领域.但不要紧张,我们一步步来就是了,跟着教程,需要能用到新知识,会提前介绍给大家.下面学习几个常用的Linux指令. ...

  6. Docker Compose 配置文件常用指令

    Docker Compose 配置文件常用指令 YAML文件格式及编写注意事项 YAML是一种标记语言很直观的数据序列化格式,可读性高.类似于XML数据描述语言,语法比XML简单的很多. YAML数据 ...

  7. 第 3 章 镜像 - 016 - Dockerfile 常用指令

    Dockerfile 常用指令 1.FROM 指定base镜像2.MAINTAINER 设置镜像的作者,可以为任意字符串3.COPY 从build context 复制到镜像 COPY 支持两种形式: ...

  8. Ubuntu常用命令大全[显示桌面]

    Ubuntu常用命令大全 查看软件xxx安装内容 #dpkg -L xxx 查找软件 #apt-cache search 正则表达式 查找文件属于哪个包 #dpkg -S filename apt-f ...

  9. Ubuntu 常用命令大全

    Ubuntu 常用命令大全查看软件 xxx 安装内容#dpkg -L xxx查找软件#apt-cache search 正则表达式查找文件属于哪个包#dpkg -S filename apt-file ...

随机推荐

  1. 服务器使用FTP命令行 无法传送文件 卡在150 Opening data channel for file transfer

    猜测,是因FTP服务器采用了主动模式,在创建数据传输通道时,服务器会以一个随机的端口,连接回来. 临时解决方案: 因不知道请求回来使用的哪个段的端口,因此,暂时关闭了防火墙.即能正常传输文件了.

  2. TextEdit 回车事件

    <dxe:TextEdit Name="txtSearchPatientName" KeyDown="txtSearchPatientName_KeyDown_1& ...

  3. 什么是image crop?

    一直对image crop很困惑,总算是看到了一篇描述较为简洁的说明:图像crop就是指从图像中移除不需要的信息,只保留需要的部分

  4. ruby:TypeError&colon; 对象不支持此属性或方法

    解决办法. 1.下载对应版本 下载node.js,根据ruby版本决定下载32还是x64,我的ruby版本x64 https://npm.taobao.org/mirrors/node/v8.9.3/ ...

  5. iframe高度宽度自适应

    iframe { width: 100%; height: 100%; border: none; position: inherit; } 网上全是js方法,而且略显臃肿,故找到了一个css方法,宽 ...

  6. codeforces605A

    Sorting Railway Cars CodeForces - 605A 一辆列车有N节车厢,编号为1...N(每节车厢编号都不同),并且他们的排列是混乱的.李老湿想要把这N节车厢重新排列为升序排 ...

  7. js判断空字符串、null、undefined、空格、中文空格

    代码 function isEmpty(obj) { if (obj === null) return true; if (typeof obj === 'undefined') { return t ...

  8. &OpenCurlyDoubleQuote;东信杯”广西大学第一届程序设计竞赛(同步赛)H

    链接:https://ac.nowcoder.com/acm/contest/283/H来源:牛客网 题目描述 由于临近广西大学建校90周年校庆,西大开始了喜闻乐见的校园修缮工程! 然后问题出现了,西 ...

  9. WEB-INFO 目录

    WEB-INF下面的内容都是只能由服务器级别才能访问,客户端并不能访问. 转发就是服务器级别,浏览器的地址不会变,因为,客户端发送一个请求,服务器受理之后,发现要请求内容还要再去别的请求,那么转发就是 ...

  10. 锁(3)-- DB锁

    1 前言 数据库大并发操作要考虑死锁和锁的性能问题.看到网上大多语焉不详(尤其更新锁),所以这里做个简明解释,为下面描述方便,这里用T1代表一个数据库执行请求,T2代表另一个请求,也可以理解为T1为一 ...