02 2024 档案
Python 字符串格式化输出
摘要:数字 n: int = 1000000000 print(f'{n:_}') # 1_000_000_000 print(f'{n:,}') # 1,000,000,000 对齐 var: str = 'var' # 右对齐,使用 _ 填充 print(f'{var:_>20}') # ______
Maven 换源
摘要:~/.m2/settings.xml <settings> ... <mirrors> ... <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://maven.a
Maven 设置 JDK 版本
摘要:Maven 设置 JDK 版本是通过 Apache Maven Compiler Plugin 插件实现的。它用于编译项目的源代码。 方法一 有时候你可能需要将某个项目编译到与当前使用的 JDK 版本不同的语言版本。你可以在编译时为 javac 工具添加 -source 和 -target 选项来实
locale 设置
摘要:locale 介绍 在终端中,locale(本地化)设置是指与本地语言、国家和文化偏好有关的环境变量的配置。这些设定决定了程序如何处理和显示字符、时间、日期格式、货币等。 在类 Unix 系统(比如 Linux 和 macOS)中,locale 设置由一系列环境变量来定义,这些环境变量包括: LAN
Java 查询 MMDB 数据库
摘要:MMDB-Lookup | GitHub Lookup.java: import java.io.File; import java.net.InetAddress; import com.fasterxml.jackson.databind.JsonNode; import com.maxmind
Maven 打 JAR 包
摘要:项目和依赖分别打入独立 JAR 包 使用 Maven Jar Plugin 插件,可以将项目自身单独打成一个 JAR 包,项目依赖的 JAR 包统一放置到指定目录。 在项目的 pom.xml 中添加如下配置: <project> ... <build> ... <plugins> ... <!--
运行 Java 程序
摘要:Java 程序实际上就是我们编译好的 Java 类文件。运行 Java 程序就是运行 Java 类的 main 函数。 编译并运行 Java 文件 源文件: package com.example; public class HelloWorld { public static void main(
制表符转换为空格
摘要:制表符转换为空格 将一个制表符替换为 2 个空格: expand -t2 filename | sponge filename sponge 是 moreutils 包的一个工具,它会先读取全部输入后再打开输出文件,这样就避免了文件被提前截断的问题。 空格转换为制表符 将 2 个空格替换为一个制表符
Windows 新建用户帐户
摘要:Windows 近年来大力推广使用 Microsoft 帐户登录 Windows。然而,如果你这么做了,Windows 会取你登录帐户的前 5 个字母作为你的本地用户名,非常的丑陋。更难受的是本地用户名一旦创建好,更改起来极其麻烦。因此,如果你想要自己设置一个好看的用户名,一定不要使用 Micros
Windows 误操作删除管理员帐户的解决方法
摘要:今天折腾不小心把管理员帐号的权限给改没了,重启之后很多操作做不了。解决方法如下: Windows + R 打开运行,或者打开资源管理器,输入 control userpasswords2 命令打开用户帐户窗口,此时便可更改用户权限。 参考:win10 系统误删管理员权限解决办法 | CSDN
使用 pystun3 检测 NAT 类型
摘要:pystun3 是一个用于获取 NAT 类型和外部 IP 的 Python STUN 客户端 安装: pip install pystun3 使用: $ pystun3 NAT Type: Full Cone External IP: 117.113.71.151 External Port: 56
pip 安装包时提示 Skipping xxx due to invalid metadata entry 'name'
摘要:我最近在使用 pip 安装包的时候经常遇到如下警告: WARNING: Skipping /opt/homebrew/lib/python3.11/site-packages/numpy-1.26.3.dist-info due to invalid metadata entry 'name' WA
macOS 扫描局域网设备
摘要:arp-scan: arp-scan 是一个直接用于扫描本地网络中的设备的 UNIX 工具。这不是 macOS 自带的,但可以使用 Homebrew 安装。首先安装 Homebrew(如果尚未安装),然后通过终端运行以下命令来安装 arp-scan: brew install arp-scan 使用
搜索引擎用法 cheatsheet
摘要:逻辑 写法 与 keyword1 keyword2 或 keyword1 OR keyword2 限定关键词的排列 "keyword" 限定搜索的网站 site:cnblogs.comsite:cnblogs.com/Undefined443site:.com 只搜索标题 intitle:keywo
GPT 中的函数调用(function call)是什么?
摘要:在 OpenAI ChatGPT API 和 Google Gemini API 中我们可以看到函数调用的功能。这个功能是做什么用的?下面大概讲解。 以 Google Gemini API 函数调用 一节中的内容为例,该章节举了一个例子: 大语言模型(LLMs)往往无法进行准确的数学运算。比如说,给
Apple Silicon 芯片 Mac 在 x86_64 模式下启动 Kettle
摘要:苹果于 2020 年推出了自家设计的基于 ARM 架构的 M1 芯片,在日常生活的大部分使用过程中,M1 的体验很好。然而,依然存在一小部分软件无法兼容 ARM 架构,需要我们模拟 x86 的架构来运行。 其中一个例子是 Kettle(又称 PDI)。笔者当年使用 Kettle 时无法直接双击打开,
Shell 避免无限递归
摘要:在编写 Shell 脚本时,有时会产生我们不期望的递归。 比如说,我曾经写过一个脚本,名为 foo.sh。 foo.sh 的内容如下: function foo { # TODO } foo 然后我在 .zshrc 里设置了别名: alias foo="source ~/foo.sh" 现在,当我在
man 切换颜色配置
摘要:man 命令显示的命令手册默认是没有颜色的。为了使 man 命令的输出更为生动,可以使用如下两种方法修改 man 命令的颜色配置。 方法一:设置环境变量 在你的 .zshrc / .bashrc 中添加以下行: export LESS_TERMCAP_mb=$'\e[1;32m' \ LESS_TE
Homebrew 卸载 Wireshark 报错
摘要:我在使用 Homebrew 安装 Wireshark 的时候,Homebrew 要求我输入密码。此时我又不想安装 Wireshark 了,于是我没有输入密码并且按下了 Ctrl + C。后来,我又尝试安装 Wireshark,但此时 Homebrew 提示我已经安装了 Wireshark: $ br
终端设置代理
摘要:macOS / Linux 假设代理主机为 127.0.0.1,HTTP 代理 / SOCKS5 代理监听端口为 7890 export http_proxy="http://127.0.0.1:7890" https_proxy="http://127.0.0.1:7890" all_proxy=
如何使用 Shebang
摘要:什么是 Shebang? 简单来说,就是你在脚本开头看到的这个: #!/usr/bin/bash Shebang(也称为 hash-bang、pound-bang 或者 bang)是一个作为脚本文件中的第一行的特殊注释,它告诉系统用哪个解释器来执行脚本。Shebang 后面直接跟着解释器的绝对路径。
通过 dotenv 库读取 .env 文件获得环境变量
摘要:Python 在编写 Python 脚本时,我们会使用一些私密数据,如调用 API 时使用的 token。为了避免隐私泄露,这些私密数据一般不直接写入脚本文件中。而是写入一个文件,并通过读取文件的方式获取私密数据内容。这个文件就是 .env 文件。 .env 文件中以 KEY=VALUE 的形式存储