初级程序员必备的十大技能之开发工具熟练使用(二)

简介: 教程来源 https://zlpow.cn/ 命令行是程序员高效开发的“第二语言”:涵盖文件操作、进程管理、网络诊断、管道重定向、Shell脚本及终端增强工具,助你快速定位问题、批量处理任务、自动化部署,全面提升系统操控力与生产力。

二、命令行与终端:程序员的“第二语言”

2.1 为什么需要命令行?
image.png
2.2 终端基础命令

# ===== 文件与目录操作 =====

# 查看当前位置
pwd                         # /Users/username/projects

# 列出文件
ls                          # 简单列表
ls -la                      # 详细信息(包括隐藏文件)
ls -lh                      # 人类可读的文件大小
ls -ltr                     # 按时间排序

# 切换目录
cd ~                        # 回家目录
cd /                        # 到根目录
cd -                        # 回到上一个目录
cd ../..                    # 上两级目录

# 创建文件/文件夹
touch file.txt              # 创建空文件
mkdir folder                # 创建文件夹
mkdir -p parent/child/grandchild  # 创建多级目录

# 删除
rm file.txt                 # 删除文件
rm -rf folder               # 强制删除文件夹(危险!)
rmdir empty_folder          # 删除空文件夹

# 复制
cp source.txt dest.txt      # 复制文件
cp -r source_dir dest_dir   # 复制文件夹

# 移动/重命名
mv old.txt new.txt          # 重命名
mv file.txt ../              # 移动

# 查看文件内容
cat file.txt                # 完整输出
less file.txt               # 分页查看(q 退出)
head -20 file.txt           # 前20行
tail -20 file.txt           # 后20行
tail -f log.txt             # 实时跟踪文件变化

# 查找文件
find . -name "*.js"         # 查找所有 JS 文件
find . -type f -size +100M  # 大于 100M 的文件
find . -mtime -7            # 7天内修改的文件

# 搜索文件内容
grep "error" log.txt        # 在文件中搜索
grep -r "TODO" ./src        # 递归搜索目录
grep -n "function" app.js   # 显示行号
grep -i "hello" file.txt    # 忽略大小写

# ===== 系统与进程 =====

# 查看进程
ps aux                      # 所有进程
ps aux | grep node          # 查找 node 进程
top                         # 实时监控
htop                        # 更友好的 top

# 杀死进程
kill -9 1234                # 强制杀死 PID 1234
killall node                # 杀死所有 node 进程

# 查看端口占用
lsof -i :3000               # 查看 3000 端口
netstat -an | grep 3000

# 磁盘使用
df -h                       # 磁盘分区使用情况
du -sh *                    # 当前目录各文件夹大小
du -sh .                    # 当前目录总大小

# ===== 网络相关 =====

# 网络诊断
ping google.com             # 测试连通性
curl https://api.example.com/users  # 发送 HTTP 请求
wget https://example.com/file.zip   # 下载文件

# SSH 远程连接
ssh user@192.168.1.100      # 连接远程服务器
ssh -i key.pem user@server  # 使用密钥文件

# 传输文件
scp local.txt user@server:/remote/path   # 上传
scp user@server:/remote/file local.txt   # 下载

# ===== 压缩解压 =====

# tar(最常用)
tar -czvf archive.tar.gz folder/   # 压缩
tar -xzvf archive.tar.gz           # 解压

# zip
zip -r archive.zip folder/         # 压缩
unzip archive.zip                  # 解压

2.3 管道与重定向
管道 | 是命令行的超能力,可以把一个命令的输出作为另一个命令的输入。

# 基础管道
ls -la | grep "README"      # 列出文件并筛选
cat log.txt | wc -l         # 统计行数
ps aux | grep node | wc -l  # 统计 node 进程数

# 重定向
echo "hello" > file.txt     # 覆盖写入
echo "world" >> file.txt    # 追加写入
cat < file.txt              # 从文件读入

# 组合应用
# 找出最常用的 10 个命令
history | awk '{print $2}' | sort | uniq -c | sort -rn | head -10

# 统计访问日志中的 IP
cat access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head -20

# 查找最近修改的文件
find . -type f -mtime -1 | xargs ls -lt

2.4 Shell 脚本基础

#!/bin/bash
# 文件名:setup-project.sh

# 变量
PROJECT_NAME=$1
if [ -z "$PROJECT_NAME" ]; then
    echo "用法: ./setup-project.sh <项目名>"
    exit 1
fi

# 颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
NC='\033[0m' # No Color

echo -e "${GREEN}开始创建项目: $PROJECT_NAME${NC}"

# 创建目录结构
mkdir -p $PROJECT_NAME/{src,test,docs}
cd $PROJECT_NAME

# 初始化 Git
git init
echo "# $PROJECT_NAME" > README.md

# 创建 .gitignore
cat > .gitignore << EOF
node_modules/
dist/
.env
.DS_Store
EOF

# 根据参数选择模板
if [ "$2" == "react" ]; then
    npm init -y
    npm install react react-dom
    echo "React 项目创建完成"
elif [ "$2" == "node" ]; then
    npm init -y
    echo "Node.js 项目创建完成"
else
    echo "普通项目创建完成"
fi

echo -e "${GREEN}✅ 项目创建完成!${NC}"

2.5 终端增强工具

# 1. Oh My Zsh(让终端更好用)
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# 2. 常用插件(.zshrc)
plugins=(
  git                # Git 别名
  zsh-autosuggestions    # 命令建议
  zsh-syntax-highlighting  # 语法高亮
  autojump           # 快速跳转目录
  history            # 历史命令搜索
)

# 3. 效率命令
j project-name       # 跳转到项目目录(autojump)
ctrl+r               # 搜索历史命令
ctrl+a / ctrl+e      # 行首/行尾
ctrl+u / ctrl+k      # 删除到行首/行尾

来源:
https://rvtst.cn/

相关文章
|
27天前
|
人工智能 监控 测试技术
AI 测试用例审核 Skill:把用例评审从“凭经验”变成“可评分”
本文介绍一种AI驱动的测试用例审核Skill,将资深测试负责人的评审经验封装为可复用、可量化、可批量执行的标准能力。它能自动检查逻辑完整性、预期明确性、前置条件、PRD覆盖度及边界异常,逐条评分、定位问题、给出修改建议,助力团队提升用例质量、统一评审标准、加速新人成长。
|
28天前
|
XML 前端开发 程序员
初级程序员必备的十大技能之 API 接口与前后端联调(一)
教程来源 http://qeext.cn/ 本文系统讲解API设计规范(RESTful/GraphQL)、HTTP协议核心(方法、状态码、头信息)、前后端联调流程及调试工具,助你打造标准化、高可用接口,打破前后端协作孤岛。
|
5月前
|
Web App开发 人工智能 JSON
别再手写提示词!需求澄清 + 50多专业提示词框架自动匹配,效率提升10倍!
Prompt Optimizer 是一款智能提示词优化工具,内置50+专业框架,支持需求澄清、歧义确认与自动匹配,兼容多模型,显著提升AI输出质量并降低API成本。(239字)
别再手写提示词!需求澄清 + 50多专业提示词框架自动匹配,效率提升10倍!
|
27天前
|
前端开发 JavaScript 程序员
初级程序员必备的十大技能之开发工具熟练使用(三)
教程来源 https://bncne.cn/ 浏览器开发者工具是前端调试核心利器,涵盖Elements(实时编辑DOM/CSS)、Console(日志、断点、DOM操作)、Sources(多类型断点与作用域调试)、Network(请求分析与模拟)、Performance(性能指标与火焰图)及Application(存储管理)六大面板,全面提升开发效率。
|
27天前
|
前端开发 程序员 开发工具
初级程序员必备的十大技能之开发工具熟练使用(四)
教程来源 https://tmywi.cn/ VS Code深度集成Git:快捷键操作、冲突可视化解决;GitLens增强代码溯源与历史追踪;配合高效命令行别名与撤销技巧;辅以Node/前端多维调试方案,全面提升开发效能。
|
25天前
|
机器学习/深度学习 数据采集 算法
PCB电路板缺陷检测数据集分享(适用于YOLO系列深度学习检测任务)
本数据集专为PCB缺陷检测设计,含1500张1024×1024图像(训练集1000张、验证集500张),标注6类常见缺陷(缺失孔、鼠咬痕、开路等),采用YOLO格式,开箱即用,适配YOLOv5/v8等主流模型,助力工业质检与AI研发。(239字)
248 6
|
27天前
|
Linux 程序员 网络安全
初级程序员必备的十大技能之基础 Linux 命令(一)
教程来源 https://qcycj.cn/ 本文系统讲解程序员必备的Linux核心命令,涵盖文件操作、文本处理、权限管理、进程与网络工具等,结合原理、参数详解及实战案例,助你高效部署、排查与运维——无论用Windows还是macOS,Linux都是程序员不可或缺的“第二操作系统”。
|
28天前
|
SQL 关系型数据库 程序员
初级程序员必备的十大技能之数据库基础(一)
教程来源 https://bncne.cn 本文系统讲解关系型数据库核心知识:从数据库原理、SQL四大语句(DDL/DML/DQL/DCL)到表设计、索引优化、事务机制与性能调优,涵盖WHERE/HAVING区别、多表JOIN、子查询、UNION等重点难点,配原理图解与实战代码,助你真正理解而非仅会写SQL。
|
28天前
|
程序员 开发工具 git
初级程序员必备的十大技能之 Git 版本控制(三)
教程来源 http://qcycj.cn Git分支是并行开发的核心利器,本质为轻量指针,创建零成本。支持便捷的创建、切换、合并(快进/三方/冲突)、rebase变基及规范工作流,助力团队高效协作与清晰历史管理。
|
27天前
|
人工智能 IDE 程序员
初级程序员必备的十大技能之开发工具熟练使用(一)
教程来源 https://qeext.cn/ 本文面向初级程序员,系统讲解VS Code等核心开发工具的高效用法:涵盖编辑器配置、终端/ Git /调试技巧、AI编程(Cursor)、快捷键与插件实战,助你从“手动搬砖”跃升为“智能工匠”,大幅提升编码、调试与协作效率。