最实用的100个Linux命令 | AI生成和翻译
根据您作为一位高度技术型、自学成才的全栈工程师背景,熟悉Linux环境、算法问题解决,并精通云平台、容器和分布式系统,我为您量身定制了这份100个实用Linux命令清单,专用于Ubuntu系统。这些命令的选择契合您在全栈开发、移动工程、机器学习和系统管理方面的专业经验,同时支持您的自学研究及开源贡献。它们涵盖文件管理、系统监控、网络、开发、自动化和高级脚本编写,与您在TEKsystems的工作、过往职务及个人项目息息相关。
命令按类别清晰分组,附有简要说明,着重强调对您技能组合的实际应用。我优先选择了能提升生产力、调试效率和系统优化能力的命令,假设您熟悉基于终端的工作流,并可能将这些命令用于开发、部署或研究任务。如果您需要,我可以提供特定命令的示例或脚本,或根据您的工作流(如开发与系统管理任务)生成命令使用频率图表。请随时告知!
文件与目录管理(15个命令)
- ls - 列出目录内容(
ls -la查看详细信息及隐藏文件) - cd - 切换目录(
cd ~/projects导航至GitHub项目文件夹) - pwd - 显示当前工作目录(适用于脚本编写或路径验证)
- mkdir - 创建目录(
mkdir -p src/main/java创建嵌套项目结构) - rm - 删除文件或目录(
rm -rf temp/递归删除) - cp - 复制文件/目录(
cp -r src/ backup/项目备份) - mv - 移动/重命名文件(
mv old.java new.java代码重构) - touch - 创建空文件(
touch script.sh新建脚本) - find - 搜索文件(
find / -name "*.java"定位源文件) - locate - 快速按名称查找文件(
locate config.yaml查找配置) - du - 估算磁盘使用量(
du -sh /var/log检查日志大小) - df - 显示磁盘空间(
df -h人性化格式显示) - ln - 创建链接(
ln -s /path/to/project symlink创建快捷方式) - chmod - 修改文件权限(
chmod 755 script.sh设置可执行脚本) - chown - 修改文件属主(
chown user:group file部署时使用)
文本处理与操作(15个命令)
- cat - 显示文件内容(
cat log.txt快速查看日志) - less - 交互式查看文件(
less server.log浏览大型日志) - more - 分页显示文件输出(
more README.md查看文档) - head - 显示文件开头行(
head -n 10 data.csv数据预览) - tail - 显示文件末尾行(
tail -f app.log实时日志监控) - grep - 搜索文本模式(
grep -r "error" /var/log调试用) - awk - 处理文本列(
awk '{print $1}' access.log日志解析) - sed - 流编辑器(
sed 's/old/new/g' file文本替换) - cut - 提取行中字段(
cut -d',' -f1 data.csv处理CSV) - sort - 排序行(
sort -n data.txt数值排序) - uniq - 去除重复行(
sort file | uniq提取唯一项) - wc - 统计行数/词数/字符数(
wc -l code.java代码行数) - tr - 字符转换(
tr '[:lower:]' '[:upper:]' < file大小写转换) - tee - 同时输出到文件与标准输出(
cat input | tee output.txt记录日志) - diff - 比较文件差异(
diff old.java new.java代码变更)
系统监控与性能(15个命令)
- top - 交互式系统进程监控(实时CPU/内存使用情况)
- htop - 增强型进程查看器(
htop更佳可视化) - ps - 列出进程(
ps aux | grep java查看Java应用) - free - 查看内存使用(
free -m以MB为单位) - vmstat - 虚拟内存统计(
vmstat 1持续更新) - iostat - 监控I/O性能(
iostat -x磁盘统计) - uptime - 显示系统运行时间及负载(
uptime快速检查) - lscpu - 显示CPU信息(
lscpu查看系统规格) - lsblk - 列出块设备(
lsblk磁盘/分区详情) - iotop - 按进程监控磁盘I/O(
iotop性能调试) - netstat - 网络统计(
netstat -tuln查看监听端口) - ss - netstat现代替代品(
ss -tuln查看套接字) - dmesg - 查看内核消息(
dmesg | grep error系统问题排查) - sar - 收集系统活动数据(
sar -u 1CPU监控) - pmap - 进程内存映射(
pmap -x <pid>内存调试)
网络与连接(15个命令)
- ping - 测试网络连通性(
ping google.com可达性测试) - curl - 获取URL数据(
curl -X POST apiAPI测试) - wget - 下载文件(
wget file.tar.gz项目依赖) - netcat - 网络工具(
nc -l 12345简易服务器) - ifconfig - 网络接口信息(
ifconfig eth0IP详情) - ip - 现代网络配置(
ip addr接口详情) - nslookup - DNS查询(
nslookup domain.comDNS调试) - dig - 详细DNS查询(
dig domain.comDNS记录) - traceroute - 追踪网络路径(
traceroute google.com路由追踪) - telnet - 测试端口连通性(
telnet localhost 8080服务测试) - scp - 安全复制文件(
scp file user@server:/path文件传输) - rsync - 高效文件同步(
rsync -avz src/ dest/备份用) - ufw - 管理防火墙(
ufw allow 80Web服务器访问) - iptables - 配置防火墙规则(
iptables -L规则列表) - nmap - 网络扫描(
nmap localhost开放端口扫描)
开发与脚本编写(15个命令)
- gcc - 编译C程序(
gcc -o app code.c构建应用) - javac - 编译Java代码(
javac Main.javaJava项目) - java - 运行Java程序(
java -jar app.jar执行应用) - python3 - 运行Python脚本(
python3 script.py机器学习任务) - node - 运行Node.js(
node app.jsJavaScript项目) - npm - 管理Node包(
npm install前端依赖) - git - 版本控制(
git commit -m "update"GitHub仓库) - make - 构建项目(
make -f Makefile自动化构建) - mvn - Maven构建工具(
mvn packageJava项目) - gradle - Gradle构建工具(
gradle buildAndroid项目) - docker - 管理容器(
docker run -p 8080:8080 app部署用) - kubectl - 管理Kubernetes(
kubectl get pods集群管理) - virtualenv - Python虚拟环境(
virtualenv venv机器学习) - gdb - 调试程序(
gdb ./appC/Java调试) - strace - 追踪系统调用(
strace -p <pid>调试用)
软件包管理(10个命令)
- apt - 软件包管理器(
apt install vim安装软件) - apt-get - 高级包管理工具(
apt-get upgrade系统更新) - dpkg - 管理.deb包(
dpkg -i package.deb手动安装) - apt-cache - 查询包信息(
apt-cache search java包搜索) - snap - 管理snap包(
snap install code安装VS Code) - update-alternatives - 管理默认应用(
update-alternatives --config java) - add-apt-repository - 添加PPA(
add-apt-repository ppa:repo软件源) - apt-file - 查找包文件(
apt-file search /bin/bash调试用) - dpkg-query - 查询已安装包(
dpkg-query -l包列表) - apt-mark - 标记软件包(
apt-mark hold package防止升级)
系统管理与安全(15个命令)
- sudo - 以root权限运行命令(
sudo apt update管理任务) - su - 切换用户(
su - user切换账户) - passwd - 修改密码(
passwd user安全设置) - useradd - 添加用户(
useradd -m dev新建账户) - usermod - 修改用户(
usermod -aG sudo dev权限设置) - groupadd - 创建用户组(
groupadd developers访问控制) - chgrp - 修改组所有权(
chgrp -R dev /project团队协作) - crontab - 计划任务(
crontab -e自动化脚本) - systemctl - 管理服务(
systemctl start nginxWeb服务器) - journalctl - 查看系统日志(
journalctl -u docker服务日志) - who - 列出登录用户(
who服务器监控) - last - 显示登录历史(
last安全审计) - shutdown - 关机(
shutdown -h now系统关机) - reboot - 重启系统(
reboot更新后重启) - env - 显示环境变量(
env | grep PATH调试用)
针对您背景的特别说明
- 开发侧重:
git、mvn、docker和kubectl等命令契合您的全栈和容器化工作流,特别适用于您10个GitHub项目及云平台经验(AWS、Azure、阿里云) - 调试与性能:包含
strace、gdb、htop和dmesg等工具,满足您后端和系统调试需求(基于8年后端经验) - 网络功能:
curl、netcat和nmap等命令支持您的API和网络专业知识,适用于微服务或云部署测试 - 自动化:
crontab和rsync便于自动化备份或部署,与您的自由职业和企业角色相关 - 研究与学习:文本处理工具(
grep、awk、sed)适用于解析日志或数据集,支持您在视觉恢复领域的自学研究
如需深入了解任何类别(如awk或sed脚本示例、Docker工作流或云特定命令),或需要可视化命令使用频率的图表(按任务类型分类),请随时告知!您也可以查看GitHub作品集获取项目相关命令,或分享当前TEKsystems任务详情以获取更精准的建议。