笔记

0、各个工具的驱动下载目录

1) NVIDIA Geforce Game Ready

C:\ProgramData\NVIDIA Corporation\Downloader\

2) DELL SupportAssist

C:\ProgramData\Dell\UpdateService\Downloads\

1、正则表达式

a) 排除某些字符

下面是一则GNSS(全球导航卫星系统,Global Navigation Satellite System)消息的格式范例:

$GNGGA,025754.00,4004.74102107,N,11614.19532779,E,1,18,0.7,63.3224,M,-9.7848,M,00,0000*58

以$开头,以*加两位16进制校验和结尾,中间可能包括从大小写字母到[,.]的一系列字符,但是不包括$*,则正则表达式如下:

\$[^$*]+\*[A-Fa-f0-9]{2}

其中[^$*]+表示除了$或*的其它一切字符并且至少有1个

b) 排除某字符

?!pattern 称为零宽负向先行断言(与此相对,?<!pattern称为零宽负向后行断言),匹配与pattern表达式不同的字符串(非pattern字符串);因为断言不占位,因此需要后面一个 . 符号占位在原位置匹配任意字符(假如没有此符号则会直接排除掉非pattern字符串而非进行匹配),(\s)* 表示匹配任意数量空白字符,括号括起来外面一个+号表示重复一次或多次。

下面是一个应用的例子:

{0}(\s)*((?!{0}).(\s)*)+

{0}替换为 0[1-8]\s00\s00\s06\s[0-7]0aA{8},匹配的是前面匹配此表达式、后面不匹配此表达式的字符串。

c) 次数匹配相关符号

符号 功能
{0,2}、{5,}、{3} 逗号前面次数到逗号后面次数
?、?? 0次或1次
* 0次以上,即0~n
+ 1次以上,即1~n

2、Oracle 中的滚动统计

1) 计算之前所有行到当前行的总和

select t.*, sum(t.numb) over (order by t.ind rows between unbounded preceding and current row) su from (
  select 1 ind, 1 numb from dual
   union all
  select 2 ind, 3 numb from dual
   union all
  select 3 ind, 5 numb from dual
   union all
  select 4 ind, 7 numb from dual
   union all
  select 5 ind, 9 numb from dual) t
第一行到当前行的和

2) 计算当前行到当前行前若干行的总和

当前行向前2行到当前行的和

select t.*, sum(t.numb) over (order by t.ind rows between 2 preceding and current row) su from (
  select 1 ind, 1 numb from dual
   union all
  select 2 ind, 3 numb from dual
   union all
  select 3 ind, 5 numb from dual
   union all
  select 4 ind, 7 numb from dual
   union all
  select 5 ind, 9 numb from dual) t
包括当前行在内的前三行和

3、Windows Server 2012 R2 安装.Net Framework 3.5(包含.Net 2.0, .Net 3.0)

首先进入服务器管理器首页,选择“添加角色和功能”


服务器管理器

Step 1

Step 2

Step 3

Step 4

Step 5

接下来需要找到对应Windows Server 2012版本的安装镜像,装载后找到文件夹 X:\sources\sxs,将sxs文件夹的路径填入下图的文本框中,点击确定,接着进行安装


指定备用源路径

安装成功

4、自动化中的数据类型

数据类型 类型说明
VT_EMPTY Not specified.
VT_NULL Null.
VT_I2 A 2-byte integer (short).
VT_I4 A 4-byte integer (int).
VT_R4 A 4-byte real (float).
VT_R8 An 8-byte real (double).
VT_CY Currency.
VT_DATE A date.
VT_BSTR A string.
VT_DISPATCH An?IDispatch?pointer.
VT_ERROR An SCODE value.
VT_BOOL A Boolean value. True is -1 and false is 0.
VT_VARIANT A variant pointer.
VT_UNKNOWN An?IUnknown?pointer.
VT_DECIMAL A 16-byte fixed-pointer value.
VT_I1 A character.
VT_UI1 An unsigned character.
VT_UI2 An unsigned short.
VT_UI4 An unsigned long.
VT_I8 A 64-bit integer.
VT_UI8 A 64-bit unsigned integer.
VT_INT An integer.
VT_UINT An unsigned integer.
VT_VOID A C-style void.
VT_HRESULT An HRESULT value.
VT_PTR A pointer type.
VT_SAFEARRAY A safe array. Use VT_ARRAY in VARIANT.
VT_CARRAY A C-style array.
VT_USERDEFINED A user-defined type.
VT_LPSTR A null-terminated string.
VT_LPWSTR A wide null-terminated string.
VT_RECORD A user-defined type.
VT_INT_PTR A signed machine register size width.
VT_UINT_PTR An unsigned machine register size width.
VT_FILETIME A?FILETIME?value.
VT_BLOB Length-prefixed bytes.
VT_STREAM The name of the stream follows.
VT_STORAGE The name of the storage follows.
VT_STREAMED_OBJECT The stream contains an object.
VT_STORED_OBJECT The storage contains an object.
VT_BLOB_OBJECT The blob contains an object.
VT_CF A clipboard format.
VT_CLSID A class ID.
VT_VERSIONED_STREAM A stream with a GUID version.
VT_BSTR_BLOB Reserved.
VT_VECTOR A simple counted array.
VT_ARRAY A SAFEARRAY pointer.
VT_BYREF A void pointer for local use.

5、<<与>>操作符(左移,右移)

1) <<左移操作符

将第一个操作数向左移动第二个操作数指定的位数,空出的位置补0。
左移相当于乘。左移一位相当于乘2;左移两位相当于乘4;左移三位相当于乘8。

如:
x<<1= x*2
x<<2= x*4
x<<3= x*8
x<<4= x*16

2) >>右移操作符

右移位运算符(>>)是把数向右移位,其作用是所有的位都向右移动指定的次数
右移相当于除。右移一位相当于除2;左移两位相当于除以4;左移三位相当于除以8。然后取其整数

如:
x>>1= x/2取整
x>>2= x/4取整
x>>3= x/8取整
x>>4= x/16取整

6、Sqlite中当地当前时间的表达式

select datetime('now', 'localtime')

7、Sqlite3表自增id

添加id字段

注意类型只能为integer,不可以是int或int64,是否可为空无所谓,然后如下图添加primary key(On Conflict是否设置无所谓)


设置primary key

8、设置FTP服务器

1) 安装IIS

打开【控制面板】=>【程序和功能】=>【启用或关闭 windows 功能】,在弹出的窗口中,勾选【Internet Information Services】下面的【FTP服务器】三个选项,以及【Web管理工具】下的所有选项,点击【确定】按钮完成安装


安装IIS

2) 进入IIS管理器

打开【控制面板】=>【管理工具】=>【Internet Information Services(IIS)管理器】


打开IIS管理器

3) 添加FTP站点

在打开的IIS管理界面,鼠标右键点击【网站】,选择右键菜单【添加 FTP 站点】


添加FTP站点

4) 物理路径

在【添加 FTP 站点】窗口中,输入站点名称,选择文件存放的物理路径,点击【下一步】按钮


绑定物理路径

5) SSL

在【绑定和 SSL 设置】界面,选择当前配置的服务器ip地址,端口号默认21,可以修改。此处SSL部分勾选了【无 SSL】,可根据实际需要选择


绑定IP地址

6) 身份验证

在【身份验证和授权信息】界面,禁用【匿名】,勾选【基本】、【所有用户】、【读取】、【写入】,点击【完成】按钮


选择身份验证方式

7) 浏览方式

在这之后可以使用服务器的用户名密码登录FTP服务器,使用【ftp://ip地址:端口】在浏览器或者文件夹地址栏中输入运行。如果端口是默认的21,可以省略,否则,端口号不能省略

8) 关闭FTP日志功能

推荐关闭FTP的日志功能,否则日积月累的日志文件会将磁盘堆满。
操作方法如下图所示。


找到FTP日志选项

禁用日志功能

9、FTP服务器的防火墙设置

1) 允许svchost通过

允许应用或功能通过windows防火墙

允许其它应用

选择svchost.exe

允许Windows服务主进程

2) 在防火墙高级设置中添加对应的连接/数据端口

防火墙添加端口例外

3) IIS管理器中设置FTP服务器防火墙数据通道端口范围

设置主页中找到FTP防火墙支持

设置数据通道端口范围

10、获取CMD文件所在路径的相关命令

@echo off
echo 当前盘符:%~d0
echo 当前盘符和路径:%~dp0
echo 当前批处理全路径:%~f0
echo 当前盘符和路径的短文件名格式:%~sdp0
echo 当前CMD默认目录:%cd%
pause

目录中有空格也可以加入""避免找不到路径,例如

echo 当前盘符:"%~d0"

一个例子:

set current_path="%~dp0"
xcopy "%current_path%\folder\file.txt" "C:\Examples\temp" /y/r

11、配置远程管理卡

1) 控制面板打开Java面板

控制面板

2) 编辑站点列表

Java面板

编辑站点列表,加入远程管理卡IP,例如https://192.168.1.15

3) 访问远程管理卡

用IE或其它浏览器打开这个地址


忽略安全警告

4) 登录

登录页面

5) 打开服务器电源

开关按钮

12、华为S5730交换机配置

1) 登录管理页面

网线连交换机ETH口,在网页浏览器访问地址192.168.0.1,或者访问每个电口/光口网段的网关地址(保证机器所在地址在这个网段内),输入用户名密码登录


交换机管理首页

2) 添加VLANID与VLANTAG

选择“配置”标签页,找到“基本业务管理”>“VLAN”>“VLAN”标签页>“新建”


VLAN配置

如下图配置,点击“确定”


新建VLAN对话框

3) 配置终端所属VLAN

选择“配置”标签页,找到“基本业务管理”>“接口配置”>“自定义配置”,选择要修改配置的电口或光口


接口配置

修改网段VLAN并提交


配置VLAN

13、Win10管理员用户提升权限

1. 打开计算机管理

右键我的电脑

2. 在提升权限的用户上右键点击属性

打开用户属性

3. 添加所隶属的用户组

添加所隶属的用户组“System Managed Accounts Group”,点击“检查名称”,点击确定


添加用户组

4. 设置完成后重启电脑

重启完成提升权限后,有些应用程序运行时将不再出现UAC用户权限确认对话框。

14、命令行添加防火墙例外

netsh advfirewall firewall Add rule name=\"命令行Web访问8080\" dir=in protocol=tcp localport=7070 action=allow

以管理员方式运行命令提示符,然后运行

15、EXCEL中的RAND()函数

摘自 Microsoft文档 - RAND函数

说明

RAND 返回了一个大于等于 0 且小于 1 的平均分布的随机实数。 每次计算工作表时都会返回一个新的随机实数。

注意:自 Excel 2010 起,Excel 使用马特赛特旋转演算法 (MT19937) 来生成随机数。

语法

RAND 函数语法没有参数。

备注

  • 若要生成 a 与 b 之间的随机实数,请使用:

=RAND()*(b-a)+a

  • 若要使用函数 RAND 生成一个随机数,但不希望每次计算单元格时数字都出现变化,可在编辑栏中输入 =RAND(),然后按 F9 将公式更改为随机数。 公式将进行计算,并仅保留一个值。

示例

复制下表中的示例数据,然后将其粘贴到新的 Excel 工作表的 A1 单元格中。 要使公式显示结果,请选中它们,按 F2,然后按 Enter。 如果需要,可以调整列宽以查看所有数据。

公式 说明 结果
=RAND() 大于或等于 0 且小于 1 的随机数 变量
=RAND()*100 大于或等于 0 且小于 100 的随机数 变量
=INT(RAND()*100) 大于或等于 0 且小于 100 的随机全数 变量
注意: 当通过在不同单元格中输入公式或数据或手动重新计算 (按 F9) 重新计算工作表时,将针对使用 RAND 函数的任何公式生成新的随机数。

16、Sqlite函数以及应用

1) 取出IP地址字符串最后一位数字,加上一个固定数字,并拼接进另外的字符串中

update t_base_radar_info set
            ip_address = '192.168.1.' || (cast(substr(ip_address, length(ip_address), 1) as decimal) + 16)

2) length

取字符串长度

3) substr(string string,num start,num length)

string为源字符串
start为起始位置,字符串的第一个字符的位置为1,不是从0开始计算
length为长度

4) 字符串拼接

用 || 拼接字符串

5) 数字相加

SELECT 'A'+'B' 结果为0
SELECT "A"+"1" 结果为1
SELECT "A"+1 结果为1
SELECT 2+1 结果为3
在“+”运算中,SQLite将字符串非数字串均当作0处理

6) 其它操作符

符号 说明
|| String Concatenation
* Arithmetic Multiply
/ Arithmetic Divide
% Arithmetic Modulus
+ Arithmetic Add
Arithmetic Subtract
<< Bitwise Right shift
>> Bitwise Left shift
& Logical And
Logical Or
< Relational Less than
<= Relational Less than or equal to
> Relational Greater than
>= Relational Greater than or equal to
= Relational Equal to
== Relational Equal to
<> Relational Not equal to
!= Relational Not equal to
IN Logical In
AND Logical And
OR Logical Or
LIKE Relational String matching
GLOB Relational Filename matching

17、EXCEL行转列示例

1、TRANSPOSE函数

转置特定列

2、快速填充

将选择框拉到末尾,进行快速填充


执行快速填充

3、根据条件删除行

根据行编号取余数,仅保留每4行的第1行


筛选条件

18、游戏安装过程中出现Unarc.dll向磁盘写入数据错误

Unarc.dll磁盘写入错误

关闭杀毒软件(如360等)然后重试

19、EXCEL判断单元格是否包含特定字符串,然后修改字符串

1、判断是否包含特定字符串

使用以下公式

=ISNUMBER(FIND("计量", A1))

假如包含指定字符串将返回TRUE,否则返回FALSE

2、替换字符串

=SUBSTITUTE(A1,"计量","")

20、CMD下TELNET命令的退出方法

在TELNET连接成功后可使用CTRL+]键,这时会强制退到telnet命令界面下,再用quit命令退出


telnet退出命令

21、使用VBScript脚本向桌面或启动文件夹发送快捷方式

Rem 以下为VbScript脚本
set WshShell = WScript.CreateObject("WScript.Shell")
strDesktop = WshShell.SpecialFolders("Desktop") :'特殊文件夹“桌面”
strStartup = WshShell.SpecialFolders("Startup") :'特殊文件夹“启动”
Set fso = CreateObject("Scripting.FileSystemObject")
strCurPath = fso.GetFolder(".") :'获取脚本的所在路径
strTargetPath = strCurPath & "\ProcessMonitorService\bin\Debug\ProcessMonitorService.exe" :'拼接字符串获取目标的路径
Rem Msgbox strCurPath
Rem msgbox strTargetPath
Rem 在桌面创建一个进程监测快捷方式
set oShellLink = WshShell.CreateShortcut(strDesktop & "\进程监测.lnk")
oShellLink.TargetPath = strTargetPath : '目标
oShellLink.WindowStyle = 1 :'参数1默认窗口激活,参数3最大化激活,参数7最小化
Rem oShellLink.Hotkey = "Ctrl+Alt+e" : '快捷键
Rem oShellLink.IconLocation : '图标
oShellLink.Description = "进程监测快捷方式" : '备注
oShellLink.WorkingDirectory = strDesktop : '起始位置
oShellLink.Save : '创建保存快捷方式
Rem 在启动目录创建一个进程监测快捷方式
':将strDesktop换为strStartup即可

22、查询发送弹幕的用户ID

使用哔哩哔哩唧唧下载文件

找到记录下的aid

访问地址 https://api.bilibili.com/x/player/pagelist?aid={aid}&jsonp=jsonp
其中{aid}就是刚刚查到的aid,访问之后可得到一串json字符串,如下所示

{"code":0,"message":"0","ttl":1,"data":[{"cid":980269880,"page":1,"from":"vupload","part":"【硬核爆】喷赞三体动画制作精美第7第8集 PLUS","duration":558,"vid":"","weblink":"","dimension":{"width":1920,"height":1080,"rotate":0},"first_frame":"http://i0.hdslb.com/bfs/storyff/n230126a217shps7qucn18g1x8amqqsp_firsti.jpg"}]}

找到其中的cid元素,在这个例子中是980269880
访问地址 https://api.bilibili.com/x/v1/dm/list.so?oid={cid} 以查看弹幕访问请求的内容
或直接加载弹幕静态资源 http://comment.bilibili.com/{cid}.xml

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<i>
<chatserver>chat.bilibili.com</chatserver>
<chatid>980269880</chatid>
<mission>0</mission>
<maxlimit>1000</maxlimit>
<state>0</state>
<real_name>0</real_name>
<source>k-v</source>
<d p="505.99400,5,25,41194,1674832806,0,93f09d31,1239346423552691456,10">清华的</d>
<d p="554.41200,1,25,16777215,1674832575,0,c2d8541b,1239344484895397120,10">这剧本还要怎么低走</d>
...
</i>

得到弹幕的访问请求内容后在其中找到hash后的用户UID(hash算法为crc32),如上面的93f09d31
访问这个开源项目 Aruelius/crc32-crack: 把B站弹幕接口里的 "mid_hash" 反查为用户真实UID (github.com)
运行python文件以反向破解用户UID

python run.py 93f09d31
用户UID计算结果

UID计算结果为296067181,下一步验证结果,访问 https://space.bilibili.com/{uid}

用户主页

23、SQLite创建触发器

CREATE TRIGGER trigger_name 
AFTER UPDATE OF id ON table_1 
FOR EACH ROW 
WHEN new.id>30 
BEGIN 
UPDATE table_2 SET id=new.id WHERE table_2.id=old.id;
END
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容