ColinOL

A Small Website

用户工具

站点工具


home

ColinOL Home

XRay 安装配置与资源

八合一共存脚本+伪装站点

项目地址:

安装脚本: 支持快捷方式启动,安装完毕后,shell输入【vasma】即可打开脚本,脚本执行路径[/etc/v2ray-agent/install.sh]

wget -P /root -N --no-check-certificate "https://raw.githubusercontent.com/mack-a/v2ray-agent/master/install.sh" && chmod 700 /root/install.sh && /root/install.sh

xray示例图

2021/09/17 05:48 · colin

Excel 实现按照单元格和字体颜色计数(Count)与求和(Sum)

步骤一

首先需要启用Visual Basic编辑器,右键单击示例工作表,然后左键单击【查看代码】选项。在Visual Basic编辑器中的工程资源管理器窗口中,右键单击后将鼠标指针移动至插入选项,然后插入一个模块,并将以下代码复制粘贴到代码窗口中,最后关闭Visual Basic编辑器回到Excel工作表操作界面。

代码如下:

script.vb
'计算获得与引用单元格相同底纹颜色的单元格的数量
Function GetCountColorBack(col As Range, countbackrange As Range) As Integer
Dim icell As Range
Application.Volatile
For Each icell In countbackrange
If icell.Interior.ColorIndex = col.Interior.ColorIndex Then
GetCountColorBack = GetCountColorBack + 1
End If
Next icell
End Function
 
'计算获得与引用单元格相同底纹颜色的单元格的数值和
Function GetSumColorBack(col As Range, sumbackrange As Range) As Integer
Dim icell As Range
Application.Volatile
For Each icell In sumbackrange
If icell.Interior.ColorIndex = col.Interior.ColorIndex Then
GetSumColorBack = Application.Sum(icell) + GetSumColorBack
End If
Next icell
End Function
 
'计算获得与引用单元格相同文字颜色的单元格的数量
Function GetCountColorFont(col As Range, countfontrange As Range) As Integer
Dim icell As Range
Application.Volatile
For Each icell In countfontrange
If icell.Font.ColorIndex = col.Font.ColorIndex Then
GetCountColorFont = GetCountColorFont + 1
End If
Next icell
End Function
 
'计算获得与引用单元格相同文字颜色的单元格的数值和
Function GetSumColorFont(col As Range, sumfontrange As Range) As Integer
Dim icell As Range
Application.Volatile
For Each icell In sumfontrange
If icell.Font.ColorIndex = col.Font.ColorIndex Then
GetSumColorFont = Application.Sum(icell) + GetSumColorFont
End If
Next icell
End Function

步骤二

求相同颜色的单元格数量,需要用到GetCountColorFont函数。函数GetCountColorFont的使用方法:=GetCountColorFont(指定颜色的单元格,统计单元格区域)

参考:

  1. Excel超实用技能,按单元格颜色求和与计数,千万不要错过 https://kuaibao.qq.com/s/20190814A0SZY000?refer=cp_1026
  2. 如何分别计数[Excel]不同颜色的单元格? https://www.zhihu.com/question/54651422
2021/07/22 08:30 · colin

Ubuntu 中安装配置密码管理服务 bitwarden_rs

Bitwarden 是可自建服务的密码管理软件,提供多中客户端,用于替代lastpass。

Bitwarden_rs 是 Bitwarden 的 rust 实现版本,比较轻量化。

本文提供在Ubuntu环境下安装 Bitwarden_rs 的步骤。

域名准备

做好域名指向与配置 Bitwarden必须运行在https下,可以在nginx中启用ssl。 本文直接用了 cloudflare 提供的加密代理

安装 Docker

安装 Nginx

或者 Caddy

安装 Bitwarden_rs

bitwarden_rs安装只需要一句代码就可以搞定:

docker pull bitwardenrs/server:latest

运行 Bitwarden_rs

docker run -d --name bitwardenrs \
  --restart always \
  -e SIGNUPS_ALLOWED=true \
  -e WEBSOCKET_ENABLED=true \
  -e LOG_FILE=/data/bitwarden.log \
  -p 8880:80 \
  -p 3012:3012 \
  -v /bw-data/:/data/ \
  bitwardenrs/server:latest

配置 Nginx

本文域名示例为 passwd.com

文件 passwd.com 保存到 /etc/nginx/site-enabled/ 目录下

server {
  listen 80;
  server_name passwd.com;
 
   client_max_body_size 128M;
    location / {
        proxy_set_header  Host  'passwd.com';
        proxy_pass http://127.0.0.1:8880;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     }
    location /notifications/hub {
    proxy_pass http://127.0.0.1:3012;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    }
    location /notifications/hub/negotiate {
    proxy_pass http://127.0.0.1:8880;
    }
}

重启 Nginx

service nginx restart

数据备份

2021/04/18 06:24 · colin

Total Commander 共享版,启动免点击解决方案

本方案实现:

  1. 通过AutoHotKey脚本,在启动共享版Total Commander 时,自动执行点击按钮1启动程序,免去手动点击1进入软件的步骤。
  2. 再配合任务计划程序,可在随意运行TotalCommander时自动运行AutoHotKey脚本,达到免点击的目的。

AutoHotKey脚本

需安装 AutoHotKey

本脚本适用于 Total Commander (x64) 9.50β5

本脚本实现,启动共享版Total Commander 时,自动执行 点击按钮1启动程序,但只能运行1次。

自动点击保存以下脚本,记录下路径。

RunTCM_auto.ahk
; When Total Commander startup, active this script immediately
 
; run tcm
; Total Commander (x64) 9.50β5 - NOT REGISTERED
 
IfWinExist Total Commander (x64) 9.50β5 - NOT REGISTERED
{
    WinActivate
    ;WinMaximize
    Send {Alt+Tab}
}
else
{
    ;Run tcm
    WinWait Total Commander
    WinActivate
    Send {Alt}1
}
 
return

通过任务计划配置自动运行脚本的步骤

关键步骤:

  1. 如果是 Windows 10 家庭版,首先启用组策略功能 Windows 10 家庭版开启组策略功能
  2. 可通过 【AutoHotKey安装目录】\Compiler\Ahk2Exe.exe,将以上的 RunTCM_auto.ahk 脚本转为 RunTCM_auto.exe,防止任务计划程序无法运行
  3. 通过任务计划配置自动运行脚本 参考 如何实现启动程序A的时候执行相应的计划任务?,创建任务计划程序,当启动Total Commander时,运行上面保存的Autohotkey脚本
  4. 如此,实现 共享版Total Commander启动免点击

附1:自动运行Autohotkey脚本的任务计划程序

03-任务计划程序导入-注意修改用户-OpenTotalCommanderthen.xml
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2020-05-14T09:31:13.3987177</Date>
    <Author>HC-LAPTOP\hc</Author>
    <Description>打开Total Commander,运行hotkey,免点击自动进入程序。C:\Program Portable\TotalCMD64\Totalcmd64.exe</Description>
    <URI>\Open TotalCommander then</URI>
  </RegistrationInfo>
  <Triggers>
    <EventTrigger>
      <Enabled>true</Enabled>
      <Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="Security"&gt;&lt;Select Path="Security"&gt;
        *[System[band(Keywords,9007199254740992) and (EventID=4688)]] 
        and 
        *[EventData[Data[@Name='NewProcessName'] and (Data='C:\Program Portable\TotalCMD64\Totalcmd64.exe')]]
        and
        *[EventData[Data[@Name='ParentProcessName'] and (Data='C:\Windows\explorer.exe')]]
    &lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription>
    </EventTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>S-1-5-21-4268050197-1674650841-2453912747-1001</UserId>
      <LogonType>InteractiveToken</LogonType>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT72H</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <!-- <Command>C:\home\04-storage\02-autorun\RunTCM_auto.ahk</Command> -->
      <Command>C:\home\04-storage\02-autorun\RunTCM_auto.exe</Command>
    </Exec>
  </Actions>
</Task>

通过任务计划程序导入该脚本,点击更改用户或组,修改为当前用户,即可导入。

附2:任务计划程序中事件筛选的代码

<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">
        *[System[band(Keywords,9007199254740992) and (EventID=4688)]] 
        and 
        *[EventData[Data[@Name='NewProcessName'] and (Data='C:\Program Portable\TotalCMD64\Totalcmd64.exe')]]
        and
        *[EventData[Data[@Name='ParentProcessName'] and (Data='C:\Windows\explorer.exe')]]
    </Select>
  </Query>
</QueryList>

感谢

  1. 感谢 Total Commander。
  2. 感谢 AutoHotKey
  3. 感谢 Microsoft Windows
2021/03/27 04:16 · colin

数据库设计工具

  1. Power Designer
  2. ENTERPRISE ARCHITECT cn en
  3. PDMan 国产免费数据库设计工具
2021/01/03 07:44 · colin
home.txt · 最后更改: 2019/10/06 11:49 由 colin