From 66fcfb2ec429f5569e2c440f133c671d5ce87f3a Mon Sep 17 00:00:00 2001 From: gracecampo <82627973+gracecampo@users.noreply.github.com> Date: Sat, 26 Oct 2024 22:31:11 +0800 Subject: [PATCH 1/6] =?UTF-8?q?Create=20=E9=80=9F=E5=AD=A6150=E4=B8=AALinu?= =?UTF-8?q?x=E5=B8=B8=E7=94=A8=E5=91=BD=E4=BB=A4=E7=AC=94=E8=AE=B0.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 速学150个Linux常用命令笔记 --- ...75\344\273\244\347\254\224\350\256\260.md" | 615 ++++++++++++++++++ 1 file changed, 615 insertions(+) create mode 100644 "members/gracecampo/notes/\351\200\237\345\255\246150\344\270\252Linux\345\270\270\347\224\250\345\221\275\344\273\244\347\254\224\350\256\260.md" diff --git "a/members/gracecampo/notes/\351\200\237\345\255\246150\344\270\252Linux\345\270\270\347\224\250\345\221\275\344\273\244\347\254\224\350\256\260.md" "b/members/gracecampo/notes/\351\200\237\345\255\246150\344\270\252Linux\345\270\270\347\224\250\345\221\275\344\273\244\347\254\224\350\256\260.md" new file mode 100644 index 0000000..a0e4e64 --- /dev/null +++ "b/members/gracecampo/notes/\351\200\237\345\255\246150\344\270\252Linux\345\270\270\347\224\250\345\221\275\344\273\244\347\254\224\350\256\260.md" @@ -0,0 +1,615 @@ +# MOVE共学营基础课程 + +# 速学150个Linux常用命令笔记 + +## Linux目录结构介绍 +- **目录结构**:详细介绍`/`根目录下的各个子目录及用途。 +- **系统文件或目录颜色的含义**:解释不同颜色代表的文件类型。 +- **常用终端快捷键**:常用的快捷键如Ctrl+C, Ctrl+D等。 +- **Tab键的妙用**:自动补全路径和命令。 + +### 实践代码 +```bash +# 查看当前目录 +pwd + +# 列出当前目录内容 +ls + +# 切换到根目录 +cd / + +# 列出根目录下的所有文件和目录 +ls -l / +``` + +## 文件权限与通配符 +- **文件权限介绍**:rwx权限及其表示方法。 +- **通配符介绍**:`*`, `?`, `[ ]`等通配符的使用。 + +### 实践代码 +```bash +# 显示文件权限 +ls -l + +# 改变文件权限 +chmod 755 myfile.txt + +# 使用通配符 +ls *.txt +``` + +## 帮助命令 +- **man**:查看命令的手册页。 +- **info**:提供更详细的帮助信息。 +- **whatis**:快速查询命令的功能。 + +### 实践代码 +```bash +# 查看ls命令的手册页 +man ls + +# 查看ls命令的info页面 +info ls + +# 查询ls命令的功能 +whatis ls +``` + +## 文件和目录管理 +- **touch**:创建空文件或更新时间戳。 +- **mkdir**:创建目录。 +- **rm**:删除文件。 +- **rmdir**:删除空目录。 +- **mv**:移动或重命名文件。 +- **cp**:复制文件。 +- **cd**:切换目录。 +- **pwd**:显示当前工作目录。 +- **ls**:列出目录内容。 +- **tree**:以树状图展示目录结构。 +- **stat**:显示文件状态信息。 +- **rename**:批量重命名文件。 +- **basename**:提取文件名。 +- **dirname**:提取路径中的目录部分。 +- **chattr** 和 **lsattr**:修改和查看文件属性。 +- **file**:识别文件类型。 +- **md5sum**:生成和校验文件的MD5值。 + +### 实践代码 +```bash +# 创建一个空文件 +touch myfile.txt + +# 创建一个新目录 +mkdir mydir + +# 删除文件 +rm myfile.txt + +# 删除空目录 +rmdir mydir + +# 移动或重命名文件 +mv oldname.txt newname.txt + +# 复制文件 +cp source.txt destination.txt + +# 切换到新目录 +cd /path/to/directory + +# 显示当前目录 +pwd + +# 列出当前目录内容 +ls + +# 以树状图展示目录结构 +tree + +# 显示文件状态信息 +stat myfile.txt + +# 批量重命名文件 +rename 's/old/new/' *.txt + +# 提取文件名 +basename /path/to/file.txt + +# 提取路径中的目录部分 +dirname /path/to/file.txt + +# 修改文件属性 +chattr +i myfile.txt + +# 查看文件属性 +lsattr myfile.txt + +# 识别文件类型 +file myfile.txt + +# 生成和校验文件的MD5值 +md5sum myfile.txt +``` + +## 查找文件 +- **find**:查找文件或目录。 +- **which**:查找可执行文件的位置。 +- **whereis**:查找二进制文件、源代码和手册页。 +- **locate**:通过数据库快速查找文件。 + +### 实践代码 +```bash +# 查找当前目录下所有的.txt文件 +find . -name "*.txt" + +# 查找可执行文件的位置 +which ls + +# 查找二进制文件、源代码和手册页 +whereis ls + +# 通过数据库快速查找文件 +locate myfile.txt +``` + +## 用户和组管理 +- **chown**:改变文件的所有者。 +- **chgrp**:改变文件的所属组。 +- **chmod**:改变文件的权限。 + +### 实践代码 +```bash +# 改变文件的所有者 +chown user:group myfile.txt + +# 改变文件的所属组 +chgrp group myfile.txt + +# 改变文件的权限 +chmod 755 myfile.txt +``` + +## 文本处理 +- **grep**:文本搜索工具。 +- **egrep**:扩展正则表达式搜索。 +- **cat**:查看文本内容。 +- **more**:逐页阅读文本。 +- **less**:分页查看文本内容。 +- **head**:查看文件开头内容。 +- **tail**:查看文件尾部内容。 +- **tac**:反向显示文本内容。 +- **nl**:统计文件行号。 +- **wc**:统计文本字数信息。 +- **split**:文件切割。 +- **cut**:文本截取。 +- **paste**:文件合并。 +- **sort**:文本内容排序。 +- **uniq**:去除重复行。 +- **diff** 和 **patch**:比较差异并打补丁。 +- **join**:连接两个文件。 +- **tr**:字符转换。 +- **sed**:流编辑器。 +- **awk**:编程语言。 + +### 实践代码 +```bash +# 搜索包含"hello"的行 +grep "hello" myfile.txt + +# 扩展正则表达式搜索 +egrep "hello|world" myfile.txt + +# 查看文本内容 +cat myfile.txt + +# 逐页阅读文本 +more myfile.txt + +# 分页查看文本内容 +less myfile.txt + +# 查看文件开头内容 +head myfile.txt + +# 查看文件尾部内容 +tail myfile.txt + +# 反向显示文本内容 +tac myfile.txt + +# 统计文件行号 +nl myfile.txt + +# 统计文本字数信息 +wc -l myfile.txt + +# 文件切割 +split -b 10m largefile.txt part_ + +# 文本截取 +cut -d' ' -f1 myfile.txt + +# 文件合并 +paste file1.txt file2.txt > combined.txt + +# 文本内容排序 +sort myfile.txt + +# 去除重复行 +uniq myfile.txt + +# 比较差异 +diff file1.txt file2.txt + +# 应用补丁 +patch < patchfile.patch + +# 连接两个文件 +join file1.txt file2.txt + +# 字符转换 +tr 'a-z' 'A-Z' < myfile.txt + +# 流编辑器 +sed 's/hello/world/g' myfile.txt + +# awk编程语言 +awk '{print $1}' myfile.txt +``` + +## 系统信息 +- **uname**:显示系统信息。 +- **hostname**:显示或设置主机名。 +- **dmesg**:显示开机信息。 +- **uptime**:查看系统负载。 +- **free**:显示内存使用情况。 +- **ulimit**:限制系统资源。 +- **init**:切换系统运行级别。 +- **service**:控制系统服务。 +- **vmstat**:显示虚拟内存状态。 +- **iostat**:监视系统输入输出设备和CPU的使用情况。 +- **ipcs**:显示进程间通信设备状态。 +- **ipcrm**:删除指定IPC资源。 + +### 实践代码 +```bash +# 显示系统信息 +uname -a + +# 显示或设置主机名 +hostname + +# 显示开机信息 +dmesg + +# 查看系统负载 +uptime + +# 显示内存使用情况 +free -h + +# 限制系统资源 +ulimit -a + +# 切换系统运行级别 +init 3 + +# 控制系统服务 +service ssh status + +# 显示虚拟内存状态 +vmstat + +# 监视系统输入输出设备和CPU的使用情况 +iostat + +# 显示进程间通信设备状态 +ipcs + +# 删除指定IPC资源 +ipcrm -m 123456 +``` + +## 网络相关命令 +- **route**:显示并设置IP路由表。 +- **ping**:网络连通测试。 +- **traceroute**:追踪数据包传输路径。 +- **ifconfig**:显示或设置网络设备参数。 +- **ifup** 和 **ifdown**:激活禁用网络接口。 +- **netstat**:查看网络相关信息。 +- **ss**:显示活动套接字信息。 +- **telnet**:远程登陆服务器。 +- **ssh**:安全连接服务器。 +- **ftp**:文件传输命令。 +- **sftp**:交互式文件传输程序。 +- **lftp**:下载工具。 +- **wget**:网络下载工具。 +- **scp**:远程文件拷贝。 +- **curl**:远程数据传输工具。 +- **host**:分析域名查询工具。 +- **tcpdump**:数据抓包工具。 +- **nc**:网络检测工具。 + +### 实践代码 +```bash +# 显示并设置IP路由表 +route -n + +# 网络连通测试 +ping www.example.com + +# 追踪数据包传输路径 +traceroute www.example.com + +# 显示或设置网络设备参数 +ifconfig + +# 激活禁用网络接口 +ifup eth0 +ifdown eth0 + +# 查看网络相关信息 +netstat -an + +# 显示活动套接字信息 +ss -tulwn + +# 远程登陆服务器 +telnet www.example.com 80 + +# 安全连接服务器 +ssh user@remote_host + +# 文件传输 +ftp remote_host + +# 交互式文件传输 +sftp user@remote_host + +# 下载工具 +lftp + +# 网络下载工具 +wget http://example.com/file.zip + +# 远程文件拷贝 +scp user@remote_host:/path/to/file /local/path + +# 远程数据传输工具 +curl -O http://example.com/file.zip + +# 分析域名查询 +host www.example.com + +# 数据抓包工具 +tcpdump -i eth0 + +# 网络检测工具 +nc -zv www.example.com 80 +``` + +## 用户管理 +- **useradd**:创建用户。 +- **adduser**:创建用户(交互式)。 +- **passwd**:修改用户密码。 +- **userdel**:删除用户。 +- **su**:切换用户。 +- **sudo**:以其他身份来执行命令。 +- **id**:显示用户ID信息。 +- **usermod**:修改用户信息。 +- **groups**:显示用户组。 +- **groupadd**:创建用户组。 +- **groupdel**:删除用户组。 +- **whoami**:显示当前用户名。 +- **who**:显示当前登录用户。 +- **w**:显示当前登录用户及其活动。 +- **last**:显示最近登录的用户。 +- **users**:显示当前登录的用户列表。 + +### 实践代码 +```bash +# 创建用户 +useradd newuser + +# 创建用户(交互式) +adduser newuser + +# 修改用户密码 +passwd newuser + +# 删除用户 +userdel newuser + +# 切换用户 +su - newuser + +# 以其他身份来执行命令 +sudo command + +# 显示用户ID信息 +id newuser + +# 修改用户信息 +usermod -c "New User" newuser + +# 显示用户组 +groups newuser + +# 创建用户组 +groupadd newgroup + +# 删除用户组 +groupdel newgroup + +# 显示当前用户名 +whoami + +# 显示当前登录用户 +who + +# 显示当前登录用户及其活动 +w + +# 显示最近登录的用户 +last + +# 显示当前登录的用户列表 +users +``` + +## 进程管理 +- **top**:查看系统进程。 +- **ps**:显示进程信息。 +- **pstree**:显示进程树。 +- **pgrep**:根据名称查找进程。 +- **lsof**:列出打开的文件。 +- **jobs**:显示后台作业。 +- **bg** 和 **fg**:将作业放到后台或前台。 +- **kill**:终止进程。 +- **killall**:终止所有匹配的进程。 +- **nice** 和 **renice**:设置进程优先级。 +- **nohup**:忽略挂起信号运行命令。 + +### 实践代码 +```bash +# 查看系统进程 +top + +# 显示进程信息 +ps aux + +# 显示进程树 +pstree + +# 根据名称查找进程 +pgrep process_name + +# 列出打开的文件 +lsof + +# 显示后台作业 +jobs + +# 将作业放到后台 +bg %1 + +# 将作业放到前台 +fg %1 + +# 终止进程 +kill 12345 + +# 终止所有匹配的进程 +killall process_name + +# 设置进程优先级 +nice -n 10 command +renice 10 -p 12345 + +# 忽略挂起信号运行命令 +nohup command & +``` + +## 包管理 +- **apt** 和 **apt-get**:包管理器。 +- **export**:导出环境变量。 +- **source**:读取并执行文件中的命令。 +- **set** 和 **unset**:设置和取消环境变量。 + +### 实践代码 +```bash +# 更新包列表 +apt update + +# 安装软件包 +apt install package_name + +# 卸载软件包 +apt remove package_name + +# 导出环境变量 +export PATH=$PATH:/new/path + +# 读取并执行文件中的命令 +source script.sh + +# 设置环境变量 +set variable=value + +# 取消环境变量 +unset variable +``` + +## 终端操作 +- **echo**:显示消息。 +- **printf**:格式化输出。 +- **clear**:清屏。 +- **history**:显示历史命令。 +- **login** 和 **logout**:登录和注销。 +- **exit**:退出终端。 + +### 实践代码 +```bash +# 显示消息 +echo "Hello, World!" + +# 格式化输出 +printf "Name: %s\nAge: %d\n" "John" 30 + +# 清屏 +clear + +# 显示历史命令 +history + +# 登录 +login + +# 注销 +logout + +# 退出终端 +exit +``` + +## 其他命令 +- **xargs**:构建和执行命令行。 +- **exec**:替换当前shell。 +- **alias** 和 **unalias**:定义和取消别名。 +- **type**:显示命令类型。 +- **date**:显示或设置日期。 +- **cal**:显示日历。 +- **crontab**:定时任务。 +- **at**:一次性定时任务。 + +### 实践代码 +```bash +# 构建和执行命令行 +echo "file1 file2" | xargs rm + +# 替换当前shell +exec bash + +# 定义别名 +alias ll='ls -l' + +# 取消别名 +unalias ll + +# 显示命令类型 +type ls + +# 显示或设置日期 +date +date -s "2023-10-01 12:00:00" + +# 显示日历 +cal + +# 编辑定时任务 +crontab -e + +# 添加一次性定时任务 +echo "echo Hello, World!" | at now + 1 minute +``` From 404d26107e1240874ecd8c778ace7e04cf89e9b0 Mon Sep 17 00:00:00 2001 From: gracecampo <82627973+gracecampo@users.noreply.github.com> Date: Sat, 26 Oct 2024 22:34:04 +0800 Subject: [PATCH 2/6] =?UTF-8?q?Create=20Windows=20DOS=E5=91=BD=E4=BB=A4=20?= =?UTF-8?q?=E6=89=B9=E5=A4=84=E7=90=86=E8=84=9A=E6=9C=AC=E5=AD=A6=E4=B9=A0?= =?UTF-8?q?=E7=AC=94=E8=AE=B0.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Windows DOS命令 批处理脚本学习笔记 --- ...46\344\271\240\347\254\224\350\256\260.md" | 208 ++++++++++++++++++ 1 file changed, 208 insertions(+) create mode 100644 "members/gracecampo/notes/Windows DOS\345\221\275\344\273\244 \346\211\271\345\244\204\347\220\206\350\204\232\346\234\254\345\255\246\344\271\240\347\254\224\350\256\260.md" diff --git "a/members/gracecampo/notes/Windows DOS\345\221\275\344\273\244 \346\211\271\345\244\204\347\220\206\350\204\232\346\234\254\345\255\246\344\271\240\347\254\224\350\256\260.md" "b/members/gracecampo/notes/Windows DOS\345\221\275\344\273\244 \346\211\271\345\244\204\347\220\206\350\204\232\346\234\254\345\255\246\344\271\240\347\254\224\350\256\260.md" new file mode 100644 index 0000000..5e2eae0 --- /dev/null +++ "b/members/gracecampo/notes/Windows DOS\345\221\275\344\273\244 \346\211\271\345\244\204\347\220\206\350\204\232\346\234\254\345\255\246\344\271\240\347\254\224\350\256\260.md" @@ -0,0 +1,208 @@ +# MOVE共学营基础课程之Windows DOS命令\批处理脚本笔记 + +视频教程地址: +[https://www.bilibili.com/video/BV1Qv411q7bN) + + +# Windows DOS命令与批处理脚本学习笔记 + +## 批处理初体验 +- **概念**:.bat文件是包含一系列DOS命令的文本文件。 +- **创建和运行**: + - 创建一个简单的批处理文件`hello.bat`,内容如下: + ```batch + @echo off + echo Hello, World! + pause + ``` + +## 批处理运算操作 +### 算术运算 +- 使用`set /a`进行基本算术操作: + ```batch + set /a result=5+3 + echo %result% + ``` + +### 重定向操作 +- 将输出重定向到文件或另一个命令: + ```batch + dir > output.txt + type output.txt + ``` + +### 多名命令运算 +- 在一行中执行多个命令,用`&`分隔: + ```batch + echo First Command & echo Second Command + ``` + +### 管道操作 +- 通过`|`将前一个命令的输出作为后一个命令的输入: + ```batch + dir | find "txt" + ``` + +## 基本命令格式介绍 +- `echo`显示消息或变量值: + ```batch + echo The current date is: %date% + ``` +- `pause`暂停程序等待用户按键继续: + ```batch + pause + ``` +- `rem`添加注释以说明代码: + ```batch + rem This is a comment + ``` + +## 文件和目录管理 +### 目录浏览 +- `dir`列出当前目录下的文件及子目录: + ```batch + dir + ``` + +### 目录新建与删除 +- `mkdir`创建新目录: + ```batch + mkdir new_folder + ``` +- `rmdir`删除空目录: + ```batch + rmdir new_folder + ``` + +### 目录切换 +- `cd`改变当前工作目录: + ```batch + cd C:\path\to\directory + ``` + +### 目录重命名 +- `ren`重命名文件或目录: + ```batch + ren old_name new_name + ``` + +### 文件拷贝 +- `copy`复制文件: + ```batch + copy file.txt C:\destination\ + ``` + +### 文件删除 +- `del`删除文件: + ```batch + del file.txt + ``` + +### 文件剪切 +- `move`移动文件: + ```batch + move file.txt C:\new_location\ + ``` + +### 显示目录结构 +- `tree`展示目录结构树: + ```batch + tree + ``` + +## 系统相关命令 +### 时间相关 +- `time`查看/设置系统时间: + ```batch + time + ``` +- `date`查看/设置系统日期: + ```batch + date + ``` + +### 启动命令 +- `start`启动一个新的窗口并执行指定程序或命令: + ```batch + start notepad + ``` + +### 调用其他bat文件 +- `call`调用其他批处理文件: + ```batch + call other_script.bat + ``` + +### 任务列表查看 +- `tasklist`显示所有正在运行的任务: + ```batch + tasklist + ``` + +### 任务终止 +- `taskkill`终止特定进程(例如结束notepad进程): + ```batch + taskkill /IM notepad.exe /F + ``` + +### 关机命令 +- `shutdown`关闭计算机: + ```batch + shutdown -s -t 0 + ``` + +### 计划任务 +- `at`安排计划任务(例如在明天早上8点运行脚本): + ```batch + at 08:00 /every:M,T,W,Th,F,S,S "C:\path\to\script.bat" + ``` + +## 网络相关命令 +### 主机联通性检测 +- `ping`检测主机连接状态: + ```batch + ping www.example.com + ``` + +### 网络连接 +- `telnet`测试远程主机上的端口是否开放: + ```batch + telnet www.example.com 80 + ``` + +### 网络路由信息 +- `tracert`跟踪数据包到达目的地所经过的路由: + ```batch + tracert www.example.com + ``` + +### 网络适配器信息 +- `ipconfig`显示IP配置信息: + ```batch + ipconfig + ``` + +### ARP信息 +- `arp`显示和修改ARP缓存表: + ```batch + arp -a + ``` + +## 条件判断与循环 +### if-else 结构 +- `if`基于条件执行不同的命令: + ```batch + if exist "file.txt" ( + echo File exists. + ) else ( + echo File does not exist. + ) + ``` + +### 循环遍历文件夹名称 +- `for`遍历指定目录下的所有.txt文件: + ```batch + for %%f in (*.txt) do ( + echo Processing %%f + ) + ``` From 17720a947d7ed70246b5e000fb15019646f0a441 Mon Sep 17 00:00:00 2001 From: gracecampo <82627973+gracecampo@users.noreply.github.com> Date: Sat, 26 Oct 2024 22:45:03 +0800 Subject: [PATCH 3/6] =?UTF-8?q?Create=20VS=20Code=20=E9=9B=B6=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E6=95=99=E7=A8=8B.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit VS Code 零基础教程 --- ...72\347\241\200\346\225\231\347\250\213.md" | 210 ++++++++++++++++++ 1 file changed, 210 insertions(+) create mode 100644 "members/gracecampo/notes/VS Code \351\233\266\345\237\272\347\241\200\346\225\231\347\250\213.md" diff --git "a/members/gracecampo/notes/VS Code \351\233\266\345\237\272\347\241\200\346\225\231\347\250\213.md" "b/members/gracecampo/notes/VS Code \351\233\266\345\237\272\347\241\200\346\225\231\347\250\213.md" new file mode 100644 index 0000000..943c887 --- /dev/null +++ "b/members/gracecampo/notes/VS Code \351\233\266\345\237\272\347\241\200\346\225\231\347\250\213.md" @@ -0,0 +1,210 @@ +# MOVE共学营基础课程之- VS Code 零基础使用笔记 + +视频课程地址:https://www.bilibili.com/video/BV1ty4y1S7mC + +# VS Code 零基础教程 + +### 安装 +1. 访问 [VS Code 官方网站](https://code.visualstudio.com/)。 +2. 下载适用于您操作系统的安装包。 +3. 运行安装程序并按照提示完成安装。 + +### 实践代码 +```bash +# 打开VS Code +code . +``` + +## 更改语言 & 了解菜单内容 +### 更改语言 +1. 打开VS Code。 +2. 按 `Ctrl + ,` 打开设置。 +3. 搜索 `locale`。 +4. 选择你想要的语言(例如 `zh-CN`)。 +5. 重启VS Code使更改生效。 + +### 菜单内容 +- **文件**:新建、打开、保存等文件操作。 +- **编辑**:剪切、复制、粘贴等编辑操作。 +- **选择**:选择文本的各种方式。 +- **查看**:切换不同的视图。 +- **终端**:打开或关闭集成终端。 +- **帮助**:访问文档和反馈问题。 + +### 实践代码 +```bash +# 打开集成终端 +Ctrl + ` +``` + +## 交互式演练场 +### 使用交互式演练场 +1. 打开VS Code。 +2. 按 `Ctrl + Shift + P` 打开命令面板。 +3. 输入 `>Interactive Playground` 并选择它。 +4. 在交互式演练场中学习基本操作。 + +### 实践代码 +```javascript +// 交互式演练场示例 +console.log("Hello, World!"); +``` + +## 基础配置 +### 自定义设置 +1. 打开VS Code。 +2. 按 `Ctrl + ,` 打开设置。 +3. 可以通过JSON格式自定义各种设置,例如字体大小、主题等。 + +### 实践代码 +```json +{ + "editor.fontSize": 14, + "workbench.colorTheme": "Default Dark+" +} +``` + +## 前端开发效率利器 Emmet +### 使用Emmet +1. 打开HTML文件。 +2. 输入Emmet缩写,例如 `div>ul>li*3`。 +3. 按 `Tab` 键展开缩写。 + +### 实践代码 +```html + +
+ +
+``` + +## 插件 - Live Server +### 安装Live Server插件 +1. 打开VS Code。 +2. 按 `Ctrl + Shift + X` 打开扩展市场。 +3. 搜索 `Live Server` 并安装。 +4. 打开一个HTML文件,右键选择 `Open with Live Server`。 + +### 实践代码 +```html + + + + + + Live Server Example + + +

Hello, World!

+ + +``` + +## 从源代码编译属于自己的VS Code +### 编译VS Code +1. 克隆VS Code源码仓库: + ```bash + git clone https://github.com/microsoft/vscode.git + ``` +2. 进入项目目录: + ```bash + cd vscode + ``` +3. 安装依赖: + ```bash + npm install + ``` +4. 构建项目: + ```bash + npm run compile + ``` +5. 启动VS Code: + ```bash + ./scripts/code.sh + ``` + +### 实践代码 +```bash +# 克隆VS Code源码仓库 +git clone https://github.com/microsoft/vscode.git + +# 进入项目目录 +cd vscode + +# 安装依赖 +npm install + +# 构建项目 +npm run compile + +# 启动VS Code +./scripts/code.sh +``` + +## 灵活运用代码片段 +### 创建代码片段 +1. 打开VS Code。 +2. 按 `Ctrl + Shift + P` 打开命令面板。 +3. 输入 `>Preferences: Configure User Snippets` 并选择它。 +4. 选择或创建一个新的代码片段文件。 +5. 添加代码片段,例如: + ```json + { + "Print to console": { + "prefix": "log", + "body": [ + "console.log('$1');", + "$2" + ], + "description": "Log output to console" + } + } + ``` + +### 实践代码 +```json +{ + "Print to console": { + "prefix": "log", + "body": [ + "console.log('$1');", + "$2" + ], + "description": "Log output to console" + } +} +``` + +## 多光标功能 +### 使用多光标 +1. 打开一个文件。 +2. 按住 `Alt` 键并点击多个位置,可以添加多个光标。 +3. 按 `Ctrl + Alt + ↓` 或 `↑` 可以在当前行下方或上方添加新的光标。 +4. 按 `Ctrl + D` 可以选择下一个相同的单词并添加光标。 + +### 实践代码 +```javascript +// 多光标示例 +const items = ['apple', 'banana', 'cherry']; +items.forEach(item => console.log(item)); +``` + +## 鼠标操作技巧 +### 常用鼠标操作 +- **双击**:选择一个词。 +- **三击**:选择一行。 +- **拖动选择**:选择一段文本。 +- **右键**:弹出上下文菜单。 +- **滚轮**:滚动代码。 +- **中键**:关闭标签页。 + +### 实践代码 +```javascript +// 鼠标操作示例 +const message = "Hello, World!"; +console.log(message); +``` From d8919e434065a2011bc6d1dbe615eddc7d4c840d Mon Sep 17 00:00:00 2001 From: gracecampo <82627973+gracecampo@users.noreply.github.com> Date: Sat, 26 Oct 2024 22:53:14 +0800 Subject: [PATCH 4/6] Create readme.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 笔记说明 --- members/gracecampo/readme.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 members/gracecampo/readme.md diff --git a/members/gracecampo/readme.md b/members/gracecampo/readme.md new file mode 100644 index 0000000..3548667 --- /dev/null +++ b/members/gracecampo/readme.md @@ -0,0 +1,7 @@ +# MOVE共建营-基础课程视频总结的笔记 +该笔记分为三篇 +1. windows dos 命令笔记,用于熟悉windows下如何使用批处理脚本,方便我们的日常开发 +2. linux常用命令,对于开发人员来说,这个很重要,在日常开发和运维中,都会涉及。 +3. vscode 是我们开发应用的IDE,属于开发工具,开源且功能强大,是程序开发中不可缺失的重要工具。当然也可以使用自己熟悉的IDE. + +祝大家在共建营玩的开心,这几篇笔记,欢迎各位同学参考指正。 From aeeaa106f2ce8770faca6d637673809d4f53e5cf Mon Sep 17 00:00:00 2001 From: gracecampo <82627973+gracecampo@users.noreply.github.com> Date: Sat, 26 Oct 2024 23:24:14 +0800 Subject: [PATCH 5/6] =?UTF-8?q?Create=20Git=E5=85=A5=E9=97=A8=E5=88=B0?= =?UTF-8?q?=E7=B2=BE=E9=80=9A=E7=AC=94=E8=AE=B0.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Git入门到精通笔记 --- ...76\351\200\232\347\254\224\350\256\260.md" | 255 ++++++++++++++++++ 1 file changed, 255 insertions(+) create mode 100644 "members/gracecampo/notes/Git\345\205\245\351\227\250\345\210\260\347\262\276\351\200\232\347\254\224\350\256\260.md" diff --git "a/members/gracecampo/notes/Git\345\205\245\351\227\250\345\210\260\347\262\276\351\200\232\347\254\224\350\256\260.md" "b/members/gracecampo/notes/Git\345\205\245\351\227\250\345\210\260\347\262\276\351\200\232\347\254\224\350\256\260.md" new file mode 100644 index 0000000..f46a331 --- /dev/null +++ "b/members/gracecampo/notes/Git\345\205\245\351\227\250\345\210\260\347\262\276\351\200\232\347\254\224\350\256\260.md" @@ -0,0 +1,255 @@ +# MOVE共建营之Git入门到精通笔记 +教程视频地址:https://www.bilibili.com/video/BV1vy4y1s7k6 + + +## Git概述 +### 版本控制 +- **版本控制**:记录文件或项目的历史变更,方便回滚和管理。 +- **分布式版本控制**:每个开发者都有完整的仓库副本,支持离线工作。 +- **集中式版本控制**:所有版本数据集中存放在一个服务器中,需要联网才能访问。 + +### 发展历史 +- Git由Linus Torvalds于2005年创建,用于Linux内核开发。 +- Git是一个开源的分布式版本控制系统,广泛应用于软件开发领域。 + +### 工作机制 +- **本地仓库**:存储在本地计算机上的完整版本库。 +- **远程仓库**:存储在网络服务器上的版本库,可以是GitHub、Gitee码云或GitLab等。 +- **提交**:将更改保存到本地仓库。 +- **推送**:将本地仓库的更改推送到远程仓库。 +- **拉取**:从远程仓库获取最新的更改并合并到本地仓库。 + +### 代码托管中心 +- **GitHub**:全球最大的代码托管平台。 +- **Gitee码云**:国内知名的代码托管平台。 +- **GitLab**:提供私有化部署的代码托管平台。 + +## 安装和客户端使用 +### 安装Git +1. 访问 [Git官网](https://git-scm.com/)。 +2. 下载适用于您操作系统的安装包。 +3. 运行安装程序并按照提示完成安装。 + +### 设置用户签名 +```bash +git config --global user.name "Your Name" +git config --global user.email "your.email@example.com" +``` + +### 初始化本地库 +```bash +mkdir myproject +cd myproject +git init +``` + +### 查看本地库状态 +```bash +git status +``` + +### 添加暂存区 +```bash +git add filename +``` + +### 提交本地库 +```bash +git commit -m "Initial commit" +``` + +### 修改文件 +```bash +# 修改文件内容后 +git add filename +git commit -m "Update filename" +``` + +### 版本穿梭 +```bash +# 查看提交历史 +git log + +# 回退到某个提交 +git checkout + +# 回退到最新版本 +git checkout master +``` + +## 分支管理 +### 概述和优点 +- **分支**:独立的工作线,可以并行开发不同的功能。 +- **优点**:隔离开发环境,避免冲突,便于管理和合并。 + +### 查看&创建&切换分支 +```bash +# 查看所有分支 +git branch + +# 创建新分支 +git branch newbranch + +# 切换到新分支 +git checkout newbranch + +# 创建并切换到新分支 +git checkout -b newbranch +``` + +### 合并分支 +#### 正常合并 +```bash +# 切换到主分支 +git checkout master + +# 合并新分支 +git merge newbranch +``` + +#### 冲突合并 +```bash +# 解决冲突后 +git add conflicted-file +git commit -m "Resolve conflict" +``` + +## 团队协作 +### GitHub +#### 创建远程库&创建别名 +```bash +# 创建远程库 +# 在GitHub上创建一个新的仓库 + +# 添加远程库别名 +git remote add origin https://github.com/username/repo.git +``` + +#### 推送本地库到远程库 +```bash +git push -u origin master +``` + +#### 拉取远程库到本地库 +```bash +git pull origin master +``` + +#### 克隆远程库到本地 +```bash +git clone https://github.com/username/repo.git +``` + +#### 团队内协作 +- **推送和拉取**:确保团队成员之间的代码同步。 +- **分支管理**:使用分支进行并行开发,定期合并。 + +### Gitee码云 +#### 账号注册登录&创建远程库 +- 在Gitee码云网站上注册账号并创建新的仓库。 + +#### IDEA集成Gitee码云 +- 在IDEA中配置Gitee码云的SSH密钥。 +- 使用IDEA的VCS功能克隆和管理仓库。 + +### GitLab +#### 简介和安装环境准备 +- GitLab可以在本地服务器上私有化部署。 +- 安装Docker并运行GitLab容器。 + +#### 安装&初始化服务&启动服务 +```bash +# 使用Docker安装GitLab +docker run --detach \ + --hostname gitlab.example.com \ + --publish 443:443 --publish 80:80 --publish 22:22 \ + --name gitlab \ + --restart always \ + --volume /srv/gitlab/config:/etc/gitlab \ + --volume /srv/gitlab/logs:/var/log/gitlab \ + --volume /srv/gitlab/data:/var/opt/gitlab \ + gitlab/gitlab-ce:latest +``` + +#### 登录GitLab并创建远程库 +- 在浏览器中访问 `http://` 并登录GitLab。 +- 创建新的项目仓库。 + +#### IDEA集成GitLab +- 在IDEA中配置GitLab的SSH密钥。 +- 使用IDEA的VCS功能克隆和管理仓库。 + +## IDEA集成Git +### 环境准备 +- 安装IntelliJ IDEA。 +- 配置Git路径。 + +### 初始化&添加&提交 +```bash +# 初始化仓库 +git init + +# 添加文件 +git add filename + +# 提交更改 +git commit -m "Initial commit" +``` + +### 切换版本 +```bash +# 查看提交历史 +git log + +# 回退到某个提交 +git checkout +``` + +### 创建分支&切换分支 +```bash +# 创建新分支 +git branch newbranch + +# 切换到新分支 +git checkout newbranch +``` + +### 合并分支 +#### 正常合并 +```bash +# 切换到主分支 +git checkout master + +# 合并新分支 +git merge newbranch +``` + +#### 冲突合并 +```bash +# 解决冲突后 +git add conflicted-file +git commit -m "Resolve conflict" +``` + +### 设置GitHub账号 +- 在GitHub上创建个人账户。 +- 配置SSH密钥以便无密码访问。 + +### 分享项目到GitHub +- 在IDEA中右键点击项目,选择 `Share Project on GitHub`。 +- 按照向导完成分享过程。 + +### 推送代码到远程库 +```bash +git push -u origin master +``` + +### 拉取远程库代码合并本地库 +```bash +git pull origin master +``` + +### 克隆代码到本地 +```bash +git clone https://github.com/username/repo.git +``` From 148b954a471fbe4245af8fc185515063ce0196e0 Mon Sep 17 00:00:00 2001 From: gracecampo <82627973+gracecampo@users.noreply.github.com> Date: Sat, 26 Oct 2024 23:26:28 +0800 Subject: [PATCH 6/6] Update readme.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充git笔记 --- members/gracecampo/readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/members/gracecampo/readme.md b/members/gracecampo/readme.md index 3548667..6393316 100644 --- a/members/gracecampo/readme.md +++ b/members/gracecampo/readme.md @@ -3,5 +3,6 @@ 1. windows dos 命令笔记,用于熟悉windows下如何使用批处理脚本,方便我们的日常开发 2. linux常用命令,对于开发人员来说,这个很重要,在日常开发和运维中,都会涉及。 3. vscode 是我们开发应用的IDE,属于开发工具,开源且功能强大,是程序开发中不可缺失的重要工具。当然也可以使用自己熟悉的IDE. +4. git是代码版本控制工具,对于开发人员管理源码至关重要,是团队配合开发的重要支撑,此项技能是现在开发人员必备技能,请大家重视。 祝大家在共建营玩的开心,这几篇笔记,欢迎各位同学参考指正。