unbutu常用命令_unbuntu ssh
zhezhongyun 2025-09-06 16:08 13 浏览
重要提示:
- 打开终端: 在 Ubuntu 上,按 Ctrl + Alt + T 是最快打开终端窗口的方式。你也可以在应用程序菜单里搜索“Terminal”或“终端”。
- 命令结构: 通常命令格式是 命令 [选项] [参数] 。
- 命令: 你要执行的操作(如 ls , cd )。
- 选项 (Options): 通常以 - (短选项,如 -l ) 或 -- (长选项,如 --help ) 开头,用于修改命令的行为(如显示更多信息、按特定方式排序)。
- 参数 (Arguments): 命令作用的对象(如文件名、目录名)。
- 空格: 命令、选项、参数之间 必须 用空格分隔。
- 大小写敏感: Linux 命令和文件名是 区分大小写 的! File.txt 和 file.txt 被认为是两个不同的文件。
- 执行命令: 输入完命令后,按 Enter 键执行它 #技术分享 #掘金。
- 提示符: username@computername:~$ 是常见的提示符。
- ~ 波浪号代表你的 家目录 ( /home/你的用户名 ),是你登录后默认所在的位置,也是你个人文件的存储地。
- $ 表示你当前是普通用户。如果是 # ,则表示你是超级用户 ( root ),拥有最高权限,操作要非常小心!
- 命令历史: 按键盘的 ↑ (上箭头) 和 ↓ (下箭头) 键可以浏览之前输入过的命令,按 Enter 可以再次执行。按 history 命令可以查看所有历史记录。
- 自动补全: 输入命令、文件名或目录名的前几个字母后,按 Tab 键,系统会自动补全。如果按一次没反应,可能是存在多个匹配项,再按一次 Tab 会显示所有匹配项。 强烈建议多用 Tab 键! 它能节省时间并减少拼写错误。
- 中断命令: 如果一个命令运行时间太长或你想停止它,按 Ctrl + C 。
- 清除屏幕: 输入 clear 或按 Ctrl + L 可以清空当前终端屏幕,让界面更清爽。
一、 导航与查看 (Navigation & Looking Around)
- pwd (Print Working Directory) - 显示当前目录
- 功能: 告诉你你现在“站”在文件系统的哪个文件夹里。
- 用法: pwd
- 示例:
text
user@ubuntu:~$ pwd
/home/user
- ls (List) - 列出目录内容
- 功能: 查看当前目录下有哪些文件和子文件夹。
- 常用选项:
- -l : 使用长格式列出详细信息(权限、所有者、大小、修改时间)。
- -a : 显示所有文件,包括隐藏文件(以 . 开头的文件,如 .bashrc )。
- -h : 与 -l 一起用,以人类可读的格式显示文件大小(如 K, M, G)。
- --color : 通常默认开启,用不同颜色区分文件类型(目录、普通文件、可执行文件等)。
- 用法: ls [选项] [目录名] (如果不指定目录名,默认查看当前目录)
- 示例:
text
user@ubuntu:~$ ls
user@ubuntu:~$ ls -l
user@ubuntu:~$ ls -la
user@ubuntu:~$ ls -lh /etc
- cd (Change Directory) - 切换目录
- 功能: 从一个文件夹“走进”另一个文件夹。
- 特殊符号:
- . :代表当前目录(很少单独用 cd . ,但在其他命令中很有用)。
- .. :代表当前目录的 上一级目录 (父目录)。
- ~ :代表你的家目录 ( /home/你的用户名 )。
- - :代表 上一次 你所在的目录(在两个目录间来回切换很方便)。
- 用法: cd [目录路径]
- 示例:
text
user@ubuntu:~$ cd Documents
user@ubuntu:~/Documents$ cd ..
user@ubuntu:~$ cd /usr/bin
user@ubuntu:/usr/bin$ cd ~
user@ubuntu:~$ cd -
- cat (Concatenate) - 查看文件内容
- 功能: 在终端里 一次性显示 整个文件的内容。适合查看 短小的文本文件 (如配置文件、日志片段、脚本代码)。如果文件很长,内容会快速滚过屏幕,你可能只能看到最后一部分。
- 用法: cat [文件名]
- 示例:
text
user@ubuntu:~$ cat hello.txt
- 查看长文件的替代命令: less (推荐) 或 more 。它们允许你分页浏览,按 空格 翻页,按 q 退出。
- less - 分页查看文件内容
- 功能: 逐屏(分页)查看文件内容,非常适合浏览 长文件 。比 more 功能更强(支持向前向后翻)。
- 用法: less [文件名]
- 常用操作 (在 less 查看界面中):
- 空格 / Page Down : 向下翻一页。
- b / Page Up : 向上翻一页。
- ↑ / ↓ : 向上/向下移动一行。
- /关键词 : 在文件中 向下 搜索关键词(如 /error 找 error),按 n 找下一个匹配项,按 N 找上一个。
- ?关键词 : 在文件中 向上 搜索关键词。
- q : 退出 less 。
- 示例:
text
user@ubuntu:~$ less /var/log/syslog
二、 文件与目录操作 (File & Directory Operations)
- mkdir (Make Directory) - 创建新目录
- 功能: 新建一个文件夹(目录)。
- 常用选项:
- -p : 递归创建目录。如果需要创建的目录的父目录不存在,会一并创建。例如要创建 project/code/src ,但 project/code 不存在,用 -p 就能一次性创建整个路径。
- 用法: mkdir [选项] 目录名
- 示例:
text
user@ubuntu:~$ mkdir new_folder
user@ubuntu:~$ mkdir -p project/docs
- touch - 创建空文件或更新文件时间戳
- 功能:
- 如果文件 不存在 ,创建一个新的 空文件 。
- 如果文件 已存在 ,更新该文件的“最后修改时间”为当前时间(文件内容不变)。
- 用法: touch 文件名
- 示例:
text
user@ubuntu:~$ touch new_file.txt
user@ubuntu:~$ touch existing_file
- cp (Copy) - 复制文件或目录
- 功能: 复制文件或目录到另一个位置。
- 常用选项:
- -r 或 -R (Recursive): 必须 在复制 目录 时使用,表示递归复制目录及其所有内容(子目录和文件)。
- -i (Interactive): 如果目标位置存在同名文件,在覆盖前 询问确认 。 强烈建议新手加上 -i 或养成习惯,避免意外覆盖!
- -v (Verbose): 显示复制过程的详细信息(复制了什么文件)。
- 用法: cp [选项] 源文件或目录 目标文件或目录
- 示例:
text
user@ubuntu:~$ cp file1.txt file1_backup.txt
user@ubuntu:~$ cp -i important.doc ~/Documents/
user@ubuntu:~$ cp -rv my_project/ backups/
- mv (Move) - 移动或重命名文件/目录
- 功能:
- 移动: 将文件或目录从一个位置 移动 到另一个位置。
- 重命名: 如果在 同一个目录 下操作,效果就是 重命名 。
- 常用选项:
- -i (Interactive): 如果目标位置存在同名文件,在覆盖前 询问确认 。 同样强烈建议新手使用!
- -v (Verbose): 显示移动过程的详细信息。
- 用法: mv [选项] 源文件或目录 目标文件或目录
- 示例:
text
user@ubuntu:~$ mv oldname.txt newname.txt
user@ubuntu:~$ mv report.pdf ~/Documents/
user@ubuntu:~$ mv -i data/ /media/usbdrive/ # 移动 data 目录到 U 盘挂载点 (覆盖前询问)
- rm (Remove) - 删除文件或目录
- 功能: 永久删除 文件或目录。 Linux 命令行删除的文件通常无法从回收站恢复!请极其谨慎!
- 常用选项:
- -r 或 -R (Recursive): 必须 在删除 目录 时使用,表示递归删除目录及其所有内容(子目录和文件)。 非常危险!
- -f (Force): 强制删除,不提示确认。 极其危险!慎用!
- -i (Interactive): 删除前 询问确认 。 强烈建议新手始终加上 -i 或至少用于 -r 操作!
- 用法: rm [选项] 文件或目录... (可以一次删除多个)
- 示例:
text
user@ubuntu:~$ rm -i unwanted_file.txt
user@ubuntu:~$ rm *.tmp
user@ubuntu:~$ rm -ri old_directory
- 警告: rm -rf / 或 rm -rf * 在错误的位置执行会导致灾难性后果(删除所有文件或系统文件)! 执行 rm -r 前务必用 pwd 确认当前目录是否正确!
- file - 查看文件类型
- 功能: 告诉你一个文件是什么类型的(文本文件?图片?可执行程序?目录?)。
- 用法: file 文件名
- 示例:
text
user@ubuntu:~$ file picture.jpg
picture.jpg: JPEG image data, ...
user@ubuntu:~$ file myscript.sh
myscript.sh: Bourne-Again shell script, ...
user@ubuntu:~$ file somefile
somefile: ASCII text
三、 系统信息与进程管理 (System Info & Processes)
- uname - 显示系统信息
- 功能: 显示关于操作系统和硬件的基本信息。
- 常用选项:
- -a (All): 显示所有信息(最常用)。
- -s (Kernel name): 显示内核名称(如 Linux)。
- -r (Kernel release): 显示内核版本号。
- -m (Machine): 显示硬件架构(如 x86_64)。
- 用法: uname [选项]
- 示例:
text
user@ubuntu:~$ uname -a
Linux ubuntu 5.15.0-86-generic
- df (Disk Free) - 显示磁盘空间使用情况
- 功能: 查看文件系统(硬盘分区)的总空间、已用空间、剩余空间和挂载点。
- 常用选项:
- -h (Human-readable): 以人类可读的单位显示大小(G, M)。
- 用法: df [选项]
- 示例:
text
user@ubuntu:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 20G 10G 9.0G 53% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
... ... ... ... ... ...
- du (Disk Usage) - 估算文件/目录占用的磁盘空间
- 功能: 查看指定文件或目录(及其子目录)占用了多少磁盘空间。
- 常用选项:
- -h (Human-readable): 以人类可读的单位显示大小。
- -s (Summarize): 只显示总计大小,不显示每个子目录的详情。
- --max-depth=N : 显示深入到第 N 级子目录的汇总。
- 用法: du [选项] [文件或目录...] (默认显示当前目录所有内容的大小)
- 示例:
text
user@ubuntu:~$ du -sh Documents/
1.5G Documents/
user@ubuntu:~$ du -h --max-depth=1 /var/log
- top / htop - 动态查看系统进程和资源占用
- 功能: 实时显示系统中运行的进程、CPU 使用率、内存使用情况、负载等系统状态。 htop 是 top 的增强版(颜色更丰富,操作更方便,通常需要额外安装: sudo apt install htop )。
- 用法: 直接输入 top 或 htop
- 常用操作 (在 top / htop 界面中):
- q : 退出。
- k (top) / F9 (htop): 终止选中的进程 (kill)。需要输入进程 ID (PID)。
- M : 按内存使用量排序。
- P : 按 CPU 使用率排序。
- u : 只显示某个用户的进程。
- F (htop): 选择排序字段。
- / (htop): 搜索进程。
- 示例:
text
user@ubuntu:~$ top
user@ubuntu:~$ htop
- ps (Process Status) - 查看当前进程快照
- 功能: 显示当前时刻系统运行的进程信息。默认只显示当前用户在当前终端启动的进程。
- 常用选项:
- aux (组合选项最常用): 显示 所有用户 的所有进程详细信息。
- -ef : 另一种显示所有进程的格式。
- -u username : 显示指定用户的进程。
- 用法: ps [选项]
- 示例:
text
user@ubuntu:~$ ps
user@ubuntu:~$ ps aux
user@ubuntu:~$ ps -u bob
- kill / killall - 终止进程
- 功能: 向运行中的进程发送信号,通常用于终止进程。需要知道进程的 ID (PID) 或名称。
- 常用信号:
- 15 (SIGTERM): 默认信号 ,请求进程正常终止(让它自己清理后退出)。
- 9 (SIGKILL): 强制终止 信号。进程会被立即杀死,没有机会清理。 仅在进程不响应 15 时使用。
- 用法:
- kill [信号] PID (通过进程 ID 杀进程)
- killall [信号] 进程名 (通过进程名称杀所有同名进程) 使用要谨慎!
- 示例:
text
user@ubuntu:~$ kill 1234
user@ubuntu:~$ kill -9 5678
user@ubuntu:~$ killall -9 firefox
- 如何找 PID? 通常先用 ps aux | grep 进程名 或 pgrep 进程名 查找。
四、 网络相关 (Networking)
- ping - 测试网络连通性
- 功能: 向指定的网络主机(如 IP 地址或域名)发送 ICMP 回显请求包,测试你的电脑是否能到达该主机以及网络延迟。按 Ctrl+C 停止。
- 用法: ping [选项] 目标主机
- 示例:
text
user@ubuntu:~$ ping google.com
user@ubuntu:~$ ping 8.8.8.8
- ifconfig (旧) / ip addr (新) - 查看和配置网络接口
- 功能: 显示和配置网络接口(网卡)的信息,如 IP 地址、MAC 地址、状态等。
- 说明: ifconfig 是比较老的命令,在最新的 Ubuntu 中可能默认没有安装(但通常可以安装 net-tools 包获得)。推荐使用更新的 ip 命令。
- 用法:
- 查看所有接口信息: ifconfig 或 ip addr (或 ip a )
- 查看特定接口: ifconfig eth0 或 ip addr show eth0
- 示例:
text
user@ubuntu:~$ ip addr
user@ubuntu:~$ ifconfig
- wget - 从网络下载文件
- 功能: 在命令行中直接从互联网下载文件(支持 HTTP, HTTPS, FTP)。
- 常用选项:
- -O 文件名 : 指定下载后保存的文件名。
- -c : 继续中断的下载(断点续传)。
- 用法: wget [选项] [URL]
- 示例:
text
user@ubuntu:~$ wget https://example.com/largefile.zip
user@ubuntu:~$ wget -O ubuntu.iso https://.../ubuntu-22.04.iso
五、 权限管理 (Permissions - 稍微进阶,但很重要)
- chmod (Change Mode) - 修改文件/目录权限
- 功能: 改变文件或目录的访问权限(读 r、写 w、执行 x)。Linux 权限系统是核心安全机制之一。
- 理解权限: 权限分为三组: 用户 (u) (文件所有者)、 组 (g) 、 其他 (o) (其他人)。每组有 r, w, x 三种权限。
- 数字模式 (常用): 用三位八进制数表示权限 (如 755 , 644 )。
- r (读) = 4
- w (写) = 2
- x (执行) = 1
- 无权限 = 0
- 每组权限是三个值的和:
- 7 (4+2+1) = rwx
- 6 (4+2+0) = rw-
- 5 (4+0+1) = r-x
- 4 (4+0+0) = r--
- 0 (0+0+0) = ---
- 符号模式: 使用 u/g/o/a (用户/组/其他/所有) 和 +/-/= (添加/移除/设置) 以及 r/w/x 。
- 用法:
- 数字模式: chmod [选项] 数字权限 文件或目录
- 符号模式: chmod [选项] [ugoa...][[+-=][rwx...]...] 文件或目录
- 示例:
text
user@ubuntu:~$ chmod 755 my_script.sh
user@ubuntu:~$ chmod 644 config.txt
user@ubuntu:~$ chmod u+x my_script.sh user@ubuntu:~$ chmod go-rw secret.txt
- sudo (SuperUser DO) - 以超级用户权限执行命令
- 功能: 允许被授权的普通用户临时以超级用户 ( root ) 的身份执行命令。 执行需要管理员权限的操作时必须使用 (如安装软件、修改系统文件)。
- 重要: 使用 sudo 时要格外小心,错误的命令可能导致系统损坏!只有在你理解命令含义时才使用。
- 用法: sudo [命令]
- 示例:
text
user@ubuntu:~$ sudo apt update
user@ubuntu:~$ sudo nano /etc/fstab
- 注意: 第一次使用 sudo 或在长时间未使用后使用,系统会要求输入 当前用户的登录密码 (输入时密码不会显示星号,这是正常的)。
- passwd - 修改用户密码
- 功能: 修改当前登录用户的密码。
- 用法: passwd
- 示例:
text
user@ubuntu:~$ passwd
Changing password for user.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
- 修改其他用户密码 (需要sudo): sudo passwd username
六、 软件包管理 (Package Management - Ubuntu 核心)
- apt (Advanced Package Tool) - 软件包管理工具
- 功能: Ubuntu/Debian 系统上 最重要 的命令之一!用于安装、更新、升级、删除软件包。
- 常用子命令:
- sudo apt update : 刷新软件包索引 。从配置的软件源(仓库)下载最新的软件包列表信息。在安装或升级软件包 之前 , 强烈建议 先运行此命令。它不会升级已安装的软件。
- sudo apt upgrade : 升级所有可升级的软件包 。根据 apt update 获取的信息,将系统中已安装的软件包升级到仓库中的最新版本。通常会要求确认。
- sudo apt install 软件包名 : 安装 指定的软件包(以及它依赖的其他包)。
- sudo apt remove 软件包名 : 卸载 指定的软件包,但 保留 其配置文件。
- sudo apt purge 软件包名 : 完全卸载 指定的软件包, 同时删除 其配置文件。
- sudo apt autoremove : 自动删除 不再需要的依赖包。在卸载软件后运行,可以清理掉那些为了满足依赖关系而自动安装、但现在没有任何其他软件依赖的包。
- apt search 关键词 : 搜索 软件包仓库中名称或描述包含关键词的软件包(不需要 sudo )。
- apt show 软件包名 : 显示 指定软件包的详细信息(版本、描述、依赖等,不需要 sudo )。
- apt list --upgradable : 列出所有可升级的软件包(在 apt update 后使用,不需要 sudo )。
- 用法: sudo apt [子命令] [选项] [软件包名]
- 示例:
text
user@ubuntu:~$ sudo apt update
user@ubuntu:~$ sudo apt upgrade
user@ubuntu:~$ sudo apt install htop vlc
user@ubuntu:~$ sudo apt remove --purge oldapp
user@ubuntu:~$ sudo apt autoremove
user@ubuntu:~$ apt search "web browser"
七、 获取帮助 (Getting Help)
- man (Manual) - 查看命令手册
- 功能: 查看 Linux 命令、函数、配置文件等的 官方详细手册 。这是学习命令最权威、最全面的方式!
- 用法: man [手册页名称] (手册页名称通常是命令名)
- 在 man 页面中的操作:
- 空格 / Page Down : 向下翻页。
- b / Page Up : 向上翻页。
- /关键词 : 在手册页中 向下 搜索关键词(如 /option 找 option),按 n 找下一个匹配项,按 N 找上一个。
- q : 退出 man 。
- 示例:
text
user@ubuntu:~$ man ls
user@ubuntu:~$ man apt
user@ubuntu:~$ man chmod
- 命令名 --help 或 命令名 -h - 查看命令简要帮助
- 功能: 快速查看命令支持的选项和基本用法摘要。比 man 更简洁,适合快速查阅。
- 用法: 命令名 --help 或 命令名 -h
- 示例:
text
user@ubuntu:~$ ls --help
user@ubuntu:~$ cp -h
相关推荐
- perl基础——循环控制_principle循环
-
在编程中,我们往往需要进行不同情况的判断,选择,重复操作。这些时候我们需要对简单语句来添加循环控制变量或者命令。if/unless我们需要在满足特定条件下再执行的语句,可以通过if/unle...
- CHAPTER 2 The Antechamber of M de Treville 第二章 特雷维尔先生的前厅
-
CHAPTER1TheThreePresentsofD'ArtagnantheElderCHAPTER2TheAntechamber...
- CHAPTER 5 The King'S Musketeers and the Cardinal'S Guards 第五章 国王的火枪手和红衣主教的卫士
-
CHAPTER3TheAudienceCHAPTER5TheKing'SMusketeersandtheCardinal'SGuard...
- CHAPTER 3 The Audience 第三章 接见
-
CHAPTER3TheAudienceCHAPTER3TheAudience第三章接见M.DeTrévillewasatt...
- 别搞印象流!数据说明谁才是外线防守第一人!
-
来源:Reddit译者:@assholeeric编辑:伯伦WhoarethebestperimeterdefendersintheNBA?Here'sagraphofStea...
- V-Day commemorations prove anti-China claims hollow
-
People'sLiberationArmyhonorguardstakepartinthemilitaryparademarkingthe80thanniversary...
- EasyPoi使用_easypoi api
-
EasyPoi的主要特点:1.设计精巧,使用简单2.接口丰富,扩展简单3.默认值多,writelessdomore4.springmvc支持,web导出可以简单明了使用1.easypoi...
- 关于Oracle数据库12c 新特性总结_oracle数据库12514
-
概述今天主要简单介绍一下Oracle12c的一些新特性,仅供参考。参考:http://docs.oracle.com/database/121/NEWFT/chapter12102.htm#NEWFT...
- 【开发者成长】JAVA 线上故障排查完整套路!
-
线上故障主要会包括CPU、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。同时例如jstack、jmap等工具也是不囿于一个方面的问题...
- 使用 Python 向多个地址发送电子邮件
-
在本文中,我们将演示如何使用Python编程语言向使用不同电子邮件地址的不同收件人发送电子邮件。具体来说,我们将向许多不同的人发送电子邮件。使用Python向多个地址发送电子邮件Python...
- 提高工作效率的--Linux常用命令,能够决解95%以上的问题
-
点击上方关注,第一时间接受干货转发,点赞,收藏,不如一次关注评论区第一条注意查看回复:Linux命令获取linux常用命令大全pdf+Linux命令行大全pdf为什么要学习Linux命令?1、因为Li...
- linux常用系统命令_linux操作系统常用命令
-
系统信息arch显示机器的处理器架构dmidecode-q显示硬件系统部件-(SMBIOS/DMI)hdparm-i/dev/hda罗列一个磁盘的架构特性hdparm-tT/dev/s...
- 小白入门必知必会-PostgreSQL-15.2源码编译安装
-
一PostgreSQL编译安装1.1下载源码包在PostgreSQL官方主页https://www.postgresql.org/ftp/source/下载区选择所需格式的源码包下载。cd/we...
- Linux操作系统之常用命令_linux系统常用命令详解
-
Linux操作系统一、常用命令1.系统(1)系统信息arch显示机器的处理器架构uname-m显示机器的处理器架构uname-r显示正在使用的内核版本dmidecode-q显示硬件系...
- linux网络命名空间简介_linux 网络相关命令
-
此篇会以例子的方式介绍下linux网络命名空间。此例中会创建两个networknamespace:nsa、nsb,一个网桥bridge0,nsa、nsb中添加网络设备veth,网络设备间...
- 一周热门
- 最近发表
-
- perl基础——循环控制_principle循环
- CHAPTER 2 The Antechamber of M de Treville 第二章 特雷维尔先生的前厅
- CHAPTER 5 The King'S Musketeers and the Cardinal'S Guards 第五章 国王的火枪手和红衣主教的卫士
- CHAPTER 3 The Audience 第三章 接见
- 别搞印象流!数据说明谁才是外线防守第一人!
- V-Day commemorations prove anti-China claims hollow
- EasyPoi使用_easypoi api
- 关于Oracle数据库12c 新特性总结_oracle数据库12514
- 【开发者成长】JAVA 线上故障排查完整套路!
- 使用 Python 向多个地址发送电子邮件
- 标签列表
-
- HTML 教程 (33)
- HTML 简介 (35)
- HTML 实例/测验 (32)
- HTML 测验 (32)
- JavaScript 和 HTML DOM 参考手册 (32)
- HTML 拓展阅读 (30)
- HTML文本框样式 (31)
- HTML滚动条样式 (34)
- HTML5 浏览器支持 (33)
- HTML5 新元素 (33)
- HTML5 WebSocket (30)
- HTML5 代码规范 (32)
- HTML5 标签 (717)
- HTML5 标签 (已废弃) (75)
- HTML5电子书 (32)
- HTML5开发工具 (34)
- HTML5小游戏源码 (34)
- HTML5模板下载 (30)
- HTTP 状态消息 (33)
- HTTP 方法:GET 对比 POST (33)
- 键盘快捷键 (35)
- 标签 (226)
- HTML button formtarget 属性 (30)
- opacity 属性 (32)
- transition 属性 (33)