常用Linux命令

常用Linux命令

用户和组操作

组操作

# 查看所有组
cat /etc/group

# 查看当前用户所属组
groups

# 查看指定用户所在组
id username

# 列出指定组内所有成员
getent group groupname

# 新增组
groupadd groupname

# 修改组名
groupmod -n newname oldname

# 删除组
groupdel groupname

用户操作

# 查看所有用户
compgen -u

# 新增用户 -m创建用户目录 -d指定用户目录 -g指定用户组
useradd username -m -d /home/username -g groupname

# 设置密码
passwd username

# 删除用户
userdel username

# 修改用户所属组
usermod -g groupname username

# 修改用户默认终端
vim /etc/passwd

磁盘操作

# 查看已挂载空间
df -h
# 查看硬盘信息
lsblk

# 挂载新的硬盘
## 假如硬盘设备为/dev/sda先分区
fdisk /dev/sda
### 输入n新建分区, 回车确定是第一个分区,回车确认起始扇区,输入+1024G 给第一个分区分配一个T的容量, 输入w写入分区信息
## 格式化分区为ext4
mkfs.ext4 /dev/sda1
## 开机挂载,修改/etc/fstab,写入以下内容
### <file system> <mount pt> <type> <options> <dump> <pass>
/dev/sda1 /mnt/sda1 ext4 defaults 0 0

https://www.cnblogs.com/arnoldlu/p/11613842.html

文件操作

# 查看当前文件夹大小
du -sh .
## 或者
du -h --max-depth=1

# 修改文件所属组
chgrp 用户名 文件名 -R

# 修改文件所属用户
chown 用户名 文件名 -R

# 在可视化界面打开当前文件
xdg-open .

# 在可视化界面打开指定文件
xdg-open 路径

 #删除keep文件之外的所有文件
rm -rf !(keep)

#删除keep1和keep2文件之外的所有文件
rm -rf !(keep1 | keep2) 

重启网络

/etc/init.d/network restart 
service network restart

硬件属性

# CPU 实时信息
top

# CUDA 实时信息
watch -n 1 nvidia-smi  

任务管理

# 确定某个命令的位置(如nvcc)
type nvcc

# 后台运行-screen,只要Screen本身没有终止,在其内部运行的会话都可以恢复。需要先安装screen
## 查看所有screen
screen -ls
# 创建screen
screen [-S 名称] 
## 离开现在的screen(detached),回到主会话
ctrl + a + d  (或 screen -d [id/name])
## 恢复连接,只能恢复Detached的会话,如果想连接Attached的screen,可以用上面的命令使其先Detached
screen -r screen_id
## 在子会话中,进入上一个子会话
ctrl + a + p
## 在子会话中,进入下一个子会话
ctrl + a + n
## 退出某个screen,在该screen中执行
exit

软件管理

# 用 apt :
apt list --installed
apt remove XXX
sudo apt-cache search XXX
# 用 dpkg :
sudo dpkg -i XXX
dpkg -l
sudo dpkg -r XXX
# 列出系统里 Snap 已安装软件包:
snap list
# 列出系统里 Flatpak 已安装软件包:
flatpak list

解压

# tar.xz / .txz / .tar.gz / .tar.bz2
tar -xvf archive.tar.xz

# zip 压缩
zip -r myfile.zip ./* 
# zip 解压
unzip -d /home/sunny myfile.zip 

参考