linux基础操作命令
1.VI编辑器的使用
# 打开/创建文件
vi filename.txt
# 进入编辑模式(插入文本)
i # 从光标前插入
a # 从光标后插入
o # 在当前行下插入新行
# 命令模式(按 Esc 进入)
:w # 保存文件
:q # 退出
:wq # 保存并退出
:q! # 强制退出(不保存)
dd # 删除当前行
yy # 复制当前行
p # 粘贴
/keyword # 搜索关键词,按 n 下一个
2.用户创建
# 创建新用户(用户名:newuser)
sudo adduser newuser
# 设置密码
sudo passwd newuser
# 查看用户信息
id newuser
3.组创建
# 创建新组(组名:developers)
sudo groupadd developers
# 将用户添加到组
sudo usermod -aG developers newuser
# 查看组信息
cat /etc/group | grep developers
4.复制
# 复制文件
cp source.txt destination.txt
# 复制目录(递归)
cp -r source_dir/ destination_dir/
# 强制覆盖目标文件
cp -f source.txt destination.txt
5.改变路径命令
cd /path/to/directory # 绝对路径
cd ../ # 上级目录
cd ~ # 回到用户主目录
cd - # 回到上次目录
6.删除命令
# 删除文件
rm filename.txt
# 删除目录(递归且强制)
rm -rf directory/
rm -r nested_dir/ # 递归删除,删除前会确认
rm -rf nested_dir/ # 强制递归删除,不确认(危险!)
# 交互式删除(确认提示)
rm -i filename.txt
# 删除空目录 只能删除空目录,如果目录非空会报错。
rmdir empty_dir
7.ftp命令
# 连接 FTP 服务器
ftp server_address
# 登录(用户名/密码)
username
password
# 常用操作
ls # 查看服务器文件
get file.txt # 下载文件
put file.txt # 上传文件
bye # 退出
8.sftp命令
# 安全连接(SSH 协议)
sftp username@server_address
# 与 FTP 类似的操作
ls # 查看服务器文件
get file.txt # 下载文件
put file.txt # 上传文件
exit # 退出
9.查看IP地址,IP的配置
# 查看 IP(推荐)
ip a
# 旧版命令
ifconfig
# 配置 IP(临时)
sudo ip addr add 192.168.1.100/24 dev eth0
sudo ip link set eth0 up
# 永久配置(Ubuntu/Debian)
sudo nano /etc/netplan/00-installer-config.yaml
10.进程查看及杀掉
# 查看所有进程
ps aux
# 实时监控进程
top
# 按关键词搜索进程
ps aux | grep chrome
# 杀掉进程(PID:进程ID)
kill PID
kill -9 PID # 强制终止
11.ssh免密
# 生成密钥对(本地执行)
ssh-keygen -t rsa
# 将公钥复制到远程服务器
ssh-copy-id username@server_address
# 测试免密登录
ssh username@server_address
12.tail命令
# 实时查看文件末尾内容(默认 10 行)
tail -f /var/log/syslog
# 指定行数
tail -n 20 filename.txt
# 查看文件开始内容
head filename.txt
13.查看硬盘大小
# 查看磁盘使用情况(GB 格式)
df -h
# 查看目录大小(逐级显示)
du -sh /path/to/directory
# 查看当前目录下所有文件大小(排序)
du -h --max-depth=1 | sort -hr
14.查看文件大小
# 查看单个文件大小
ls -lh filename.txt
# 查看多个文件大小
ls -lh /path/to/*.txt
# 精确显示字节数
stat filename.txt
15.ls - 列出目录内容
ls # 查看当前目录文件
ls -l # 长格式显示(权限、所有者、大小、日期等)
ls -a # 显示所有文件(包括隐藏文件)
ls -la # 长格式 + 显示隐藏文件
ls -lh # 以人类可读的格式显示文件大小(如 1K, 2.4M)
ls -R # 递归显示子目录内容
ls -t # 按修改时间排序(最新的在前)
16.补充
16.1 sudo
sudo
命令的使用取决于当前用户的权限。以下是关于是否必须使用sudo
的详细说明:
一、sudo 的作用与权限机制
sudo
用于以管理员(root)权限执行命令。在 Ubuntu/Debian 等系统中,普通用户默认没有修改系统配置(如 IP、用户、文件权限等)的权限,必须通过sudo
获取临时管理员权限。
二、哪些情况必须使用 sudo?
以下命令必须使用sudo
(或切换到 root 用户),否则会因权限不足报错:
网络配置类
sudo ip addr add ... # 修改网络接口IP
sudo ip link set ... # 启用/禁用网络接口
系统文件修改类:
sudo nano /etc/netplan/... # 编辑网络配置文件(位于/etc/目录,属系统保护目录)
用户 / 组管理类:
sudo adduser newuser # 创建用户
sudo groupadd dev # 创建用户组
文件系统操作类:
sudo rm -rf /path # 删除系统目录(如/usr/local/)
sudo cp file /etc/ # 复制文件到系统目录
16.2 root 用户与 sudo 的权限关系
root 用户:
- 是 Linux 系统中的超级管理员,拥有最高权限,可以执行任何操作(包括修改系统文件、删除关键目录等)。
- 以 root 身份登录后,命令行提示符通常为
#
(普通用户为$
)。
sudo 的本质:
sudo
允许普通用户临时获取 root 权限,前提是该用户被加入到sudoers
组(如 Ubuntu 的admin
组)。- 本质是 “借权”,而非直接拥有 root 权限。
普通用户配置 sudo 权限:
-
将用户加入
sudoers
组(Ubuntu/Debian):sudo usermod -aG sudo username
-
或直接编辑
/etc/sudoers
文件(需谨慎)。
切换root用户:
su - # 切换到root,操作完成后输入exit退回普通用户