Windows
2023-12-23

触摸板
- 单指:点击,双击,双击拖动
- 双指:滚动,点击(鼠标右键),捏合(缩放场景)
- 三指:
- 上、下:多任务视图/显示桌面
- 左、右:切换应用
- 点击:搜索
- 四指:
- 上、下:多任务视图/显示桌面(调整为:最大化窗口/最小化窗口)
- 左、右:切换桌面
- 点击:通知中心
快捷键
TAB
按键 |
作用 |
Win + Tab |
多任务视图 |
Alt + Tab |
切换应用 |
Alt + Ctrl + Tab |
应用切换(应用选择) |
任务栏应用
按键 |
作用 |
Win + Num |
启动任务栏应用/窗口切换 |
Win + Ctrl + Num |
启动任务栏应用/窗口切换(有点不一样) |
Win + Shift + Num |
启动任务栏应用(新窗口) |
Win + Shift + Alt + Num |
启动任务栏应用(管理员权限) |
Win + Alt + Num |
任务栏应用菜单 |
Windows Git
2023-10-15
使用 WSL 的时候 git 用得简直令人难受,每次切换环境(Windows 和 WSL),都需要 Refresh Index,一次就得二十几秒。
最后只好搞一个别名:
# 5.15.90.1-microsoft-standard-WSL2
if [[ "`uname -r`" == *WSL2 ]]; then
SHMODE=wsl
fi
if [[ $SHMODE == "wsl" ]]; then
alias git=git.exe
fi
这是我的本地环境中截出来得一点,其实还做了一些其他得适配,总算能够接受了。
原因
暂时没有读到相关资料。
WSL 已经出来很久了,可是这些性能问题微软还是没有解决,可能是他们不想解决。
参考资料与拓展阅读
Windows
2023-07-03
基础环境:Windows 10 (带 Edge)
-
驱动更新
-
激活
-
Windows 更新
PS:系统更新之后就会有 winget 了
-
用户目录下的文件夹链接到移动磁盘
视频,图片,文档,下载,音乐
-
360 “优化” 一番
-
360安全卫士
- 驱动大师
-
360压缩
-
复制目录 .ssh, .config 目录
-
配置网络代理 + 办公网络 VPN
-
安装软件
winget 在 msstore 中叫做“应用安装程序”
Windows Terminal 也可以在 msstore 中找到
winget install Microsoft.VisualStudioCode
winget install Microsoft.Edge
winget install Microsoft.WindowsTerminal
winget install Git.Git
winget install qishibo.AnotherRedisDesktopManager # 导入配置即可
winget install ScooterSoftware.BeyondCompare4
winget install KeePassXCTeam.KeePassXC
winget install Apifox.Apifox
# winget install Tencent.wechat-work
winget install Tencent.WeCom
winget install Tencent.WeChat
winget install Python.Python.3.8
winget install GoLang.Go
winget install voidtools.Everything
winget install hluk.CopyQ
winget install Nutstore.Nutstore
winget install NetEase.YoudaoNote # 有道云笔记
winget install NetEase.CloudMusic # 有道云音乐
# winget install iFlytek.iFlyIME # 讯飞输入法
winget install Rime.Weasel # 小狼毫输入法(Rime)
# 无需安装,走笔记本中转
# winget install OpenVPNTechnologies.OpenVPNConnect
其他软件:
无需安装:
- GFW,走笔记本中转
- HeidiSQL(Portable 版本)
Edge 浏览器
- 自动更新:
... > 帮助与反馈 > 关于 Microsoft Edge
- 登录账号,自动同步
- 同步需要一段时间,可以先安装上 SwitchyOmega:
https://microsoftedge.microsoft.com/addons/search/switchyomega?hl=zh-CN
VSCode
- 登录账号,自动同步
- 同步需要一段时间,可以先安装上 Remote - SSH
Windows Terminal
- 配置上开发机器的 SSH 连接,作为默认会话
- 记住 GitBash 的快捷键
访问开发机器 zsh 的时候,Home
/ End
失灵,只能 Ctrl + A
/ Ctrl + E
代替。
- bash 没有问题
- Putty 连接 zsh 也是好的
经过一番实验,发现使用 Git 带的 ssh 就好了:
# C:\Windows\System32\OpenSSH\ssh.exe
C:\Users\Administrator>ssh -V
OpenSSH_for_Windows_7.7p1, LibreSSL 2.6.5
# C:\Program Files\Git\usr\bin\ssh.exe
C:\Users\Administrator>"C:\Program Files\Git\usr\bin\ssh.exe" -V
OpenSSH_9.0p1, OpenSSL 1.1.1p 21 Jun 2022
# 作为对照,这是开发机器 (Ubuntu 22.10) 上的 SSH 版本:
ssh -V
OpenSSH_8.9p1 Ubuntu-3ubuntu0.1, OpenSSL 3.0.2 15 Mar 2022
"C:\Program Files\Git\usr\bin\ssh.exe" markjour@172.16.0.49 -F C:\Users\Administrator\.ssh\configwin
Git Bash
~/.bash_profile
test -f ~/.profile && . ~/.profile
test -f ~/.bashrc && . ~/.bashrc
~/.bashrc
source ~/Projects/StdEnv/aliases/main.sh
旧磁盘格式化 + 反复覆写
dd if=/dev/zero of=/e/bigfile bs=10M
Windows MariaDB
2022-08-17
部署
# 安装 <https://winget.run/pkg/MariaDB/Server>
winget install mariadb.server
# 这一步应该是安装程序自动执行了
# 但是没有自动安装服务,也没有为 root 配置密码
# 有很多参数,可以参考 `mysql_install_db --help`
# mysql_install_db
# 安装服务
& 'C:\Program Files\MariaDB 10.8\bin\mysqld.exe' --install-manual MariaDB
# 根据资料,可以指定配置文件,但是我没有这么操作过,都是用的默认值:
# --defaults-file=D:\DB02\my.ini
# 如果启动另一个服务进程,记得在配置文件中指定新的 datadir
# 启动服务
# services.msc 中手动启动服务,或者,
# 管理员权限启动命令行,然后执行:
net start MariaDB
sc start MariaDB
# 停止服务
net stop MariaDB
sc stop MariaDB
# 删除服务
sc delete MariaDB
C:\>dir "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\MariaDB 10.8 (x64)"
驱动器 C 中的卷是 Windows
卷的序列号是 56D1-41EB
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\MariaDB 10.8 (x64) 的目录
2022/08/15 21:33 <DIR> .
2022/08/15 21:33 <DIR> ..
2022/08/15 21:33 1,154 Command Prompt (MariaDB 10.8 (x64)).lnk
2022/08/15 21:33 909 Database directory (MariaDB 10.8 (x64)).lnk
2022/08/15 21:33 1,000 Error log (MariaDB 10.8 (x64)).lnk
2022/08/15 21:33 944 HeidiSQL.lnk
2022/08/15 21:33 1,000 my.ini (MariaDB 10.8 (x64)).lnk
2022/08/15 21:33 1,208 MySQL Client (MariaDB 10.8 (x64)).lnk
6 个文件 6,215 字节
2 个目录 309,073,027,072 可用字节
默认的 MariaDB 安装在 C:\Program Files\MariaDB 10.8
,数据在 data 子目录,配置文件 my.ini
就在 data 子目录。
PS:震惊,我才发现 MariaDB 自带了一个 heidisql!!!
设置密码
这个时候可以直接通过 root 登录上去,不需要密码。
搜索 mysql.user 可以发现:
MariaDB [(none)]> select host, user, password, plugin, authentication_string from mysql.user;
+-----------+-------------+----------+-----------------------+-----------------------+
| Host | User | Password | plugin | authentication_string |
+-----------+-------------+----------+-----------------------+-----------------------+
| localhost | mariadb.sys | | mysql_native_password | |
| localhost | root | | | |
| victus | root | | | |
| 127.0.0.1 | root | | | |
| ::1 | root | | | |
+-----------+-------------+----------+-----------------------+-----------------------+
5 rows in set (0.001 sec)
mariadb-admin status -uroot
mysql -uroot
# 设置密码
# 如果忘记密码登录不进去了,怎么重置,这是另一个话题了
& 'C:\Program Files\MariaDB 10.8\bin\mysqladmin.exe' -uroot password 123456
默认配置
SHOW VARIABLES LIKE "%char%";
Variable_name |
Value |
character_set_client |
utf8mb4 |
character_set_connection |
utf8mb4 |
character_set_database |
latin1 |
character_set_filesystem |
binary |
character_set_results |
utf8mb4 |
character_set_server |
latin1 |
character_set_system |
utf8mb3 |
character_sets_dir |
C:\Program Files\MariaDB 10.8\share\charsets\ |
SHOW VARIABLES LIKE "%system%";
SHOW VARIABLES LIKE "%log%";
SHOW VARIABLES LIKE "%version%";
SHOW VARIABLES LIKE "%dir%";
SHOW CHARACTER SET;
SHOW COLLATION;
Windows
2022-08-13
Windows 11 右键菜单样式调整了,像是变成两级了,我经常需要点击 “显示更多选项”(Show more options),感觉很麻烦,今天在网上找到了解决办法:
# enable
reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve
# disable
reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" /f
# restart explorer
taskkill /f /im explorer.exe
start explorer.exe
包管理工具 Windows
2022-06-04
winget list
winget list -?
winget search xxx # 搜索
winget install xxx # 安装
winget upgrade # 列出 upgradable 包
winget upgrade xxx # 升级指定包
winget upgrade --all # 升级
winget
Windows 程序包管理器 v1.3.2691
版权所有 (C) Microsoft Corporation。保留所有权利。
WinGet 命令行实用工具可从命令行安装应用程序和其他程序包。
使用情况: winget [<命令>] [<选项>]
下列命令有效:
install 安装给定的程序包
show 显示包的相关信息
source 管理程序包的来源
search 查找并显示程序包的基本信息
list 显示已安装的程序包
upgrade 显示并执行可用升级
uninstall 卸载给定的程序包
hash 哈希安装程序的帮助程序
validate 验证清单文件
settings 打开设置或设置管理员设置
features 显示实验性功能的状态
export 导出已安装程序包的列表
import 安装文件中的所有程序包
如需特定命令的更多详细信息,请向其传递帮助参数。 [-?]
下列选项可用:
-v,--version 显示工具的版本
--info 显示工具的常规信息
可在此找到更多帮助: https://aka.ms/winget-command-help
Windows
2022-04-29
我对开发者十分佩服,几十年如一日的开发这样一个现阶段明显没有盈利可能的系统。等这个项目稳定下来之后,或许很多古老的遗留系统可以收益。
相关的镜像可以在 SourceForge 上取得, 最新的版本是 03/31 发布的 0.4.14 release 19,可以下载 LiveCD 体验。
PS:完整的 ISO 只有 110M,Live 版 80M。
PS:最新版完整镜像的下载链接: https://sourceforge.net/projects/reactos/files/latest/download
项目介绍
1995 年,FreeWin95 项目
1998 年,ReactOS 项目启动

主要用 C 编写。目标是完全不采用 Windows 代码的前提下,对 x86/amd64 平台的 Windows NT 5.2 (Windows Server 2003) 兼容。
代码审核非常严格,曾经由于被怀疑用了反编译 Windows 的代码而自行开展大规模的代码审查。
研发团队规模有限。
GitHub 地址: https://github.com/reactos/reactos


推荐的硬件配置:
- CPU: x86/amd64 兼容处理器
- 内存:256MB (最小 64MB)
- 硬盘:IDE/SATA,主分区至少 350MB
- 显卡:2MB VGA
- CD-ROM,普通键鼠
体验感受
VirtualBox 4C1G 虚拟机,起最新版 Live 镜像,大概 2 分钟后进入桌面(Installing devices 这一步太久了)。
选的 Chinese (RPC)
语言,然后 US
键盘。Run ReactOS Live CD
进来之后,中文都是小方框。
然后重启,选择安装 (Install ReactOS
),提示需要插入安装媒体。
然后还是换成 English (United States)
语言, 可以进入桌面,但是感觉不怎么流畅。
参考资料与拓展阅读
Windows Windows10
2021-06-27
一般安装的软件都可以在开始菜单的 “所有应用” 中看到,选 “固定到开始屏幕” 就行了。
不过,那些 Portable 的绿色软件,如果要放进去怎么弄呢?
- 创建快捷方式(我一般直接发送快捷方式到桌面)
- 将快捷方式复制到
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\
我一般会改个名,比如:qq.exe
=> QQ
- 现在会发现
所有应用
里面出现了新增的那个快捷方式
- 然后,就是固定到开始屏幕就行了。
Windows 计算机网络
2021-05-10
抱歉,水文一篇
Windows CMD
2021-03-07
cmd
- 大小写不敏感
- 参数通常是
/
开头,而不像 Unix 下是 -
- 帮助:
-help
, /?
|
管道、>
输出重定向、>>
输出重定向(追加)、<
输入重定向、<< EOF
heredoc、<<< CONTENT
输入重定向(字符串)作用和 Linux 相同
- Ctrl + C 退出执行
help
help | more
dir C:\Windows\System32\*.exe
dir C:\Windows\System32\*.msc
export
echo
cls # 类似 clear
tasklist
taskkill
cd
mkdir / md
del # 类似 rm
del /q anydir
rd # 删除目录(非空目录不可删除)
dir # 类似 ls
tree
find
findstr # 类似 grep
ping
ipconfig
netstat
tracert
route
dig
nslookup
shutdown -s -t 300 # 定时关机
explorer # 文件浏览器
notepad # 记事本
taskmgr # 命令管理器
regedit # 注册表编辑器
services.msc # 服务
注册表
Registry, 港澳台地区称之为登录档。就是一个树形结构的数据库,存放系统和应用程序的配置信息。
Linux 下各个应用程序,甚至操作系统的各组件都采用不同的配置文件存储在不同的地方,但 Windows 却采用了这种集中式存储。
https://zh.wikipedia.org/zh-hans/注册表
名称 |
作用 |
HKEY_CLASSES_ROOT |
存储Windows可识别的文件类型的详细列表,以及相关联的程序。 |
HKEY_CURRENT_USER |
存储当前用户设置的信息。 |
HKEY_LOCAL_MACHINE |
包括安装在计算机上的硬件和软件的信息。 |
HKEY_USERS |
包含使用计算机的用户的信息。 |
HKEY_CURRENT_CONFIG |
这个分支包含计算机当前的硬件配置信息。 |
常见数据结构:
REG_SZ
字符串
REG_BINARY
二进制
REG_DWORD
32 位二进制值,显示为 8 位的十六进制数
REG_MULTI_SZ
多字符串,nul 隔开,结尾两个 nul
REG_EXPAND_SZ
python 有内置库 winreg 可以用来操作注册表。
import winreg
reg = winreg.ConnectRegistry(None, winreg.HKEY_LOCAL_MACHINE)
key_name = r'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'
key = winreg.OpenKey(reg, key_name)
for i in range(1024):
try:
sub_key_name = winreg.EnumKey(key, i)
sub_key = winreg.OpenKey(key, sub_key_name)
value = winreg.QueryValueEx(sub_key, "DisplayName")
print('%s: %s' % (sub_key_name, value))
except EnvironmentError:
break
Services
# 小心 sc 命令中比较另类的等于号后有空格设计
sc create memcached binPath= "c:\memcached.exe -l 0.0.0.0 -m 128 -d" DisplayName= "Memcached" start= auto
PowerShell
虽然使用频率不高,但和 PowerShell 少有的几次接触感觉很好,很强大。其结构化而非文本的数据结构让人印象深刻。
get-alias | findstr /I get-alias
gal | findstr ls
man
help
ls # Get-ChildItem
ps # Get-Process
ps | select Name, Id
ps | ft -Property Id, ProcessName, Handles, VM, WS, CPU -AutoSize
ps | where { $_.Name -eq "explorer" }
curl # Invoke-WebRequest
rm # Remove-Item
rmdir # Remove-Item
ni -ItemType File -Path C:\Users\Administrator\file.txt # New-Item
cp # Copy-Item
cp -Path C:\Users\Administrator\file.txt -Destination D:\Temp\
gcm # Get-Command
shcm # Show-Command
get-volume
工具
GUI
- process explorer
- everything
- HeidiSQL
- PuTTY
- WizTree 目录分析
包管理
- choco (chocolatey)
- scoop
- winget
安装包格式
- MSI 官方出品, Windows Installer
- NSIS Nullsoft Scriptable Install System, zlib license
- WiX
- Inno Setup