Linux/Ubuntu 16.04终端命令大全:从基础操作到系统管理

Ubuntu 16.04 LTS 作为长期支持版本,为用户提供了稳定可靠的操作系统环境。终端(Terminal)作为 Linux 系统的核心交互界面,是进行系统管理、文件操作、软件安装等任务的重要工具。奥德彪学习网将详细介绍 Ubuntu 16.04 终端的基本操作、常用命令、系统管理技巧以及高级应用,帮助用户从初学者逐步成长为终端操作高手。无论您是 Linux 新手还是有经验的用户,这份指南都将为您提供实用的参考和帮助。
一、终端基础操作
1.1 终端启动与界面
启动终端的方法:
- 快捷键启动:按下 Ctrl + Alt + T 组合键
- 图形界面启动:桌面右键选择 "Open Terminal"
- 应用菜单启动:通过 "应用程序"→"系统工具"→"终端"
多标签终端:
- 新建标签页:Ctrl + Shift + T
- 切换标签页:Ctrl + PageUp/PageDown
- 关闭标签页:Ctrl + Shift + W
1.2 终端快捷键
|
快捷键
|
功能说明
|
|
Ctrl + C
|
终止当前运行的命令
|
|
Ctrl + Z
|
暂停当前进程
|
|
Ctrl + D
|
退出当前终端会话
|
|
Ctrl + L
|
清屏(相当于 clear 命令)
|
|
Ctrl + R
|
反向搜索命令历史
|
|
Tab
|
命令 / 文件名自动补全
|
|
↑ / ↓
|
浏览命令历史
|
|
Ctrl + Shift + "+"
|
放大字体
|
|
Ctrl + "-"
|
缩小字体
|
1.3 命令历史管理
查看命令历史:
重复执行历史命令:
- 使用 ↑ 和 ↓ 键浏览历史命令
- 使用 !n 执行第 n 条历史命令(n 为历史编号)
- 使用 !! 重复执行上一条命令
搜索历史命令:
- 按下 Ctrl + R 进入搜索模式
- 输入关键词查找相关命令
- 按 Enter 执行找到的命令
二、文件和目录管理命令
2.1 目录操作命令
ls - 列出目录内容
# 基本用法
ls
# 详细列表显示
ls -l
# 显示所有文件(包括隐藏文件)
ls -a
# 人类可读格式显示文件大小
ls -h
# 组合使用
ls -la
ls -lha
输出颜色说明:
- 白色:普通文件
- 蓝色:目录
- 绿色:可执行文件
- 青蓝色:符号链接
- 红色:压缩文件
- 洋红色:图片 / 视频文件
- 黄色:设备文件
cd - 切换目录
pwd - 显示当前目录
pwd
# 显示物理路径(不包含符号链接)
pwd -P
# 显示逻辑路径(包含符号链接)
pwd -L
2.2 文件操作命令
touch - 创建文件
# 创建空文件
touch filename.txt
# 同时创建多个文件
touch file1.txt file2.txt file3.txt
# 创建带有特定时间戳的文件
touch -t 202412251030 filename.txt
mkdir - 创建目录
# 创建单个目录
mkdir directory
# 创建多级目录
mkdir -p parent/child/grandchild
# 创建多个目录
mkdir dir1 dir2 dir3
# 显示创建过程
mkdir -v directory
rm - 删除文件 / 目录
# 删除文件
rm filename.txt
# 删除多个文件
rm file1.txt file2.txt
# 强制删除(不提示)
rm -f filename.txt
# 删除目录及其内容
rm -r directory
# 强制删除目录(危险操作)
rm -rf directory
⚠️ 警告:rm -rf 命令非常危险,可能导致数据永久丢失,请谨慎使用。
cp - 复制文件 / 目录
# 复制文件
cp source.txt destination.txt
# 复制文件到目录
cp file.txt /path/to/directory
# 复制目录及其内容
cp -r source_dir destination_dir
# 保留文件属性复制
cp -p source.txt destination.txt
# 交互式复制(覆盖前询问)
cp -i source.txt destination.txt
mv - 移动 / 重命名文件
# 重命名文件
mv oldname.txt newname.txt
# 移动文件到目录
mv file.txt /path/to/directory
# 移动多个文件
mv file1.txt file2.txt /path/to/directory
# 交互式移动
mv -i file.txt /path/to/directory
# 强制移动
mv -f file.txt /path/to/directory
2.3 文件内容查看
cat - 查看文件内容
# 查看文件内容
cat filename.txt
# 显示行号
cat -n filename.txt
# 合并文件
cat file1.txt file2.txt > combined.txt
# 创建文件并输入内容
cat > newfile.txt
more/less - 分页查看文件
# 分页查看文件
more filename.txt
less filename.txt
# less命令操作:
# 空格键 - 下一页
# Enter键 - 下一行
# b键 - 上一页
# q键 - 退出
head/tail - 查看文件开头 / 结尾
# 查看文件前10行
head filename.txt
# 查看文件前n行
head -n 20 filename.txt
# 查看文件后10行
tail filename.txt
# 实时查看文件更新
tail -f logfile.txt
3.1 find - 文件查找
# 在当前目录查找文件
find . -name "filename.txt"
# 查找所有txt文件
find . -name "*.txt"
# 按文件类型查找
find . -type f # 普通文件
find . -type d # 目录
find . -type l # 符号链接
# 按大小查找
find . -size +10M # 大于10MB的文件
find . -size -100k # 小于100KB的文件
# 按修改时间查找
find . -mtime -7 # 7天内修改的文件
find . -mtime +30 # 30天前修改的文件
# 查找并删除文件
find . -name "*.tmp" -delete
3.2 grep - 文本搜索
# 在文件中搜索文本
grep "search_term" filename.txt
# 递归搜索目录
grep -r "search_term" /path/to/directory
# 忽略大小写
grep -i "search_term" filename.txt
# 显示行号
grep -n "search_term" filename.txt
# 显示匹配的文件
grep -l "search_term" *.txt
四、系统管理命令
4.1 用户和权限管理
用户管理
# 查看当前用户
whoami
# 查看登录用户
who
w
# 切换用户
su username
# 以管理员身份执行命令
# 修改用户密码
passwd
passwd username
文件权限管理
# 查看文件权限
ls -l filename.txt
# 修改文件权限(符号模式)
chmod u+rwx filename.txt # 给所有者读写执行权限
chmod g+rw filename.txt # 给组用户读写权限
chmod o-r filename.txt # 取消其他用户读权限
# 修改文件权限(数字模式)
chmod 755 filename.txt # 所有者读写执行,其他人读执行
chmod 644 filename.txt # 所有者读写,其他人只读
chmod 777 filename.txt # 所有人都有读写执行权限
# 递归修改目录权限
chmod -R 755 directory
权限数字说明:
- r(读):4
- w(写):2
- x(执行):1
- 无权限:0
4.2 系统信息查看
系统基本信息
# 查看系统内核版本
uname -r
uname -a
# 查看Ubuntu版本
lsb_release -a
cat /etc/os-release
# 查看系统时间
date
timedatectl
# 查看硬件信息
lshw
lscpu
lsmem
# 查看正在运行的进程
ps aux
top
# 杀死进程
kill PID
kill -9 PID # 强制杀死进程
# 查找进程
ps aux | grep process_name
pgrep process_name
4.3 磁盘管理
磁盘空间查看
# 查看磁盘使用情况
df -h
# 查看目录占用空间
du -h /path/to/directory
# 查看当前目录各文件大小
du -sh *
# 查看最大的文件和目录
du -a | sort -nr | head -10
磁盘分区管理
五、软件包管理
5.1 APT 包管理
软件包更新
# 更新软件包列表
sudo apt update
# 升级已安装的软件包
sudo apt upgrade
# 升级系统版本
sudo apt dist-upgrade
# 自动清理不需要的软件包
sudo apt autoremove
sudo apt autoclean
软件安装与卸载
# 安装软件包
sudo apt install package_name
# 安装多个软件包
sudo apt install package1 package2 package3
# 卸载软件包
sudo apt remove package_name
# 彻底卸载软件包(包括配置文件)
sudo apt purge package_name
# 查找软件包
apt search package_name
apt show package_name
5.2 源码包安装
# 下载源码包
wget https://example.com/package.tar.gz
# 解压源码包
tar -xzf package.tar.gz
# 进入源码目录
cd package_directory
# 配置编译选项
./configure
# 编译源码
make
# 安装软件
sudo make install
六、压缩与打包
6.1 tar 命令使用
创建压缩包
# 创建tar包
tar -cvf archive.tar files/
# 创建tar.gz压缩包
tar -czvf archive.tar.gz files/
# 创建tar.bz2压缩包
tar -cjvf archive.tar.bz2 files/
# 创建tar.xz压缩包
tar -cJvf archive.tar.xz files/
解压压缩包
# 解压tar包
tar -xvf archive.tar
# 解压tar.gz压缩包
tar -xzvf archive.tar.gz
# 解压tar.bz2压缩包
tar -xjvf archive.tar.bz2
# 解压到指定目录
tar -xzvf archive.tar.gz -C /path/to/directory
6.2 其他压缩命令
# zip压缩
zip -r archive.zip files/
# zip解压
unzip archive.zip
# gzip压缩
gzip filename.txt
# gzip解压
gunzip filename.txt.gz
七、网络管理命令
7.1 网络连接信息
# 查看网络接口信息
ifconfig
ip addr
# 查看网络路由
route -n
ip route
# 查看DNS配置
cat /etc/resolv.conf
# 查看网络连接
netstat -tuln
ss -tuln
7.2 网络测试命令
# 测试网络连通性
ping google.com
ping -c 4 google.com # 发送4个包后停止
# 测试端口连通性
telnet hostname port
nc -zv hostname port
# 域名解析测试
nslookup domain.com
dig domain.com
# 网络速度测试
speedtest-cli
7.3 远程连接
# SSH连接
ssh username@hostname
ssh username@ip_address -p port
# SCP文件传输
scp local_file username@hostname:/remote/path
scp username@hostname:/remote/file local_path
# SFTP连接
sftp username@hostname
八、系统服务管理
8.1 服务控制
# 查看服务状态
sudo service service_name status
sudo systemctl status service_name
# 启动服务
sudo service service_name start
sudo systemctl start service_name
# 停止服务
sudo service service_name stop
sudo systemctl stop service_name
# 重启服务
sudo service service_name restart
sudo systemctl restart service_name
# 设置服务开机启动
sudo systemctl enable service_name
# 禁止服务开机启动
sudo systemctl disable service_name
8.2 系统进程管理
# 查看系统资源使用情况
top
htop
iotop
iftop
# 查看系统启动时间
uptime
# 查看系统负载
w
cat /proc/loadavg
# 查看系统日志
dmesg
tail -f /var/log/syslog
九、计划任务
9.1 crontab 使用
# 编辑当前用户的计划任务
crontab -e
# 查看当前用户的计划任务
crontab -l
# 删除当前用户的计划任务
crontab -r
# 编辑其他用户的计划任务
sudo crontab -u username -e
cron 时间格式:
* * * * * command
| | | | |
| | | | +----- 星期 (0-7) (0和7都代表星期日)
| | | +------- 月 (1-12)
| | +--------- 日 (1-31)
| +----------- 时 (0-23)
+------------- 分 (0-59)
常用示例:
# 每天凌晨2点执行备份
0 2 * * * /path/to/backup.sh
# 每小时执行一次脚本
0 * * * * /path/to/script.sh
# 每周一上午10点执行清理
0 10 * * 1 /path/to/cleanup.sh
# 每月1号和15号执行维护
0 0 1,15 * * /path/to/maintenance.sh
十、高级终端技巧
10.1 命令别名设置
# 设置临时别名
alias ll='ls -l'
alias la='ls -la'
alias ..='cd ..'
# 设置永久别名(添加到~/.bashrc)
echo "alias ll='ls -l'" >> ~/.bashrc
source ~/.bashrc
10.2 命令管道和重定向
# 命令管道
command1 | command2 | command3
# 输出重定向
command > output.txt # 覆盖文件
command >> output.txt # 追加到文件
command 2> error.txt # 错误输出重定向
command &> output.txt # 所有输出重定向
# 输入重定向
command < input.txt
# 同时重定向输入输出
command < input.txt > output.txt
10.3 后台任务管理
# 后台运行命令
command &
# 查看后台任务
jobs
# 切换到前台
fg %job_number
# 切换到后台
bg %job_number
# 后台运行命令(退出终端后继续运行)
nohup command &
10.4 环境变量配置
# 查看环境变量
echo $PATH
env
printenv
# 设置临时环境变量
export PATH=$PATH:/new/path
# 设置永久环境变量(添加到~/.bashrc)
echo "export PATH=$PATH:/new/path" >> ~/.bashrc
source ~/.bashrc
十一、重要目录结构
11.1 系统核心目录
/ # 根目录
/bin # 基本用户命令
/sbin # 系统管理命令
/etc # 系统配置文件
/home # 用户主目录
/root # 超级用户主目录
/var # 可变数据文件
/tmp # 临时文件
/usr # 用户程序
/lib # 共享库文件
/opt # 可选软件包
/mnt # 挂载点
/media # 可移动媒体挂载点
11.2 常用配置文件
~/.bashrc # Bash shell配置
~/.bash_profile # 用户登录配置
~/.bash_history # 命令历史
/etc/profile # 系统级环境配置
/etc/bashrc # 系统级Bash配置
/etc/fstab # 文件系统挂载配置
/etc/hosts # 本地主机名解析
十二、故障排除与维护
12.1 系统诊断
# 检查系统日志
dmesg | tail
tail -f /var/log/syslog
journalctl -f
# 检查磁盘错误
sudo fsck /dev/sda1
# 检查内存
sudo memtest86+
# 检查系统完整性
sudo apt check
sudo debsums -c
12.2 性能优化
# 清理系统垃圾
sudo apt autoremove
sudo apt autoclean
sudo apt clean
# 清理临时文件
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*
# 清理缩略图缓存
rm -rf ~/.cache/thumbnails/*
# 清理APT缓存
sudo apt clean
十三、常用命令速查表
13.1 文件操作速查表
|
命令
|
功能
|
示例
|
|
ls
|
列出目录内容
|
ls -la
|
|
cd
|
切换目录
|
cd /home/user
|
|
pwd
|
显示当前目录
|
pwd
|
|
cp
|
复制文件
|
cp file1.txt file2.txt
|
|
mv
|
移动文件
|
mv file.txt dir/
|
|
rm
|
删除文件
|
rm file.txt
|
|
mkdir
|
创建目录
|
mkdir newdir
|
|
rmdir
|
删除目录
|
rmdir emptydir
|
13.2 系统管理速查表
|
命令
|
功能
|
示例
|
|
sudo
|
管理员权限
|
sudo apt update
|
|
apt
|
包管理
|
sudo apt install package
|
|
systemctl
|
服务管理
|
sudo systemctl start apache2
|
|
ps
|
进程查看
|
ps aux
|
|
kill
|
杀死进程
|
kill PID
|
|
top
|
系统监控
|
top
|
|
df
|
磁盘空间
|
df -h
|
|
du
|
目录大小
|
du -sh *
|
13.3 网络管理速查表
|
命令
|
功能
|
示例
|
|
ifconfig
|
网络接口
|
ifconfig
|
|
ping
|
ping google.com
|
|
|
netstat
|
网络连接
|
netstat -tuln
|
|
ssh
|
远程连接
|
ssh user@host
|
|
scp
|
scp file user@host:
|
|
|
wget
|
下载文件
|
wget url
|
|
curl
|
HTTP 请求
|
curl url
|
十四、总结与进阶学习
14.1 学习建议
初学者阶段:
- 熟悉基本命令:掌握 ls、cd、pwd、cp、mv、rm 等基础命令
- 练习文件操作:多进行文件创建、复制、移动、删除等操作
- 学习权限管理:理解 Linux 文件权限系统
- 使用帮助文档:学会使用man command和command --help
进阶阶段:
- 掌握正则表达式:在 grep、sed、awk 中应用正则表达式
- 学习 Shell 脚本:自动化重复任务
- 系统管理技能:服务管理、用户管理、进程管理
- 网络配置:防火墙、DNS、DHCP 等网络服务配置
高级阶段:
- 性能调优:系统性能监控和优化
- 安全管理:防火墙配置、入侵检测
- 自动化运维:Ansible、Puppet 等自动化工具
- 容器技术:Docker、Kubernetes 等容器化技术
14.2 推荐学习资源
在线文档:
推荐书籍:
- 《鸟哥的 Linux 私房菜》
- 《Linux 命令行与 Shell 脚本编程大全》
- 《Ubuntu 从入门到精通》
实践建议:
- 在虚拟机中练习,避免损坏实际系统
- 多尝试,多犯错,多总结
- 参与开源项目,提升实战经验
- 加入 Linux 社区,与他人交流学习
"终端是 Linux 系统的灵魂,掌握终端命令是成为 Linux 高手的必经之路。"
阅读剩余
网站声明
本站内容可能存在水印或引流等信息,请擦亮眼睛自行鉴别;以免上当受骗;
本站提供的内容仅限用于学习和研究目的,不得将本站内容用于商业或者非法用途;