Linux指令整理

整理的一些个人常用的 Linux 指令

Posted by JH on August 27, 2020

随便整理的一些自用的Linux指令

常用操作

显存使用情况

nvidia_smi 静态显卡使用情况
watch -n 10 nvidia-smi 每 10s 显示一次显存的情况
gpustat python查看显存使用命令,需要安装gpustat包 pip install gpustat

用户进程

ps 查看进程统计信息
    -ux 当前用户
    -aux 全部用户
结合grep命令的使用
    ps aux|grep user|grep python 查看某用户的python任务信息,可更换为相应任务
    ps -eo pid,lstart,etime|grep PID 查看指定PID进程的开始时间,运行时间

kill PID 杀死某个进程

top 实时动态地查看系统的整体运行情况
    -u [用户名]:指定用户名
    -p [进程号]:指定进程
    
htop 动态后台进程

后台运行

1. nohup bash run.sh >run.log 2>&1 &
2. exit

内存清理/释放命令

1. free -m 内存使用情况
2. sync 释放前同步
3. echo i > /proc/sys/vm/drop_caches 释放缓存

释放缓存数字参数 i 说明
0 – 不释放
1 – 释放页缓存
2 – 释放dentries和inodes
3 – 释放所有缓存

常用快捷命令

clear 清空shell
tab 补全
date 显示日期
ctrl + r -:查找历史命令(history);
ctrl + c 终止
ctrl + d 退出

文件磁盘

chown username:username xxx 同时修改文件(夹)所属用户组和用户 
chown username xxx 修改文件(夹)所属用户组

sudo chmod -R 777 file 使file权限为所有人可读写
chmod [{u/g/o/a}{+-=}{rwx}] xxx 修改文件(夹)权限
    u:user g:group o:other a:all
ls -l xxx 查看权限

cat filename 查看文件所有内容
head -n file 查看文件前n行
tail -n file 查看文件后n行

echo a b c | awk '{print $1}' 查看一行第一栏
echo a b c | awk '{print $1,$3}' 查看一行的第一和第三栏 

cd *** 进入***文件夹
cd .. 返回上一级目录

ls 查看目录中的文件
ls -l 显示文件和目录的详细资料
ls -a 显示隐藏文件

mkdir dir1 创建一个叫做 'dir1' 的目录'
rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容

mv dir1 new_dir 重命名/移动 一个目录
cp file1 file2 复制一个文件
cp -a dir1 dir2 复制一个目录

whereis name 查找含有name的文件/文件夹位置
find name 查找含有name的文件/文件夹位置(从根目录搜索)

unzip file1.zip 解压一个zip格式压缩包
tar -zxvf archive.tar.gz 解压一个gzip格式的压缩包
tar -jxvf archive.tar.bz2 解压一个bzip2格式的压缩包

df 显示磁盘分区上的可使用的磁盘空间
    -a 包含全部的文件系统
    -h 查看磁盘使用情况

用户和群组

groupadd group_name 创建一个新用户组 
groupdel group_name 删除一个用户组 
groupmod -n new_group_name old_group_name 重命名一个用户组 
useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 创建一个属于 "admin" 用户组的用户 
useradd user1 创建一个新用户 
userdel -r user1 删除一个用户 ('-r' 排除主目录)
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性 
passwd 修改口令 
passwd user1 修改一个用户的口令 (只允许root执行) 
chage -E 2005-12-31 user1 设置用户口令的失效期限 
pwck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的用户 
grpck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的群组 
newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组 

APT 软件工具 (Debian, Ubuntu 以及类似系统)

apt-get install package_name 安装/更新一个 deb 包
apt-get update 升级列表中的软件包 
apt-get upgrade 升级所有已安装的软件 
apt-get remove package_name 从系统删除一个deb包

服务管理命令

service s_name start|stop|status|restart 系统任务的操作(linux系统所有自带服务名称:/etc/init.d/)

chkconfig 设置是否开机启动
    chkconfig iptables --list 2.3.4.5是on表示开机启动
    chkconfig iptables on|off 设置