技术分享 · 2024年4月18日

Ubuntu 常用命令

# 软件包管理
apt-cache search <keyword>	# 搜索软件包
apt show <package_name>	# 显示特定软件包的详细信息包括描述版本大小依赖项等
apt list --upgradable	# 列出所有可升级的软件包
apt autoremove	# 自动删除不再需要的软件包
apt clean	# 删除下载的软件包文件释放磁盘空间
apt-get install --reinstall <package_name>	# 重新安装特定软件包

# 系统信息和管理
uname -a	# 显示内核信息包括内核版本系统架构等
lsb_release -a	# 显示Ubuntu发行版的信息如发行版号描述等
df -h	# 显示磁盘空间使用情况
du -h <directory>	# 显示指定目录的磁盘使用情况

# 文件和目录操作
sudo	# 以超级用户权限运行命令例如sudo apt update用于更新软件包列表
ls	# 列出目录内容例如ls -l显示详细的列表包括权限所有者等信息
cd	# 更改当前目录例如cd /path/to/directory将进入指定目录
mv	# 移动文件或重命名文件例如mv file1 file2将文件file1重命名为file2
cp	# 复制文件例如cp file1 file2将文件file1复制到file2
rm	# 删除文件例如rm file1将删除file1文件
mkdir	# 创建新目录例如mkdir new_directory将在当前目录下创建一个名为new_directory的新目录
rmdir	# 删除空目录例如rmdir directory将删除名为directory的空目录

# 进程管理
ps	# 显示当前运行的进程例如ps aux显示所有进程的详细列表
kill	# 终止进程例如kill PID将终止具有指定PID的进程

# 网络操作
ifconfig	# 显示当前网络接口的配置信息包括IP地址MAC地址等
ip addr show	# 显示当前网络接口的配置信息与ifconfig类似
ip route show	# 显示系统的路由表包括默认网关和路由信息
ping	# 向另一个主机发送ICMP echo请求用于测试主机之间的连接
traceroute	# 跟踪数据包在网络中的路径显示每一跳的延迟
netstat	# 显示网络连接路由表和网络接口信息
ss	# 显示套接字统计信息类似于netstat
hostname	# 显示系统主机名
dig	# 查询DNS信息包括域名解析和DNS记录
nslookup	# 查询DNS信息类似于dig

# 文本处理
grep	# 用于在文件中搜索指定模式的文本例如grep pattern file.txt将在file.txt文件中搜索pattern
awk	# 用于对文本和数据进行处理和分析例如awk '{print $1}' file.txt将打印出file.txt文件中每行的第一个字段
sed	# 用于对文本进行流式编辑例如sed 's/old/new/g' file.txt将在file.txt文件中将所有old替换为new
find	# 用于在文件系统中查找文件和目录例如find /path/to/search -name "*.txt"将在指定路径下查找所有扩展名为.txt的文件
tar	# 用于创建查看和提取tar归档文件例如tar -czvf archive.tar.gz directory将目录打包为archive.tar.gz文件
chmod	# 用于更改文件或目录的权限例如chmod 755 file.txt将file.txt的权限更改为rwxr-xr-x
chown	# 用于更改文件或目录的所有者和组例如chown user:group file.txt将file.txt的所有者更改为user组更改为group

# 系统监控
top	# 动态显示系统中运行的进程和系统资源的使用情况按q退出
htop	# 类似于top但提供了更多的交互式功能和信息

# vi编辑器
# 启动vi编辑器vi filename如果文件不存在将创建一个新文件
# 切换到编辑模式按下i键插入模式),然后可以开始编辑文本
# 退出编辑模式按下Esc键退出插入模式
# 保存文件:在命令模式下输入:w然后按Enter键
# 保存并退出:在命令模式下输入:wq然后按Enter键
# 退出不保存:在命令模式下输入:q!然后按Enter键
# 移动光标使用箭头键或h)、j)、k)、l
# 删除字符在命令模式下按x
# 撤销在命令模式下按u
# 复制剪切和粘贴可以使用yy复制一行)、dd剪切一行和p粘贴
# 例如yy将当前行复制到缓冲区dd将删除当前行并将其保存到缓冲区p将缓冲区的内容粘贴到当前行后面
# 也可以使用数字+n例如,2yy来复制多行或者数字+n例如,2dd来剪切多行

# 压缩和解压缩
# gzip压缩或解压缩文件
# gunzip解压缩文件
# tar创建查看和提取tar归档文件
# 例如tar -czvf archive.tar.gz directory将目录打包为archive.tar.gz文件
# 例如tar -xzvf archive.tar.gz将解压缩archive.tar.gz文件
# zip压缩文件或目录为zip格式
# unzip解压缩zip文件
# 例如zip -r archive.zip directory将目录打包为archive.zip文件
# 例如unzip archive.zip将解压缩archive.zip文件

# 软件包安装和卸载
# dpkg用于管理.deb格式的软件包可以用来安装升级配置和删除软件包
# 例如dpkg -i package.deb将安装package.deb软件包
# 例如dpkg -r package将卸载名为package的软件包
# apt-get install <package_name>安装软件包及其依赖项
# apt-get remove <package_name>卸载软件包但保留配置文件
# apt-get purge <package_name>彻底卸载软件包包括配置文件
# apt-get autoremove自动删除不再需要的软件包及其依赖项
# apt-get update更新软件包列表
# apt-get upgrade升级已安装的软件包
# apt-get dist-upgrade升级发行版
# apt-get clean删除已下载的软件包文件释放磁盘空间
# apt-get autoclean删除较旧的软件包文件但保留最近的软件包文件
# aptitude一个交互式的软件包管理器类似于apt-get

# 执行脚本
# chmod   #用于更改文件或目录的权限
# 例如chmod +x script.sh将脚本文件script.sh设置为可执行
# ./   #用于执行当前目录下的可执行文件包括脚本
# 例如,./script.sh将执行名为script.sh的脚本文件
# bash   #用于执行Bash脚本
# 例如bash script.sh将执行名为script.sh的Bash脚本

用户和权限管理
useradd      #添加新用户
userdel      #删除用户
passwd       #更改用户密码
chmod        #更改文件或目录的权限
chown        #更改文件或目录的所有者和组