1
mopian 2020-06-06 11:08:29 +08:00 1
找本 Windows internals,上面全是很重要的知识
|
2
Guys 2020-06-06 11:14:46 +08:00 4
命令行访问带空格的目录时,必需要加引号,不然访问不到:
``` C:\>cd "Program Files\Java" ``` 另最新版的 Windows 系统已经帮你处理了这块.table 联想自动会加的,有时候就是用代码执行 bat 的时候需要注意这里. |
3
Whsiqi 2020-06-06 11:19:41 +08:00 via Android 4
文件管理器搜索框输入 cmd
PowerShell Wt |
4
also24 2020-06-06 11:23:25 +08:00 24
安装 Win10 的时候,不要直接登录微软帐号,先建立离线英文名帐号,等安装完成以后再登录。
这样可以避免 Win10 把你的用户文件夹设置成中文。 部分不思进取的软件,在遇到用户文件夹为中文时会崩溃~ |
5
also24 2020-06-06 11:24:11 +08:00
百度输入法和 JDK 安装包有冲突,如果确实需要使用百度输入法,可以先安装 JDK 再安装百度输入法。
|
6
Track13 2020-06-06 11:25:30 +08:00 via Android 22
win + shift + s 截图,不要再手机拍屏幕了。
|
7
winterbells 2020-06-06 11:27:11 +08:00 via Android
去年一贴子,很多人不知道怎么在当前目录打开 cmd 。。。
|
8
zhuangzhuang1988 2020-06-06 11:27:55 +08:00 1
不要瞎安装软件
然后怪 windows 各种弹窗. |
9
litmxs 2020-06-06 11:35:45 +08:00 via Android 6
Windows 中一些特殊单词不能作为文件名,例如 aux 、com1 、com2 、prn 、con 、nul,如果你发现有软件用用户文件名作为配置文件夹名称,你可以把自己用户名改成上面那些单词,软件可能就会崩溃。
Windows 路径长度最多为 260 个字符。 |
11
iceheart 2020-06-06 11:45:15 +08:00 via Android
讲不出来,因为不了解
|
12
imn1 2020-06-06 12:24:39 +08:00
如何分辨给出路径是 junction 还是目录软链
|
13
mmdsun 2020-06-06 12:27:44 +08:00 18
上次开这种帖子的时候发现有人连按住 ctrl 可以多选文件都不知道。
win 创建一个没后缀名的文件需要在文件名称后面紧跟一个点,比如.ignore.系统会自动识别成.ignore 文件删除不掉提示被占用。可以通过资源监视器--cpu--关联句柄里搜索文件,然后结束进程。 使用 PROGRA~1 代替 Program Files 。cmd 访问文件最快的办法是把文件用鼠标拖入 cmd 中。 win 软件闪退想找错误日志? 运行里打开 eventvwr.exe Windows 文件历史记录可以备份文件十分好用,win 自带的搜索可以设置搜索文件的内容(包括 txt,word,excel 等文件内容) 按住 ctrl+shift+alt 再任务管理器,任务管理器会进入精简模式,便于在系统资源不足时使用任务管理器。任务管理器卡死崩溃,按 ctrl+shift+esc 可以让崩溃的任务管理器在 10 秒内重新启动 创建存储池,可以有效提升磁盘速度。 (若开启 Raid 0 速度快 但有数据丢失风险 在开始菜单点关机重启时,按住 shift 可以修改系统启动模式或进入高级恢复选项。 Win 可以设置在重要操作时要求输入密码:组策略编辑器,Windows 组件,凭据用户界面-要求输入凭据的受信任路径,点击启用.系统 UAC 需要开最高。这样安装软件,修改系统重要设置都需要验证密码。 电脑配置不高,你使用软件比较卡顿时,可以在任务管理器修改进程优先级。正常改为:高于正常。 |
14
imn1 2020-06-06 13:01:42 +08:00 1
@also24 #4
因为 windows 路径是一种复杂的混合编码,如果不是调用 windows api 的话,还是不容易处理的 windows 里面称呼的 unicode,主要是指 utf16le,而 ANSI 则支持本地 locale 和 ASCII,windows 路径同时支持上述情况 有些本地 locale 双字节字符中,第二字节是含有路径排除字符的,例如 GBK “東”、“榎”等,第二字节是 5C,也就是“\” 10 多年前“研究”过这个,说是研究,实际不懂 C 和 windows 核心,还是看资料而已 至少 php5 时代都没能搞定 windows 路径这个难题(现在如何就不知道了),后来转了 python3,全面用 utf8 (本地 locale 也读作 utf8 ),基本无视了 windows 的路径问题,算是一种解决 即使现在,python3+opencv 还是要小心翼翼,路径问题还是存在 @litmxs #9 windows 路径可以在组策略修改,突破默认限制 另外,windows 和 linux 默认路径长度最大限制数字上看差不多,但实际差很远,windows 是字符,linux 是字节(?) |
15
CEBBCAT 2020-06-06 13:11:36 +08:00 via Android
重要的是少看知乎上这种看起来含金量真高,但是你好好看看 Windows 7 的自带帮助就能学到大部分,遇到问题 Google 一下就能补全的“冷门知识”
|
16
calloc 2020-06-06 13:19:21 +08:00 2
资源管理器中按住 Shift,再按鼠标右键会弹出带有"在此处打开 CMD/Powershell 窗口"的菜单
|
17
chouchoui 2020-06-06 13:27:27 +08:00 2
选中文件上按住 Shift 点鼠标右键,菜单里会多出一项复制为路径
|
18
yukiloh 2020-06-06 15:40:21 +08:00 via Android 3
alt 双击文件夹…
|
19
myCupOfTea 2020-06-06 15:42:49 +08:00
命令行打开 powershell $profile 文件,比如 vscode, code $profile
设置允许执行自定义脚本 set-ExecutionPolicy RemoteSigned 自定义 powershell 脚本,然后就可以在 $profile 对应的路径文件里修改自定义脚本呢 分享个我自己的脚本 function curPath { return (Get-Location).path } function open($path) { return explorer($path) } function stitle($title) { $host.ui.RawUI.WindowTitle = $title } function ol { explorer(curPath) } function olp { start-process powershell } function olpp { start-process powershell -ArgumentList "-noexit", "activate base" } function lpy($path) { $command = "python {0}" -f $path activate base iex $command } function olpy($path) { $command = "lpy {0}" -f $path start-process powershell -ArgumentList "-noexit", $command } function i($path = './') { idea64.exe $path } function gtm($commit = 'nth') { git commit -m"$commit" } function gta { git add -A } function gtp { git push } function gto { git push origin master } function gts { git status } function ws { cd "D:/zouwendi" } function ow { cd "C:\Users\54209\OneDrive" } function owdc { cd "C:\Users\54209\OneDrive\Documents\公司文档" } function Get-HashString { [CmdletBinding()] Param ( [int] $length = 8 ) Begin { } Process { Write-Output ( -join ((0x30..0x39) + ( 0x41..0x5A) + ( 0x61..0x7A) | Get-Random -Count $length | % { [char]$_ }) ) } } function tmp { cd "D:\workspace\tmp" } function ctmp { cd "D:\workspace\tmp" $path = (Get-HashString) mkdir $path cd $path } function dtmp { cd "D:\workspace\tmp" rimraf * } |
20
Cielsky 2020-06-06 15:45:54 +08:00 via Android
@winterbells 现在是不是没这个选项了,只有 powershell 的
|
21
ysc3839 2020-06-06 15:52:36 +08:00 via Android
Unix 进程参数是字符串数组,由 shell 进行解析分割参数,然后传递字符串数组给子进程。
Windows 进程参数只是一个字符串,由程序根据自己的规则解析成 C 语言风格的字符串数组。大多数程序的解析规则是一致的,Windows 有提供一个解析命令行参数的函数,Visual C++ 也自己实现了一个解析器。 |
22
Tianao 2020-06-06 15:55:51 +08:00
如何更改网络适配器的 IP 地址。
前几天去某软件大厂的某分支机构,他们的技术员工不会给自己电脑改 IP 地址。 |
23
winterbells 2020-06-06 15:57:31 +08:00
@Cielsky #19 手动改,或者 DISM++ 之类的优化工具
或者地址栏输入 cmd + enter |
25
u823tg 2020-06-06 16:25:33 +08:00
ctrl+shift+esc 直接打开任务管理器
|
26
Huelse 2020-06-06 16:28:51 +08:00 1
将应用固定在任务栏,win+1,win+2 可以按顺序快速启动和切换应用
|
27
geelaw 2020-06-06 16:43:06 +08:00 6
@Guys #2 错误,cd 是内部命令,你可以写 C:\>cd program files 进入 C:\Program Files,而且如果你的 program 和 files 之间有两个空格不会成功。
@also24 #4 微软账户的默认用户名是 ID 的前五个字母,而不是用户的名字。 @litmxs #9 文件名不能为 DOS 设备名的限制是 Win32 的而不是 Windows 的,而且通过 Win32 最大可以访问长度是 32768 的路径。 @mmdsun #13 那个点是多余的,直接建立名字是 .txt 的文件就可以得到名字是 .txt 的文件。 此外 Program Files 不一定是 PROGRA~1,而且 8.3 文件名可以被关掉甚至删除。 "要求输入凭据的受信任路径" 的作用是要求输入密码之前用 Ctrl+Alt+Delete,和 UAC 是否输入密码是两个不同的问题。如果你想要管理员也输入密码,需要设置 User Account Control: Behavior of the elevantion prompt for administrators in Admin Approval Mode 为 Prompt for credentials on the secure desktop 。 |
28
mmdsun 2020-06-06 17:06:31 +08:00
@geelaw 不是多余的.允许创建只有扩展名的文件是 Windows 10 19H1 和 20H1 才有的功能. 早期 windows 会提示必须输入文件名称. 像'.ignore, .config 在资源管理器不多加一个点是创建不了的.'
要求输入凭据的受信任路径 确实是我记错了 感谢补充. |
29
also24 2020-06-06 17:14:50 +08:00
@geelaw #27
我不太确定 Win10 目前是否修改了策略,因为我目前重装都选择离线账户。 之前如果登录账户,会自动创建 "C:/Users/卿 李 /" 这样的用户文件夹(没错中间还有个空格) |
31
Nasei 2020-06-06 18:31:08 +08:00
@imn1 c/c++ 处理 win 路径的话,字符串内部全部用 utf8 传递,临近调用 win32 api 前转成宽字符串然后调用 W 后缀的 api 基本就可以了吧
|
32
loading 2020-06-06 18:40:14 +08:00 via Android
format d: /autotest
这个 autotest 是不需确认,并不是只是测试。 |
33
Guys 2020-06-06 19:05:39 +08:00
@geelaw 你发的和我发的有啥区别啊,我写 cd 是在 cmd 里面直接写的 就是为了说明这个文件夹空格问题,您别跟这抖机灵啊,抖机灵也别艾特我啊,自己再一条么,上来就是错了,您看懂我发的啥了吗?您自己看懂自己发的啥了吗?有问题赶快去检查
|
34
bytesfold 2020-06-06 19:09:18 +08:00
win+tab 新建桌面,ctrl+win+←→快速切换
|
35
winnerczwx 2020-06-06 19:12:35 +08:00 via iPhone
@litmxs 踩过这个坑,枯了
|
36
hejw19970413 2020-06-06 19:31:26 +08:00
windows10 用户名一定要英文!!!!!!!!
|
37
mengqi 2020-06-06 19:38:34 +08:00 1
1. 按住 Ctrl+Shift,再单击打开可执行程序,就会通过管理员模式打开;
2. 修改 hosts 文件时,可以 Win+R 输入 drivers 直接打开 C:\Windows\System32\drivers 目录,之后再自行打开 .\etc\hosts,比一层层目录点进去要省不少事; 3. 有什么疑难杂症不妨打开事件查看器 Event Viewer 查看系统错误日志 4. 任务计划管理程序( Task Scheduler )类似 Linux 下的 crontab 可以设置一些定时任务跑一些自动化脚本 5. Windows 有局域网下的文件共享功能,开启后会启动一个 SMB 服务器,再通过 iOS 的「文件」应用作为客户端,连接服务器,就能跨系统传输文件,不需要第三方软件 |
38
systemcall 2020-06-06 20:15:49 +08:00 via Android
多用 win7 开始自带的搜索,可以解决很多问题
右键点击开始,可以打开一个菜单,很多设置都在上面 虚拟机装个原版 win7,桌面上按 f1,多看看内置帮助,写得挺好的,所以砍了 |
39
shijingshijing 2020-06-06 20:26:38 +08:00
@systemcall 哈哈,所以砍了
|
40
geelaw 2020-06-06 20:39:23 +08:00
@Guys #33
我理解你的表达的意思是:cd "A B" 才能成功,cd A B 不能成功,交互式使用时 Tab 补全时会自动对带空格的目录加引号。 我没有理解你说的在 batch 里要注意是什么意思:可能是说交互式补全会帮你加引号,batch 里要自己加;也可能是说 batch 里 cd 必须用引号。 无论是 batch 还是交互式,cd A B 都可以成功,所以你关于 cd 需要引号处理空格的表达是错误的。 如果你要问 cd 不需要引号为什么 Tab 补全 cd 也会带引号,这是因为 Command Prompt 比较初级,不会考虑当前命令是什么,故采用更一般的模式。 我相信自从 Windows 支持带空格的文件名以来(也就是至少 Windows 95 以来)就不需要在 cd 里面用引号,主要是为了兼容性,比如 cd %1 这种在 Windows 95 之前写的代码(假设文件名从来都没有空格)在 Windows 95 以后仍然可以正常工作。 不过我找不到 Windows 95 时期的参考文献了,从这篇可以看出 2012 年以来就不需要了 http://dosprompt.info/commands/cd.asp @mmdsun #28 理解了,这个限制只有 Explorer 有,我的意思用 Win32 访问时无此限制。 |
41
nightwitch 2020-06-06 21:14:50 +08:00 1
中文系统的 windows 默认编码 gbk,这是写程序碰到乱码的最常见的原因。
接上一条,由于中文系统默认 gbk,所以保存的源码,如果内部有中文注释,往往也是 gbk 编码,这会导致在默认 utf-8 的环境下无法编译,即使你的代码是合法的。 windows 下如果看到什么地方提到了 unicode,通常不是指的 utf-8,而是 utf16 。 Windows 下很多软件(比如老版的 visual studio)的 utf-8 往往指的是 utf-8 with BOM, 而很遗憾,其他系统的 utf-8 通常指的是 utf8 without BOM,而实际上 UTF-8 不需要 BOM 也能正确识别。 还有众所周知的,windows 的换行符是\r\n, 而*nix 系统的是\n 。 |
42
charlie21 2020-06-06 21:51:46 +08:00
文件路径解析
python 的 ntpath 模块可以帮助解析硬盘上的文件路径,无论是 win 路径 or linux / mac 路径,无视反斜杠的区别 参考 Extract file name from path, no matter what the os/path format a/b/c/ a/b/c \a\b\c https://stackoverflow.com/questions/8384737/extract-file-name-from-path-no-matter-what-the-os-path-format |
43
A3m0n 2020-06-06 22:04:59 +08:00
我想问一下,「域」是什么?
|
44
canonlemon 2020-06-06 22:12:13 +08:00
在 cmd 里面删除错误输入时,按住 Ctrl + 退格,会以单词为单位删除内容
|
45
canonlemon 2020-06-06 22:16:13 +08:00
在资源管理器里面,按 Ctrl + L,可以快速定位到地址栏,输入 cmd 或者 wt 可以在当前路径下打开终端
|
46
Meltdown 2020-06-06 22:22:05 +08:00 via Android
用虚拟机装个 Linux,然后多用 Linux :)
|
47
BAT 2020-06-06 22:26:51 +08:00 via iPhone
最快的关机方式不是 Alt+F4,而是桌面新建一个 bat 文件,内容是 shutdown /s /t 0,直接双击这个文件就可以关机了。
|
48
whoami9894 2020-06-06 22:32:53 +08:00
echo > my_directory::$INDEX_ALLOCATION
|
49
youla 2020-06-06 22:36:38 +08:00
alt+printscreen 窗口截图 printscreen 截全屏
截图内容在剪贴板上,对着聊天框或者画图工具或者其他图片处理软件粘贴... 我身边好多人不知道这个。。。。。。 |
52
jin7 2020-06-06 23:21:45 +08:00
cmd 里面 可以直接 cd c:\program files
上面的我都会了 哈哈 除了我点赞的两条之前不知道 |
53
MaxTan 2020-06-06 23:47:05 +08:00
摸鱼的时候时刻准备着 win+d
|
54
lxml 2020-06-07 00:04:08 +08:00
@Death #24 这点也很难受,为什么就不能提供可选,因为邮箱名比如 gmail 不让你选 六个字母以下的,但微软默认又只会截断取前五个字母比如你叫 [email protected] 微软给你的用户名却叫 abcde 。唯一绕过的方法就是先建立离线账户安装完毕再登陆,微软还特别恶心的好几个确认按钮让你不要用离线账户却不提供一个修改的方式。
|
55
tankb52 2020-06-07 00:08:20 +08:00
ctrl+alt+方向键可以调整屏幕方向 。
很多人不小心按错之后调不回来。 |
57
lqmrt 2020-06-07 00:31:15 +08:00 via iPhone
今天 get 到的,在当前目录下按文件名称首字母就能快速定位到指定的文件范围
|
58
cz5424 2020-06-07 00:33:57 +08:00
画界面的时候主线程不能卡住
|
62
lzk50136 2020-06-07 01:55:42 +08:00 via Android
alt+屏幕打印键,可以截图当前窗口
|
63
cheng6563 2020-06-07 02:11:28 +08:00 via Android
设置静态 IP 吧,一堆人不会设置的
|
65
CBS 2020-06-07 09:46:51 +08:00
按 F1 呼出系统以及其他软件的帮助文档
|
66
systemcall 2020-06-07 09:57:39 +08:00
@CBS 现在不行了,只能打开 Win10 的那个帮助页面,只有那一页了。猜测是把以前的打开帮助的那个程序修改了,直接打开那个页面。不得不说真是个**设计
|
68
charlie21 2020-06-07 17:52:38 +08:00 1
win + 数字键 快速启动某个固定到任务栏的程序··
win + q (query) 搜索 win + w (write) 手写笔 win + e (explorer) 资源管理器 win + r (run) 运行 win + a (alert) 通知中心 win + s (search) 也是搜索 win + d (disappear) 老板键 win + f (feedback) 系统反馈 win + x 等同于右键点击开始菜单 win + c (cortana) 微软小娜 win + v 剪切板 win + h 语言输入 win + m (minimal) 最小化窗口 win + . emoji win + ; emoji win + i 设置 win + p (project) 投影 win + + 放大镜 |
69
charlie21 2020-06-07 18:09:16 +08:00
win + d (desktop) 显示桌面
win + l (lock) 锁屏 Win+ t (taskbar) 任务栏上固定的应用 win + tab 虚拟桌面切换 win + ctrl + 左右键 切换虚拟桌面 win + shift + s 截图 ctrl + shift + Esc 任务管理器 win + s , 键入 powershell , ctrl + shift + Enter 以管理员权限启动 win + e (启动任务管理器), ctrl + l (激活地址栏), 键入 powershell 打开此路径在 powershell ctrl + w 关闭窗口 |
70
jackmod 2020-06-07 20:46:44 +08:00
完整的 unicode 路径(路径长度是 32767,连 explore.exe 都不支持)。
foo.exe "\\.\D:\当前代码页不支持的文件名" 如果 foo.exe 入口是 wWinMain,这个参数就是 wchar_t[]。 否则(以 932 代码页为例)会提示找不到"当前代??不支持的文件名" 还是完整的路径,你可以创建普通规则下无效的文件名。 "\\.\D:\COM" "\\.\D:\dot.." NTFS 数据流。 下载文件后的「解除锁定」就是数据流的一种。这玩意也可以自己加。 文件名格式为 "main.doc:hide.txt" 用 PowerShell 可以批量清除数据流。 cmd.exe 里使用 dir /r 命令可以观察数据流的存在。 |
71
charlie21 2020-06-12 00:51:09 +08:00
ctrl + win + Left 切换虚拟桌面
win + Space 切换输入法 |
72
dream4ever 2020-06-23 14:03:54 +08:00
用上 TotalCommander + Listary + Everything 之后,几乎就没再打开过 Windows 的资源管理器了,三大神器。
|