+ + + 「 PRODUCTIVITY 」 + + + 一月 31, 2020 +
+颜值是第一生产力 - Windows Terminal
+ ++ + + 文章字数 + 12k + + + + + 阅读约需 + 11 mins. + + + +
+ + + + + +From cfea6747de7de3e61504e0ad23c81a473e51a147 Mon Sep 17 00:00:00 2001
From: davidz
「 4 」
+「 5 」
+ 一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具, + +好用的 Shell - 现在可以用 PowerShell Core 或者 WSL 暂时代替。 +好用的包管理器 - 在开发时 C/Cpp 的库可以用VCPKG,而日常使用的软件就可以使用本文的主角Scoop 了。 + +¶安装 + +按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。 + +# 指定... +
+「 5 」
++ 一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具, + +好用的 Shell - 现在可以用 PowerShell Core 或者 WSL 暂时代替。 +好用的包管理器 - 在开发时 C/Cpp 的库可以用VCPKG,而日常使用的软件就可以使用本文的主角Scoop 了。 + +¶安装 + +按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。 + +# 指定... +
++ +记得我最早的时候用 Visual Studio 写了第一个 Hello World 程序,激动的点运行,出来个黑框一闪就过去了,啥也没看到。 + +后来偶然了解 PowerShell,又变成了一个蓝色的框,还会有进度提示,红的,黑的,突兀得很😢。 + +后来上了大学终于在 Ubuntu 上见到了 bash,完全改变了我对 Shell 的认知。 +傻傻分不清 Shell 和 Terminal 的我,... +
++ 到了期末都说要找个实习的工作,我也跟个风😂。 +我是主要是在实习僧上找的(就当免费做个广告吧),我住在美丽的泉城济南,这个地方好就好在,咳咳咳,我大概填了填简历,可能是没啥亮点,投了三四家都不要我😢。 +我分析原因大概有以下几条: + +我最喜欢最熟练的语言是 Python,但是现在国内的环境,Python 很少作为 Web 的后端,主要是用在机器学习(大数据分析,量化交易之类的)方面。济南大多... +
++ +敬告 +本博客请供参考,请不要抄袭。 + +这是 ANU COMP2310的第一次大作业,历时一个月左右,也是这个学期我写的最认真的一次作业,所以在博客搭建伊始,我先把这个记录下来。 +¶问题 +根据Assignment 1 PDF中的描述,大概的意思就是在三维空间中有许多的车,具有速度和加速度(都是三维向量),而且不管是否加速,都会消耗一定的能量,当然加速也会加快能量的消耗。然后就是有一个或多个能... +
++ 哈哈哈,这是一个经典的测试页面。 +一直以来都想拥有一个自己的博客,从WordPress开始,到Typecho,再到Halo,甚至中途尝试用 Django 自己实现了一个(不过样子也太丑了),虽然说一直在捣鼓博客,但是从来都是安装=>部署=>安装插件=>选择主题=>发布第一篇文章,然后就没有然后了。 +今天我突然看到Hexo的Obsidian主题,我觉得时机到了,毕竟颜值... +
+「 4 」
+「 5 」
+ 一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具, + +好用的 Shell - 现在可以用 PowerShell Core 或者 WSL 暂时代替。 +好用的包管理器 - 在开发时 C/Cpp 的库可以用VCPKG,而日常使用的软件就可以使用本文的主角Scoop 了。 + +¶安装 + +按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。 + +# 指定... +
+「 4 」
+「 5 」
+ 一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具, + +好用的 Shell - 现在可以用 PowerShell Core 或者 WSL 暂时代替。 +好用的包管理器 - 在开发时 C/Cpp 的库可以用VCPKG,而日常使用的软件就可以使用本文的主角Scoop 了。 + +¶安装 + +按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。 + +# 指定... +
+eval $(dircolors -b $HOME/.dircolors)
即可。
+Dev on Windows with WSL - 强烈推荐
+ +希望这个寒假能做完这些吧。
就这样。
diff --git a/categories/Productivity/index.html b/categories/Productivity/index.html index a43654c..7f998c1 100644 --- a/categories/Productivity/index.html +++ b/categories/Productivity/index.html @@ -130,7 +130,7 @@ animation-duration: 2.8s; background-image: radial-gradient(ellipse closest-side, rgba(0, 0, 0, 0.56), #100e17), - url(http://davidz.cn/static/blog/2020-01-31-beauty-is-productivity-windows-terminal/cover.jpg);"> + url(http://davidz.cn/static/blog/2020-02-03-windows-package-manager-scoop/cover.png);">文章字数 - 11k + 12k 阅读约需 - 10 mins. + 11 mins.
- +记得我最早的时候用 Visual Studio 写了第一个 Hello World 程序,激动的点运行,出来个黑框一闪就过去了,啥也没看到。
- -后来偶然了解 PowerShell,又变成了一个蓝色的框,还会有进度提示,红的,黑的,突兀得很😢。
- -后来上了大学终于在 Ubuntu 上见到了 bash,完全改变了我对 Shell 的认知。
-傻傻分不清 Shell 和 Terminal 的我,激动的打开 Git 自带的 bash,它却长成了这样。
- -一番优化之后也不是不能用,后来还入坑了 Cmder,用于替代 Putty 那个更加原始的 terminal。
-终于,2019 年微软开始进入开源世界,...
+一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具,
+++按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。
+
# 指定 Scoop 的安装路径,之后安装的 APP 会安装在 path/to/scoop/apps/
+$env:SCOOP='path/to/scoop'
+[environment]::setEnvironmentVariable...
- 查看全文
+ 查看全文
+ + + 「 PRODUCTIVITY 」 + + + 一月 31, 2020 +
++ + + 文章字数 + 12k + + + + + 阅读约需 + 11 mins. + + + +
+ + + + + +希望这个寒假能做完这些吧。
就这样。
@@ -191,7 +191,7 @@文章字数 - 11k + 12k 阅读约需 - 10 mins. + 11 mins.
- +记得我最早的时候用 Visual Studio 写了第一个 Hello World 程序,激动的点运行,出来个黑框一闪就过去了,啥也没看到。
- -后来偶然了解 PowerShell,又变成了一个蓝色的框,还会有进度提示,红的,黑的,突兀得很😢。
- -后来上了大学终于在 Ubuntu 上见到了 bash,完全改变了我对 Shell 的认知。
-傻傻分不清 Shell 和 Terminal 的我,激动的打开 Git 自带的 bash,它却长成了这样。
- -一番优化之后也不是不能用,后来还入坑了 Cmder,用于替代 Putty 那个更加原始的 terminal。
-终于,2019 年微软开始进入开源世界,...
+一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具,
+++按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。
+
# 指定 Scoop 的安装路径,之后安装的 APP 会安装在 path/to/scoop/apps/
+$env:SCOOP='path/to/scoop'
+[environment]::setEnvironmentVariable...
- 查看全文
+ 查看全文
+ + + 「 PRODUCTIVITY 」 + + + 一月 31, 2020 +
++ + + 文章字数 + 12k + + + + + 阅读约需 + 11 mins. + + + +
+ + + + + +因为跨平台,在项目开发过程中大量使用了 Linux 上 shell,systemctl,docker 这些工具以及 CFEngine, Zabbix 这些运维的东西,感觉又喜欢上了 Linux 和命令行,熟悉了之后真是很方便。
同时因为是 C/Cpp 项目,我们编译了很多开源项目,算是终于知道了 Linux 根目录下面每个目录都是干啥的。
-Linux 下的包管理器比如 apt,yum 用起来也很爽。所以我也看了看 Windows 下面的包管理器,发现了 Scoop 这个神器,我准备单独写一篇博客介绍它。
+Linux 下的包管理器比如 apt,yum 用起来也很爽。所以我也看了看 Windows 下面的包管理器,发现了 Scoop 这个神器,在另外一篇博文里介绍了它。
因为快离职的时候,新的需求要交叉编译 CFEngine(虽然到离职也没搞成功),但是让我发现了 MSYS2 这个交叉编译神器。
@@ -362,7 +362,7 @@ set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib/)
按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。
# 指定 Scoop 的安装路径,之后安装的 APP 会安装在 path/to/scoop/apps/$env:SCOOP='path/to/scoop'[environment]::setEnvironmentVariable('SCOOP',$env:SCOOP,'User')# 安装 ScoopInvoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
Scoop 只是一个包安装器,我们还需要软件源。
使用,
scoop bucket known
可以列出所有官方已知并推荐的源,使用,
scoop bucket add <bucket-name>
即可安装源。
main
- Scoop 官方默认主源,里面所有的软件符合标准。extras
- Scoop 官方扩展你源,里面的软件不完全符合标准。versions
- 可选版本的源。nightlies
- nightly 软件源,不推荐。nirsoft
- Nir Sofer开发的软件。php
- 不同版本的 php。nerd-fonts
- Nerd Fonts 和一些其他字体。nonportable
- 非便携软件(可能需要 UAC)。java
- 不同版本的 JDK,JRE。games
- 开源或免费的游戏以及游戏工具。jetbrains
- JetBrains 全家桶。和 Ubuntu 的 apt,CentOS 的 yum 基本相同。
# 搜索scoop search <package-name># 查看主页scoop home <package-name># 安装scoop install <package-name># 更新scoop update <package-name># 卸载scoop uninstall <package-name># 更新 Scoop,所有源,所有软件包scoop update *# 列出所有软件包scoop list
基本上常见的所有开源下载软件都是基于这个,不但可以跑在 x86 的电脑上, mips 的路由器,arm 的手机都不是问题。
需要注意的是,安装 aria2 后,Scoop 的默认下载器会自动改成 aria2,并开启多线程下载。
界面超原始,但是替代个收费的 WinRAR,以及一众国内带广告的解压软件不是问题。同时 Scoop 有时候也依赖于 7zip 来解压。
有的时候连个安卓手机就需要这个东西,虽然我不做安卓开发,但是我玩过微信跳一跳呀。
用于代替 cat,带行号,带高亮,可tail -f
。
著名的 CPU 信息查看软件。
著名的抓包软件,大学机考神器(CCTR-E 的题目和答案一起传输,哈哈哈)。
把字符串改成字符串图像,还有好几个主题,现在知道那些文档的开头是怎么生成了吧😄。
什么,你没听说过 git !!!,右上角,再见😢。
使用 Electron 开发的 aria2 GUI 客户端,可惜不能指定 aria2,只能使用自带的。
当你想截个屏,展示一下你的 Terminal 又不知道放什么内容时,就它了。
Scoop 同开发者开发的一系列 PowerShell 工具,我就说 PS 在国外还是很火的吧。
带边缘检测的强大截图软件。
想知道那个文件夹占用了你的 C 盘最多?
在山威如何快速获得妹子的 QQ,微信和手机号?加入极客鸟,用 Teamviewer 帮妹子修电脑吧。
下载个 1kb 的文本文件还需要动用迅雷?aria2?wget
一行命令搞定。
微软已经把 ssh 迁移到 Windows 平台上啦。
图形化管理服务器的文件。
虽然结构还是很清晰的,但不得不说,这几个名字起的太谜了。
这个目录下面时所有安装的软件包。每个软件包都是这样的,
每个 app 的 current 都指向最新的那个文件夹。
这个目录下是所有安装的源。
实际上每个源只是一个单独的 git 仓库,仓库里面有该源的所有软件包的信息文件。Scoop 依照这个信息文件安装配置软件包。
比如 7zip 的,
{ "homepage": "https://www.7-zip.org/", "description": "A multi-format file archiver with high compression ratios", "license": { "identifier": "Freeware,LGPL-2.0-only,BSD-3-Clause", "url": "https://www.7-zip.org/license.txt" }, "version": "19.00", "architecture": { "64bit": { "url": "https://7-zip.org/a/7z1900-x64.msi", "hash": "a7803233eedb6a4b59b3024ccf9292a6fffb94507dc998aa67c5b745d197a5dc" }, "32bit": { "url": "https://7-zip.org/a/7z1900.msi", "hash": "b49d55a52bc0eab14947c8982c413d9be141c337da1368a24aa0484cbb5e89cd" } }, "extract_dir": "Files/7-Zip", "bin": "7z.exe", "checkver": { "url": "https://www.7-zip.org/download.html", "regex": "Download 7-Zip ([\\d.]+)" }, "autoupdate": { "architecture": { "64bit": { "url": "https://7-zip.org/a/7z$cleanVersion-x64.msi" }, "32bit": { "url": "https://7-zip.org/a/7z$cleanVersion.msi" } } }, "shortcuts": [["7zFM.exe", "7-Zip"]]}
这个目录里面是下载的软件包安装程序等等缓存。
这个目录存放的是这些软件的配置之类的文件,这些文件的特点是在软件更新时不变。
这个目录是所有软件包的快捷方式。
每一个软件包都对应三个,
我其实有个疑问,我在命令行里输package-name
,执行的是package-name.exe
还是package-name.ps1
呢?
简单的测试后发现,是根据使用的 shell 确定的,CMD 里面是package-name.exe
,而 PowerShell 里面是 package-name.ps1
。
¶引用自 SpencerWoo
最后我还是想说一说:为什么我们推荐使用「包管理」?
在写这篇文章之前我也看了我派上面对包管理工具介绍的文章,我觉得这些文章其实都没太讲清为什么我们需要用「包管理」这个看上去复杂难用的命令行工具去下载、管理我们的软件。毕竟现在的软件管理哲学是「我去 App Store 下一个不就行了嘛?」
需要明确的是:包管理的设计初衷是为了方便开发者管理和搭建开发环境。用包管理工具能够快速的安装开发工具、开发依赖,从而免去复杂的路径、环境变量等信息的配置。而我们作为普通用户,实际上用「包管理」工具的过程,就是在借鉴这种「软件管理哲学」。
但更重要的,也是更对我们用户安装基本软件的过程来说的,是我前文提到的:
一行代码省去了搜索、筛选、下载等繁琐步骤
安装方便、更新方便、卸载也方便
同时也最大程度杜绝了流氓捆绑软件的安装(因为 Scoop 本身和 Scoop 安装过程参考的配置文件都是开源的,要安装什么一目了然)
这些都是传统的「搜索 - 筛选 - 下载」的软件管理过程带来的复杂过程和安全隐患的极佳解决方法。
尝试一下 Scoop 吧!如果你对这个简洁、克制却依旧强大的工具产生兴趣,你一定离高阶 Windows 用户不远了。
记得我最早的时候用 Visual Studio 写了第一个 Hello World 程序,激动的点运行,出来个黑框一闪就过去了,啥也没看到。
后来偶然了解 PowerShell,又变成了一个蓝色的框,还会有进度提示,红的,黑的,突兀得很😢。
后来上了大学终于在 Ubuntu 上见到了 bash,完全改变了我对 Shell 的认知。
傻傻分不清 Shell 和 Terminal 的我,激动的打开 Git 自带的 bash,它却长成了这样。
一番优化之后也不是不能用,后来还入坑了 Cmder,用于替代 Putty 那个更加原始的 terminal。
终于,2019 年微软开始进入开源世界,为我们带来了颜狗的胜利: Windows Terminal。
截止 2020 年 2 月 1 号,Windows Terminal 还处在测试阶段,但是已经相对比较完善了,正常使用没有什么大问题了。
在 Github 的 Release 中下载最新的那个双击安装就好啦,和方法 1 是一样的。
不推荐
用 wt 命令启动时会有一个 CMD 窗口,逼死强迫症。
Windows Terminal 在 Scoop 的 extras bucket 里面。
scoop install windows-terminal
通过配置,最终 terminal 可以长成这个样子。
现阶段只有 json 格式的配置文件,还没有图形化配置界面,项目组说正式版会有,最终应该会与 Vscode 的配置一样。
根据官网给出的 Profiles Schema,我们可以很快的配置我们自己定制化的 Terminal。
下面是我自己用的配置文件,
{ "$schema": "https://aka.ms/terminal-profiles-schema", "defaultProfile": "{807502AB-0C92-4DF7-9C7C-1E9F7A2A47DE}", // 默认配置的 GUID, 和下面的 profiles.list 中的一个相同 "alwaysShowTabs": true, // 无论有几个 tab 是否都显示标签栏 "requestedTheme": "dark", // "light","dark","system" "copyOnSelect": true, // 选择时复制 "launchMode": "maximized", // "maximized","default" "profiles": { // shell 或程序的配置 "defaults": { // 所有 shell 或程序配置的默认值 "acrylicOpacity": 0.7, // 背景透明度 "useAcrylic": true, // 是否启用透明背景 "colorScheme": "One Half Dark", // 色彩配置,和下面 schemes 中的一个相同 "fontFace": "JetBrains Mono", // 字体 "fontSize": 12, // 字号 "startingDirectory": ".", // 工作路径,设置成 “.” 可以实现在资源管理器的地址栏输入 wt 直接打开时工作目录是当前目录 "closeOnExit": "always" // "never","graceful","always" }, "list": [ { "guid": "{807502AB-0C92-4DF7-9C7C-1E9F7A2A47DE}", // 唯一 GUID "name": "powershell core", // 在下拉框中显示的名称 "commandline": "pwsh.exe -nol", // 执行的命令,-nol 的作用是不显示 Microsoft 那些提示 "icon": "path/to/icon" // 标签栏和下拉菜单中显示的图标 }, { "guid": "{85933BC0-E5D2-4299-9FBC-AC6C9F6DFD46}", "name": "davidz.cn", "commandline": "ssh.exe root@davidz.cn", // ssh 也可以,用于代替 Putty "icon": "path/to/icon" } ] }, "schemes": [ // 配色 { "name": "One Half Dark", // 我最喜欢的主题,Vscode,VS,JetBrains 全家桶都有类似主题,关键词 atom one dark "background": "#282C34", "black": "#282C34", "blue": "#61AFEF", "brightBlack": "#5A6374", "brightBlue": "#61AFEF", "brightCyan": "#56B6C2", "brightGreen": "#98C379", "brightPurple": "#C678DD", "brightRed": "#E06C75", "brightWhite": "#DCDFE4", "brightYellow": "#E5C07B", "cyan": "#56B6C2", "foreground": "#DCDFE4", "green": "#98C379", "purple": "#C678DD", "red": "#E06C75", "white": "#DCDFE4", "yellow": "#E5C07B" } ]}
GUID 可以使用这个在线网站 或者 Visual Studio 自带的工具 guidgen 生成。
除了我最喜欢的这个 One Half Dark,你还可以在这里选择自己喜欢的主题,复制到配置文件即可。
我推荐使用 JetBrains 推出的字体 JetBrains Mono,这是一款适合写代码的带连字的字体。类似的字体还有微软特意为 Windows Terminal 开发的 Cascadia Code,或者是 Mozilla 主推由 Nikita Prokopov 开发的 Fira Code。
这些字体都在积极的维护和更新中,除了双击安装之外,还可以使用 Scoop 安装方便更新。在 Scoop 的 nerd-fonts bucket 中。
scoop install JetBrains-Mono
PowerShell Core 是微软推出的基于 .Net Core 跨平台开源脚本语言,用于代替 PowerShell 和更加原始的 CMD。目前来看在国内基本上没什么影响力,国外相对好一些。除非大家都用 Windows Server 作为服务器,否则我感觉前景也不是很乐观。但是作为个人使用起来还是很好用的。
PowerShell Core 也有自己的模块管理平台 PowerShell Gallery。
搜索
Find-Module xxx
安装
Install-Module xxx
卸载
Uninstall-Module xxx
更新
Update-Module xxx
类似于 .bashrc
之与 bash, .zshrc
之与 zsh,PowerShell 也有自己的配置文件Microsoft.PowerShell_profile.ps1
,可以通过$PROFILE
访问。
使用模块Module
时,
Import-Module xxx
如果每次启动 PowerShell 都想引用该插件,则在Microsoft.PowerShell_profile.ps1
中添加Import-Module xxx
即可。
这个是 oh-my-zsh 的 PowerShell 版本,但是只能管理主题。
我比较喜欢的是这个 robbyrussel 主题,因为比较简洁。
后来参考了dotfiles,自己按照 oh-my-zsh 的 ys 主题魔改了一个,为了区分不同环境,我把最前面的符号改成了PS
。
类似于 autojump,实现原理就是每次 cd 都记录下来,然后 z name 会去匹配访问最多的那个路径,直接跳转到。非常实用。
我用了好久好久的 bash 才终于知道了还有像 zsh,fish 这样更加人性化的 shell。从前者切换到后者,就像从 dos 切换到 windows 一样惊艳。
这个是 zsh 的插件平台,支持添加主题,工具等等插件。
和上面 PowerShell 中的 z 是一样的。
这个主要是 git 命令的提示与自动补全(我没怎么用过)。
当你输入apt update
提示无法获得锁的时候,按上键加两下esc
就可以自动加上sudo
啦。
你背的过不同压缩文件的解压命令吗???背不过的话还是用用extract
吧。
根据命令历史记录自动建议,按右键自动补全。
命令高亮。
具体的配置文件可以参考这里。同时,如果你和我一样闲的话,也可以写一个简单的一键配置脚本,这样只需要有网络链接的环境下,就可以一键还原 zsh 环境了。
在 WSL 里面使用默认的.dircolors
可能会亮瞎眼,所以可以使用 dircolors-solarize作为代替。
下载后放到用户目录里面,在.zshrc
里面添加
eval $(dircolors -b $HOME/.dircolors)
即可。
]]>记得我最早的时候用 Visual Studio 写了第一个 Hello World 程序,激动的点运行,出来个黑框一闪就过去了,啥也没看到。
后来偶然了解 PowerShell,又变成了一个蓝色的框,还会有进度提示,红的,黑的,突兀得很😢。
后来上了大学终于在 Ubuntu 上见到了 bash,完全改变了我对 Shell 的认知。
傻傻分不清 Shell 和 Terminal 的我,激动的打开 Git 自带的 bash,它却长成了这样。
一番优化之后也不是不能用,后来还入坑了 Cmder,用于替代 Putty 那个更加原始的 terminal。
终于,2019 年微软开始进入开源世界,为我们带来了颜狗的胜利: Windows Terminal。
截止 2020 年 2 月 1 号,Windows Terminal 还处在测试阶段,但是已经相对比较完善了,正常使用没有什么大问题了。
在 Github 的 Release 中下载最新的那个双击安装就好啦,和方法 1 是一样的。
不推荐
用 wt 命令启动时会有一个 CMD 窗口,逼死强迫症。
Windows Terminal 在 Scoop 的 extras bucket 里面。
scoop install windows-terminal
通过配置,最终 terminal 可以长成这个样子。
现阶段只有 json 格式的配置文件,还没有图形化配置界面,项目组说正式版会有,最终应该会与 Vscode 的配置一样。
根据官网给出的 Profiles Schema,我们可以很快的配置我们自己定制化的 Terminal。
下面是我自己用的配置文件,
{ "$schema": "https://aka.ms/terminal-profiles-schema", "defaultProfile": "{807502AB-0C92-4DF7-9C7C-1E9F7A2A47DE}", // 默认配置的 GUID, 和下面的 profiles.list 中的一个相同 "alwaysShowTabs": true, // 无论有几个 tab 是否都显示标签栏 "requestedTheme": "dark", // "light","dark","system" "copyOnSelect": true, // 选择时复制 "launchMode": "maximized", // "maximized","default" "profiles": { // shell 或程序的配置 "defaults": { // 所有 shell 或程序配置的默认值 "acrylicOpacity": 0.7, // 背景透明度 "useAcrylic": true, // 是否启用透明背景 "colorScheme": "One Half Dark", // 色彩配置,和下面 schemes 中的一个相同 "fontFace": "JetBrains Mono", // 字体 "fontSize": 12, // 字号 "startingDirectory": ".", // 工作路径,设置成 “.” 可以实现在资源管理器的地址栏输入 wt 直接打开时工作目录是当前目录 "closeOnExit": "always" // "never","graceful","always" }, "list": [ { "guid": "{807502AB-0C92-4DF7-9C7C-1E9F7A2A47DE}", // 唯一 GUID "name": "powershell core", // 在下拉框中显示的名称 "commandline": "pwsh.exe -nol", // 执行的命令,-nol 的作用是不显示 Microsoft 那些提示 "icon": "path/to/icon" // 标签栏和下拉菜单中显示的图标 }, { "guid": "{85933BC0-E5D2-4299-9FBC-AC6C9F6DFD46}", "name": "davidz.cn", "commandline": "ssh.exe root@davidz.cn", // ssh 也可以,用于代替 Putty "icon": "path/to/icon" } ] }, "schemes": [ // 配色 { "name": "One Half Dark", // 我最喜欢的主题,Vscode,VS,JetBrains 全家桶都有类似主题,关键词 atom one dark "background": "#282C34", "black": "#282C34", "blue": "#61AFEF", "brightBlack": "#5A6374", "brightBlue": "#61AFEF", "brightCyan": "#56B6C2", "brightGreen": "#98C379", "brightPurple": "#C678DD", "brightRed": "#E06C75", "brightWhite": "#DCDFE4", "brightYellow": "#E5C07B", "cyan": "#56B6C2", "foreground": "#DCDFE4", "green": "#98C379", "purple": "#C678DD", "red": "#E06C75", "white": "#DCDFE4", "yellow": "#E5C07B" } ]}
GUID 可以使用这个在线网站 或者 Visual Studio 自带的工具 guidgen 生成。
除了我最喜欢的这个 One Half Dark,你还可以在这里选择自己喜欢的主题,复制到配置文件即可。
我推荐使用 JetBrains 推出的字体 JetBrains Mono,这是一款适合写代码的带连字的字体。类似的字体还有微软特意为 Windows Terminal 开发的 Cascadia Code,或者是 Mozilla 主推由 Nikita Prokopov 开发的 Fira Code。
这些字体都在积极的维护和更新中,除了双击安装之外,还可以使用 Scoop 安装方便更新。在 Scoop 的 nerd-fonts bucket 中。
scoop install JetBrains-Mono
PowerShell Core 是微软推出的基于 .Net Core 跨平台开源脚本语言,用于代替 PowerShell 和更加原始的 CMD。目前来看在国内基本上没什么影响力,国外相对好一些。除非大家都用 Windows Server 作为服务器,否则我感觉前景也不是很乐观。但是作为个人使用起来还是很好用的。
PowerShell Core 也有自己的模块管理平台 PowerShell Gallery。
搜索
Find-Module xxx
安装
Install-Module xxx
卸载
Uninstall-Module xxx
更新
Update-Module xxx
类似于 .bashrc
之与 bash, .zshrc
之与 zsh,PowerShell 也有自己的配置文件Microsoft.PowerShell_profile.ps1
,可以通过$PROFILE
访问。
使用模块Module
时,
Import-Module xxx
如果每次启动 PowerShell 都想引用该插件,则在Microsoft.PowerShell_profile.ps1
中添加Import-Module xxx
即可。
这个是 oh-my-zsh 的 PowerShell 版本,但是只能管理主题。
我比较喜欢的是这个 robbyrussel 主题,因为比较简洁。
后来参考了dotfiles,自己按照 oh-my-zsh 的 ys 主题魔改了一个,为了区分不同环境,我把最前面的符号改成了PS
。
类似于 autojump,实现原理就是每次 cd 都记录下来,然后 z name 会去匹配访问最多的那个路径,直接跳转到。非常实用。
我用了好久好久的 bash 才终于知道了还有像 zsh,fish 这样更加人性化的 shell。从前者切换到后者,就像从 dos 切换到 windows 一样惊艳。
这个是 zsh 的插件平台,支持添加主题,工具等等插件。
和上面 PowerShell 中的 z 是一样的。
这个主要是 git 命令的提示与自动补全(我没怎么用过)。
当你输入apt update
提示无法获得锁的时候,按上键加两下esc
就可以自动加上sudo
啦。
你背的过不同压缩文件的解压命令吗???背不过的话还是用用extract
吧。
根据命令历史记录自动建议,按右键自动补全。
命令高亮。
具体的配置文件可以参考这里。同时,如果你和我一样闲的话,也可以写一个简单的一键配置脚本,这样只需要有网络链接的环境下,就可以一键还原 zsh 环境了。
在 WSL 里面使用默认的.dircolors
可能会亮瞎眼,所以可以使用 dircolors-solarize作为代替。
下载后放到用户目录里面,在.zshrc
里面添加
eval $(dircolors -b $HOME/.dircolors)
即可。
Dev on Windows with WSL - 强烈推荐
]]>我是主要是在实习僧上找的(就当免费做个广告吧),我住在美丽的泉城济南,这个地方好就好在,咳咳咳,我大概填了填简历,可能是没啥亮点,投了三四家都不要我😢。
我分析原因大概有以下几条:
最后还是十分感谢秦老师❤️,不但收了我到浪潮实习,还在实习过程中给了我很多帮助和指导。
下面列一列我学习了解的项目工具之类的。
我们主要做了一个插件管理器,是基于 CppMicroServices 的二次开发。这是一个 Cpp 的微服务框架,主要实现了 Bundle 的全生命周期管理,注册,启动,停止,状态管理等。
大爱 Jetbrains 全家桶,我实习的第一件事大概就是给组里所有人安利了 CLion 吧。与宇宙第一 IDE Visual Studio 相比最突出的优点有
综上所述,对于 Cpp 的 CMake 跨平台项目,还是推荐使用 CLion 作为 IDE。
我猜测 Visual Studio 是宇宙第一 IDE 应该说的是对于 C# 项目吧。
以前的 C/Cpp 项目对我来说就是个谜,解决方案、项目傻傻分不清楚,Visual Studio 写单文件程序,解算法题还是很溜的,但是两个文件以上就很晕。
傻瓜式的配置的优点和确定都是非常显著的,好用是好用,用好是真的难。
CMake 作为这几年流行的跨平台构建工具,实现了配置式构建,终于让我理解了大学里 Linux 老师讲的程序编译链接都是些啥。
下面我简单写一写 CMake 的入门知识。
Platform | Windows | Linux |
---|---|---|
GNU(open source) | MinGW, MinGW-w64 | GCC(GNU Compiler Collection) |
Other | Clang(Apple), MSVC(Microsoft), ICC(Intel) etc. | Clang(Apple), ICC(Intel) etc. |
上面这些编译器都可以作为 CMake 的编译器。
这里主要还是推荐 GCC,毕竟老牌,经过这么多年的洗礼了。
其次的话推荐 CLang,这些年对于新特性,特别是 C++20,支持的不错。
再次就是如果真的需要 Windows 原生底层支持,那就只能使用 MSVC 啦。
Platform | Windows | Linux |
---|---|---|
GNU(open source) | MinGW-make(Makefile) | make(Makefile) |
Other | nmake(Makefile), MSBuild(.vcxproj), ninja(.ninja), qmake etc. | ninja(.ninja), qmake etc. |
Solution | Visual Studio(.sln), QT(.project) | XCode, QT(.project) |
以上所有都可以作为 CMake 的 Generator。
IDE 可以识别 CMake 根据 CMakeLists.txt 生成的 CMakeCache.txt,从中获得项目构成,编译连接选项等,从而替代解决方案。
我们在项目中使用的情况是,在 Linux 下使用 make,在 Windows 下使用 nmake。
Generate a Project Buildsystem cmake [<options>] <path-to-source> cmake [<options>] <path-to-existing-build> cmake [<options>] -S <path-to-source> -B <path-to-build>Build a Project cmake --build <dir> [<options>] [-- <build-tool-options>]Install a Project cmake --install <dir> [<options>]Open a Project cmake --open <dir>Run a Script cmake [{-D <var>=<value>}...] -P <cmake-script-file>Run a Command-Line Tool cmake -E <command> [<options>]Run the Find-Package Tool cmake --find-package [<options>]View Help cmake --help[-<topic>]
这些其实用不太到,构建别人的项目只使用简单的cmake ..
就好啦。
其他常用的 CLion 都有相应的图形化设置。
<TargetName>: gcc <arg1> <arg2> ... <file> g++ <arg1> <arg2> ... <file> gcc <arg1> <arg2> ... <file>
这个是传统的 makefile,事实上,对于大型项目,已经很少有人这么写了,详细参考Autotools。
cmake_minimum_required(VERSION 3.16)project(Demo)set(CMAKE_CXX_STANDARD 14)find_package(Poco REQUIRED COMPONENTS Foundation)include_directories(include)add_executable(Demo src/main.cpp)set(BUILD_SHARED_LIBS true)add_library(Cal src/cal.cpp include/cal.h)message(STATUS ${Poco_LIBRARIES})target_link_libraries(Demo ${Poco_LIBRARIES} Cal)set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin/)set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib/)
这个是一个简单的 Demo,链接外部的 Poco 库,还编译生成了一个动态库和一个可执行文件,然后指定了输出目录。
整体难度中等,主要原因是官网文档有一点看不懂😢。
这个是微软开发的,类似于 Python 的 pip,Nodejs 的 npm,总而言之就是个依赖包管理器。主要适用于解决开发依赖问题。
比如安装一个 poco,原来你需要下载源码->编译源码->把文件放进项目->修改编译链接选项,然后才能用,现在你只需要
vcpkg install poco
然后在 CMakeLists.txt 里面添加
find_package(Poco REQUIRED COMPONENTS Foundation)
然后再连接上 Target 就好啦。
Vcpkg 甚至还允许你使用
vcpkg install poco:x64-windows
直接安装 64 位的 Poco 库。
至于搜索和卸载都大同小异。
但是,它有一个致命问题是,不支持版本管理,每个库都是由一个文件指定的,而不是像 pip,npm 之类的,有个在线仓库,所以,你 vcpkg 的版本直接决定了依赖的版本。
vcpkg 安装依赖都是下载后现编译安装的,不过这个应该是 C/Cpp 项目不可避免的,我也没找到 Windows 下更好的依赖包管理器。
这个类似于野生 C++标准类库Boost,但是官网说很轻量,使用感觉也确实是这样。但是用起来总感觉有一些问题,我也提了 issue,作者也没回我,可能太忙了吧。
基本上能够让 Cpp 在使用上达到 Java 的水平吧,但是肯定还是有一定的差距的,跟我熟悉的 Python 更是相差甚远,毕竟不是标准库,也情有可原吧。
用了一段时间之后,感觉这个库的实现还是很标准的,看了一些源代码,也很规范,以后再有 Cpp 的项目可以着重考虑一下了。
因为跨平台,在项目开发过程中大量使用了 Linux 上 shell,systemctl,docker 这些工具以及 CFEngine, Zabbix 这些运维的东西,感觉又喜欢上了 Linux 和命令行,熟悉了之后真是很方便。
同时因为是 C/Cpp 项目,我们编译了很多开源项目,算是终于知道了 Linux 根目录下面每个目录都是干啥的。
Linux 下的包管理器比如 apt,yum 用起来也很爽。所以我也看了看 Windows 下面的包管理器,发现了 Scoop 这个神器,我准备单独写一篇博客介绍它。
因为快离职的时候,新的需求要交叉编译 CFEngine(虽然到离职也没搞成功),但是让我发现了 MSYS2 这个交叉编译神器。
MinGW 是在 Windows 平台的GCC,而 CygWin 和 MSYS2 均是在 MinGW 基础上的POSIX子操作系统(概念类似于微软 WSL)。
CygWin、Msys、MinGW、Msys2 的区别与联系
选择 MSYS2 而不是 MinGW 也不是 CygWin 的主要原因也是因为 MSYS2 的包管理器 pacman。
交叉编译也是个大坑,巨坑无比,反正我也没研究明白,七八个可执行文件就编译出来一个。
感谢所有在实习中帮助过我的老师,同事们❤️。
]]>我是主要是在实习僧上找的(就当免费做个广告吧),我住在美丽的泉城济南,这个地方好就好在,咳咳咳,我大概填了填简历,可能是没啥亮点,投了三四家都不要我😢。
我分析原因大概有以下几条:
最后还是十分感谢秦老师❤️,不但收了我到浪潮实习,还在实习过程中给了我很多帮助和指导。
下面列一列我学习了解的项目工具之类的。
我们主要做了一个插件管理器,是基于 CppMicroServices 的二次开发。这是一个 Cpp 的微服务框架,主要实现了 Bundle 的全生命周期管理,注册,启动,停止,状态管理等。
大爱 Jetbrains 全家桶,我实习的第一件事大概就是给组里所有人安利了 CLion 吧。与宇宙第一 IDE Visual Studio 相比最突出的优点有
综上所述,对于 Cpp 的 CMake 跨平台项目,还是推荐使用 CLion 作为 IDE。
我猜测 Visual Studio 是宇宙第一 IDE 应该说的是对于 C# 项目吧。
以前的 C/Cpp 项目对我来说就是个谜,解决方案、项目傻傻分不清楚,Visual Studio 写单文件程序,解算法题还是很溜的,但是两个文件以上就很晕。
傻瓜式的配置的优点和确定都是非常显著的,好用是好用,用好是真的难。
CMake 作为这几年流行的跨平台构建工具,实现了配置式构建,终于让我理解了大学里 Linux 老师讲的程序编译链接都是些啥。
下面我简单写一写 CMake 的入门知识。
Platform | Windows | Linux |
---|---|---|
GNU(open source) | MinGW, MinGW-w64 | GCC(GNU Compiler Collection) |
Other | Clang(Apple), MSVC(Microsoft), ICC(Intel) etc. | Clang(Apple), ICC(Intel) etc. |
上面这些编译器都可以作为 CMake 的编译器。
这里主要还是推荐 GCC,毕竟老牌,经过这么多年的洗礼了。
其次的话推荐 CLang,这些年对于新特性,特别是 C++20,支持的不错。
再次就是如果真的需要 Windows 原生底层支持,那就只能使用 MSVC 啦。
Platform | Windows | Linux |
---|---|---|
GNU(open source) | MinGW-make(Makefile) | make(Makefile) |
Other | nmake(Makefile), MSBuild(.vcxproj), ninja(.ninja), qmake etc. | ninja(.ninja), qmake etc. |
Solution | Visual Studio(.sln), QT(.project) | XCode, QT(.project) |
以上所有都可以作为 CMake 的 Generator。
IDE 可以识别 CMake 根据 CMakeLists.txt 生成的 CMakeCache.txt,从中获得项目构成,编译连接选项等,从而替代解决方案。
我们在项目中使用的情况是,在 Linux 下使用 make,在 Windows 下使用 nmake。
Generate a Project Buildsystem cmake [<options>] <path-to-source> cmake [<options>] <path-to-existing-build> cmake [<options>] -S <path-to-source> -B <path-to-build>Build a Project cmake --build <dir> [<options>] [-- <build-tool-options>]Install a Project cmake --install <dir> [<options>]Open a Project cmake --open <dir>Run a Script cmake [{-D <var>=<value>}...] -P <cmake-script-file>Run a Command-Line Tool cmake -E <command> [<options>]Run the Find-Package Tool cmake --find-package [<options>]View Help cmake --help[-<topic>]
这些其实用不太到,构建别人的项目只使用简单的cmake ..
就好啦。
其他常用的 CLion 都有相应的图形化设置。
<TargetName>: gcc <arg1> <arg2> ... <file> g++ <arg1> <arg2> ... <file> gcc <arg1> <arg2> ... <file>
这个是传统的 makefile,事实上,对于大型项目,已经很少有人这么写了,详细参考Autotools。
cmake_minimum_required(VERSION 3.16)project(Demo)set(CMAKE_CXX_STANDARD 14)find_package(Poco REQUIRED COMPONENTS Foundation)include_directories(include)add_executable(Demo src/main.cpp)set(BUILD_SHARED_LIBS true)add_library(Cal src/cal.cpp include/cal.h)message(STATUS ${Poco_LIBRARIES})target_link_libraries(Demo ${Poco_LIBRARIES} Cal)set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin/)set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib/)
这个是一个简单的 Demo,链接外部的 Poco 库,还编译生成了一个动态库和一个可执行文件,然后指定了输出目录。
整体难度中等,主要原因是官网文档有一点看不懂😢。
这个是微软开发的,类似于 Python 的 pip,Nodejs 的 npm,总而言之就是个依赖包管理器。主要适用于解决开发依赖问题。
比如安装一个 poco,原来你需要下载源码->编译源码->把文件放进项目->修改编译链接选项,然后才能用,现在你只需要
vcpkg install poco
然后在 CMakeLists.txt 里面添加
find_package(Poco REQUIRED COMPONENTS Foundation)
然后再连接上 Target 就好啦。
Vcpkg 甚至还允许你使用
vcpkg install poco:x64-windows
直接安装 64 位的 Poco 库。
至于搜索和卸载都大同小异。
但是,它有一个致命问题是,不支持版本管理,每个库都是由一个文件指定的,而不是像 pip,npm 之类的,有个在线仓库,所以,你 vcpkg 的版本直接决定了依赖的版本。
vcpkg 安装依赖都是下载后现编译安装的,不过这个应该是 C/Cpp 项目不可避免的,我也没找到 Windows 下更好的依赖包管理器。
这个类似于野生 C++标准类库Boost,但是官网说很轻量,使用感觉也确实是这样。但是用起来总感觉有一些问题,我也提了 issue,作者也没回我,可能太忙了吧。
基本上能够让 Cpp 在使用上达到 Java 的水平吧,但是肯定还是有一定的差距的,跟我熟悉的 Python 更是相差甚远,毕竟不是标准库,也情有可原吧。
用了一段时间之后,感觉这个库的实现还是很标准的,看了一些源代码,也很规范,以后再有 Cpp 的项目可以着重考虑一下了。
因为跨平台,在项目开发过程中大量使用了 Linux 上 shell,systemctl,docker 这些工具以及 CFEngine, Zabbix 这些运维的东西,感觉又喜欢上了 Linux 和命令行,熟悉了之后真是很方便。
同时因为是 C/Cpp 项目,我们编译了很多开源项目,算是终于知道了 Linux 根目录下面每个目录都是干啥的。
Linux 下的包管理器比如 apt,yum 用起来也很爽。所以我也看了看 Windows 下面的包管理器,发现了 Scoop 这个神器,在另外一篇博文里介绍了它。
因为快离职的时候,新的需求要交叉编译 CFEngine(虽然到离职也没搞成功),但是让我发现了 MSYS2 这个交叉编译神器。
MinGW 是在 Windows 平台的GCC,而 CygWin 和 MSYS2 均是在 MinGW 基础上的POSIX子操作系统(概念类似于微软 WSL)。
CygWin、Msys、MinGW、Msys2 的区别与联系
选择 MSYS2 而不是 MinGW 也不是 CygWin 的主要原因也是因为 MSYS2 的包管理器 pacman。
交叉编译也是个大坑,巨坑无比,反正我也没研究明白,七八个可执行文件就编译出来一个。
感谢所有在实习中帮助过我的老师,同事们❤️。
]]>一直以来都想拥有一个自己的博客,从WordPress开始,到Typecho,再到Halo,甚至中途尝试用 Django 自己实现了一个(不过样子也太丑了),虽然说一直在捣鼓博客,但是从来都是安装=>部署=>安装插件=>选择主题=>发布第一篇文章,然后就没有然后了。
今天我突然看到Hexo的Obsidian主题,我觉得时机到了,毕竟颜值是第一生产力。
给自己列一个简单的 TODO LIST 吧。
希望这个寒假能做完这些吧。
就这样。
]]>一直以来都想拥有一个自己的博客,从WordPress开始,到Typecho,再到Halo,甚至中途尝试用 Django 自己实现了一个(不过样子也太丑了),虽然说一直在捣鼓博客,但是从来都是安装=>部署=>安装插件=>选择主题=>发布第一篇文章,然后就没有然后了。
今天我突然看到Hexo的Obsidian主题,我觉得时机到了,毕竟颜值是第一生产力。
给自己列一个简单的 TODO LIST 吧。
希望这个寒假能做完这些吧。
就这样。
]]>文章字数 - 11k + 12k 阅读约需 - 10 mins. + 11 mins.
- +记得我最早的时候用 Visual Studio 写了第一个 Hello World 程序,激动的点运行,出来个黑框一闪就过去了,啥也没看到。
- -后来偶然了解 PowerShell,又变成了一个蓝色的框,还会有进度提示,红的,黑的,突兀得很😢。
- -后来上了大学终于在 Ubuntu 上见到了 bash,完全改变了我对 Shell 的认知。
-傻傻分不清 Shell 和 Terminal 的我,激动的打开 Git 自带的 bash,它却长成了这样。
- -一番优化之后也不是不能用,后来还入坑了 Cmder,用于替代 Putty 那个更加原始的 terminal。
-终于,2019 年微软开始进入开源世界,...
+一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具,
+++按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。
+
# 指定 Scoop 的安装路径,之后安装的 APP 会安装在 path/to/scoop/apps/
+$env:SCOOP='path/to/scoop'
+[environment]::setEnvironmentVariable...
- 查看全文
+ 查看全文
+ + + 「 PRODUCTIVITY 」 + + + 一月 31, 2020 +
++ + + 文章字数 + 12k + + + + + 阅读约需 + 11 mins. + + + +
+ + + + + +希望这个寒假能做完这些吧。
就这样。
diff --git a/tags/Terminal/index.html b/tags/Terminal/index.html index 829f80d..fd40691 100644 --- a/tags/Terminal/index.html +++ b/tags/Terminal/index.html @@ -149,13 +149,13 @@ 文章字数 - 11k + 12k 阅读约需 - 10 mins. + 11 mins. diff --git a/tags/index.html b/tags/index.html index b32c27e..33a5d6c 100644 --- a/tags/index.html +++ b/tags/index.html @@ -63,7 +63,7 @@+ + 「 + PRODUCTIVITY 」 + + 二月 03, 2020 +
++ + + 文章字数 + 12k + + + + + 阅读约需 + 11 mins. + + + + + + 阅读次数 + 0 + + +
+ + + + ++ +
+一直以来,作为开发者,Windows 相较于 Linux 都缺少两样重要的工具,
+++按照官网的教程,只能使用 PowerShell 而不是 CMD 进行安装。
+
# 指定 Scoop 的安装路径,之后安装的 APP 会安装在 path/to/scoop/apps/
+$env:SCOOP='path/to/scoop'
+[environment]::setEnvironmentVariable('SCOOP',$env:SCOOP,'User')
+# 安装 Scoop
+Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
+
+Scoop 只是一个包安装器,我们还需要软件源。
+使用,
+scoop bucket known
+
+可以列出所有官方已知并推荐的源,使用,
+scoop bucket add <bucket-name>
+
+即可安装源。
+main
- Scoop 官方默认主源,里面所有的软件符合标准。extras
- Scoop 官方扩展你源,里面的软件不完全符合标准。versions
- 可选版本的源。nightlies
- nightly 软件源,不推荐。nirsoft
- Nir Sofer开发的软件。php
- 不同版本的 php。nerd-fonts
- Nerd Fonts 和一些其他字体。nonportable
- 非便携软件(可能需要 UAC)。java
- 不同版本的 JDK,JRE。games
- 开源或免费的游戏以及游戏工具。jetbrains
- JetBrains 全家桶。和 Ubuntu 的 apt,CentOS 的 yum 基本相同。
+# 搜索
+scoop search <package-name>
+# 查看主页
+scoop home <package-name>
+# 安装
+scoop install <package-name>
+# 更新
+scoop update <package-name>
+# 卸载
+scoop uninstall <package-name>
+# 更新 Scoop,所有源,所有软件包
+scoop update *
+# 列出所有软件包
+scoop list
+
+基本上常见的所有开源下载软件都是基于这个,不但可以跑在 x86 的电脑上, mips 的路由器,arm 的手机都不是问题。
+需要注意的是,安装 aria2 后,Scoop 的默认下载器会自动改成 aria2,并开启多线程下载。
+界面超原始,但是替代个收费的 WinRAR,以及一众国内带广告的解压软件不是问题。同时 Scoop 有时候也依赖于 7zip 来解压。
+有的时候连个安卓手机就需要这个东西,虽然我不做安卓开发,但是我玩过微信跳一跳呀。
+用于代替 cat,带行号,带高亮,可tail -f
。
著名的 CPU 信息查看软件。
+著名的抓包软件,大学机考神器(CCTR-E 的题目和答案一起传输,哈哈哈)。
+把字符串改成字符串图像,还有好几个主题,现在知道那些文档的开头是怎么生成了吧😄。
+什么,你没听说过 git !!!,右上角,再见😢。
+使用 Electron 开发的 aria2 GUI 客户端,可惜不能指定 aria2,只能使用自带的。
+当你想截个屏,展示一下你的 Terminal 又不知道放什么内容时,就它了。
+Scoop 同开发者开发的一系列 PowerShell 工具,我就说 PS 在国外还是很火的吧。
+带边缘检测的强大截图软件。
+想知道那个文件夹占用了你的 C 盘最多?
+在山威如何快速获得妹子的 QQ,微信和手机号?加入极客鸟,用 Teamviewer 帮妹子修电脑吧。
+下载个 1kb 的文本文件还需要动用迅雷?aria2?wget
一行命令搞定。
微软已经把 ssh 迁移到 Windows 平台上啦。
+图形化管理服务器的文件。
+虽然结构还是很清晰的,但不得不说,这几个名字起的太谜了。
+这个目录下面时所有安装的软件包。每个软件包都是这样的,
+每个 app 的 current 都指向最新的那个文件夹。
+这个目录下是所有安装的源。
+实际上每个源只是一个单独的 git 仓库,仓库里面有该源的所有软件包的信息文件。Scoop 依照这个信息文件安装配置软件包。
+比如 7zip 的,
+{
+ "homepage": "https://www.7-zip.org/",
+ "description": "A multi-format file archiver with high compression ratios",
+ "license": {
+ "identifier": "Freeware,LGPL-2.0-only,BSD-3-Clause",
+ "url": "https://www.7-zip.org/license.txt"
+ },
+ "version": "19.00",
+ "architecture": {
+ "64bit": {
+ "url": "https://7-zip.org/a/7z1900-x64.msi",
+ "hash": "a7803233eedb6a4b59b3024ccf9292a6fffb94507dc998aa67c5b745d197a5dc"
+ },
+ "32bit": {
+ "url": "https://7-zip.org/a/7z1900.msi",
+ "hash": "b49d55a52bc0eab14947c8982c413d9be141c337da1368a24aa0484cbb5e89cd"
+ }
+ },
+ "extract_dir": "Files/7-Zip",
+ "bin": "7z.exe",
+ "checkver": {
+ "url": "https://www.7-zip.org/download.html",
+ "regex": "Download 7-Zip ([\\d.]+)"
+ },
+ "autoupdate": {
+ "architecture": {
+ "64bit": {
+ "url": "https://7-zip.org/a/7z$cleanVersion-x64.msi"
+ },
+ "32bit": {
+ "url": "https://7-zip.org/a/7z$cleanVersion.msi"
+ }
+ }
+ },
+ "shortcuts": [["7zFM.exe", "7-Zip"]]
+}
+
+这个目录里面是下载的软件包安装程序等等缓存。
+这个目录存放的是这些软件的配置之类的文件,这些文件的特点是在软件更新时不变。
+这个目录是所有软件包的快捷方式。
+每一个软件包都对应三个,
+我其实有个疑问,我在命令行里输package-name
,执行的是package-name.exe
还是package-name.ps1
呢?
简单的测试后发现,是根据使用的 shell 确定的,CMD 里面是package-name.exe
,而 PowerShell 里面是 package-name.ps1
。
++¶引用自 SpencerWoo
+最后我还是想说一说:为什么我们推荐使用「包管理」?
+
+在写这篇文章之前我也看了我派上面对包管理工具介绍的文章,我觉得这些文章其实都没太讲清为什么我们需要用「包管理」这个看上去复杂难用的命令行工具去下载、管理我们的软件。毕竟现在的软件管理哲学是「我去 App Store 下一个不就行了嘛?」
+需要明确的是:包管理的设计初衷是为了方便开发者管理和搭建开发环境。用包管理工具能够快速的安装开发工具、开发依赖,从而免去复杂的路径、环境变量等信息的配置。而我们作为普通用户,实际上用「包管理」工具的过程,就是在借鉴这种「软件管理哲学」。
+但更重要的,也是更对我们用户安装基本软件的过程来说的,是我前文提到的:
+一行代码省去了搜索、筛选、下载等繁琐步骤
+安装方便、更新方便、卸载也方便
+同时也最大程度杜绝了流氓捆绑软件的安装(因为 Scoop 本身和 Scoop 安装过程参考的配置文件都是开源的,要安装什么一目了然)
+这些都是传统的「搜索 - 筛选 - 下载」的软件管理过程带来的复杂过程和安全隐患的极佳解决方法。
+尝试一下 Scoop 吧!如果你对这个简洁、克制却依旧强大的工具产生兴趣,你一定离高阶 Windows 用户不远了。
「一行代码」搞定软件安装卸载,用 Scoop 管理你的 Windows 软件
+ + + + + + +