From 8c80863341f4b718655f0d4dd31c2786dde791f4 Mon Sep 17 00:00:00 2001 From: "YUN-PC5\\user" Date: Thu, 14 Dec 2023 16:43:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/_posts/ASP.NET Core.md | 5 + source/_posts/Git.md | 2 + source/_posts/Linux.md | 55 ++++++ source/_posts/MySQL.md | 1 + source/_posts/Vue.md | 171 ++++++++++++++++++ ...3a4dtplv-t2oaga2asx-jj-mark3024000q75.webp | Bin 0 -> 28690 bytes ...91b9tplv-t2oaga2asx-jj-mark3024000q75.webp | Bin 0 -> 10338 bytes 7 files changed, 234 insertions(+) create mode 100644 source/_posts/Vue/16e29ccb69463a4dtplv-t2oaga2asx-jj-mark3024000q75.webp create mode 100644 source/_posts/Vue/16e29d0dea8191b9tplv-t2oaga2asx-jj-mark3024000q75.webp diff --git a/source/_posts/ASP.NET Core.md b/source/_posts/ASP.NET Core.md index e9ef580..a04d322 100644 --- a/source/_posts/ASP.NET Core.md +++ b/source/_posts/ASP.NET Core.md @@ -1958,3 +1958,8 @@ string CustomSchemaIdSelector(Type modelType) return prefix + modelType.FullName.Split('`').First(); } ``` + +# 最小 API + +## 概述 + diff --git a/source/_posts/Git.md b/source/_posts/Git.md index 708d277..807a99b 100644 --- a/source/_posts/Git.md +++ b/source/_posts/Git.md @@ -71,3 +71,5 @@ Windows下 `Win + R`运行输入`control` git config --global credential.helper wincred ``` +## 储藏 (Stash) + diff --git a/source/_posts/Linux.md b/source/_posts/Linux.md index f0a44d5..a89e265 100644 --- a/source/_posts/Linux.md +++ b/source/_posts/Linux.md @@ -168,6 +168,34 @@ root:创建者所在的组 Apr 11 2018:最后一次修改时间 home:文件名或目录名 +## 查找文件 + +### find 命令 + +基本格式:find path expression + +1. 按照文件名查找 + find / -name httpd.conf # 在根目录下 查找文件httpd.conf,表示在整个硬盘查找 + find /etc -name httpd.conf # 在 /etc 目录下查找文件 httpd.conf + find /etc -name '\*srm*' # 使用通配符\*(0或者任意多个)。表示在 /etc 目录下查找文件名中含有字符串'srm'的文件 +2. 按照文件特征查找 + find / -amin -10 # 查找在系统中最后10分钟访问的文件(access time) + find / atime -2 # 查找在系统中最后48小时访问的文件 + find / -empty # 查找在系统中为空的文件或者文件夹 + find / -group cat # 查找在系统中属于 group 为 cat 的文件 + find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modify time) + find / -mtime -1 # 查找在系统中最后24小时里修改过的文件 + find / -user fred # 查找在系统中属于fred这个用户的文件 + find / -size +10000c # 查找出大鱼10000字节的文件(c:字节,w:双字, k:KB, M:MB, G:GB) + find / -size -1000k +3. 使用混合查找方式查找文件 + 参数有:!, -and(-a), -or(-0) + find /tmp -size +10000c -and -mtime +2 # 在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件 + find / -user fred -or -user george # 在根目录下查找用户是fred或者george的文本文件 + find /tmp ! -user panda #在/tmp目录中查找所有不属于panda用户的文件 + + + ## 进程管理 ps 查看前台进程 @@ -563,13 +591,26 @@ tar -xvf mysql-5.7.41-1.el7.x86_64.rpm-bundle.tar rpm -ivh mysql-community-common-5.7.41-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-5.7.41-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-compat-5.7.41-1.el7.x86_64.rpm +# 如果出现以下错误 +error: Failed dependencies: + libcrypto.so.10()(64bit) is needed by mysql-community-libs-compat-5.7.41-1.el7.x86_64 + libcrypto.so.10(libcrypto.so.10)(64bit) is needed by mysql-community-libs-compat-5.7.41-1.el7.x86_64 + libssl.so.10()(64bit) is needed by mysql-community-libs-compat-5.7.41-1.el7.x86_64 + libssl.so.10(libssl.so.10)(64bit) is needed by mysql-community-libs-compat-5.7.41-1.el7.x86_64 +dnf install https://repo.almalinux.org/almalinux/8/AppStream/x86_64/os/Packages/compat-openssl10-1.0.2o-4.el8_6.x86_64.rpm rpm -ivh mysql-community-devel-5.7.41-1.el7.x86_64.rpm +# 如果出现以下错误 +error: Failed dependencies: + /usr/bin/pkg-config is needed by mysql-community-devel-5.7.41-1.el7.x86_64 +dnf install openssl-devel -y rpm -ivh mysql-community-client-5.7.41-1.el7.x86_64.rpm # 如果出现以下错误 错误:依赖检测失败: libncurses.so.5()(64bit) 被 mysql-community-client-5.7.41-1.el7.x86_64 需要 libtinfo.so.5()(64bit) 被 mysql-community-client-5.7.41-1.el7.x86_64 需要 dnf install libncurses* -y +dnf install epel-release -y +dnf install ncurses-compat-libs -y # 再次执行 rpm -ivh mysql-community-client-5.7.41-1.el7.x86_64.rpm rpm -ivh mysql-community-server-5.7.41-1.el7.x86_64.rpm # 如果出现以下提示 @@ -1149,3 +1190,17 @@ sudo supervisorctl stop all sudo supervisorctl status ``` +### 程序配置 + +```conf +[program:ckadminnetcore] +command=dotnet CK.Admin.WebApi.dll --urls http://[*]:8888 +directory=/root/www/ckadminnetcore/publish +environment=ASPNETCORE_ENVIRONMENT=Production +user=root +autostart=true +autorestart=true +stderr_logfile=/var/log/ckadminnetcore/err.log +stdout_logfile=/var/log/ckadminnetcore/out.log +stopasgroup=true +``` diff --git a/source/_posts/MySQL.md b/source/_posts/MySQL.md index 081ca86..0139953 100644 --- a/source/_posts/MySQL.md +++ b/source/_posts/MySQL.md @@ -275,6 +275,7 @@ GRANT References ON database.* TO 'username'@'%'; GRANT Select ON database.* TO 'username'@'%'; GRANT Show view ON database.* TO 'username'@'%'; GRANT Update ON database.* TO 'username'@'%'; +GRANT PROCESS ON *.* TO 'username'@'%'; ``` diff --git a/source/_posts/Vue.md b/source/_posts/Vue.md index acd85d3..8424882 100644 --- a/source/_posts/Vue.md +++ b/source/_posts/Vue.md @@ -1967,3 +1967,174 @@ npm install jsencrypt --save-dev import jsencrypt from 'jsencrypt' ``` +# Chrome 插件开发 + +## 项目配置 + +```typescript +import pkg from "../package.json"; + +const manifest: chrome.runtime.Manifest = { + // 描述manifest文件的版本号,必须为3 + manifest_version: 3, + // 描述插件的名称。这个属性就是配置我们插件名称,用于显示在插件列表 + name: pkg.name, + // 描述插件的版本号。 + version: pkg.version, + // 描述插件的简要说明。 + description: pkg.description, + // 允许使用扩展的域名 + host_permissions: ["*://*/*"], + background: { + service_worker: "src/entries/background/main.ts", + }, + // 描述插件图标的大小和文件路径。 + icons: { + "16": "images/icon16.png", + "24": "images/icon24.png", + "32": "images/icon32.png", + "48": "images/icon48.png", + }, + action: { + default_popup: "index.html", + // default_icon: { + // "16": "images/icon16.png", + // "24": "images/icon24.png", + // "32": "images/icon32.png", + // "48": "images/icon48.png", + // }, + }, + options_ui: { + page: "src/entries/options/index.html", + open_in_tab: false, + }, + // activeTab: 当扩展卡选项被改变需要重新获取新的权限 + // scripting: 使用 chrome.scripting API 在不同上下文中执行脚本 + // tabs: 操作选项卡api(改变位置等) + // storage: 访问localstorage/sessionStorage权限 + // declarativeContent: 使用 chrome.declarativeContent API 根据网页内容执行操作,而无需读取网页内容的权限。 + permissions: ["activeTab", "scripting", "declarativeContent: "], + + content_security_policy: { + extension_pages: "script-src 'self'; object-src 'self';", + }, +}; + +export default manifest; + +``` + +## 内容脚本 + +需要操作dom,并且不需要一直在后台运行,只需要再打开网页的时候运行 + +使用内容脚本(`content_scripts`)的方式运行插件即可 + +内容脚本(`content_scripts`)的特性: + +- 在页面打开,或者页面加载结束,或者页面空闲的时候注入 +- 共享页面dom,也就是说可以操作页面的dom +- JS隔离的,插件中的js定义并不会影响页面的js,也不能引用页面中的js变量、函数 + +开始使用`content_scripts`: + +`content_scripts` 有多种使用方式: + +1. 静态注入。在`manifest.json`文件中声明 +2. 动态注入。`chrome.scripting.registerContentScripts` +3. 编码注入。`chrome.scripting.executeScript` + +一般使用静态注入。 + +在`manifest.ts`文件中添加一下`content_scripts`配置 + +```typescript + content_scripts: [ + // { + // matches: ["http://192.168.0.88:8080/kaoqin-server/login*"], + // js: ["src/entries/content/kaoqin-server.js"], + // run_at: "document_end", + // }, + { + //"matches": ["http://*/*", "https://*/*"], + // "" 表示匹配所有地址 + matches: [""], + // 多个JS按顺序注入 + js: ["src/entries/content/content-script.js"], + // 代码注入的时间,可选值: "document_start", "document_end", or "document_idle",最后一个表示页面空闲时,默认document_idle + run_at: "document_end", + }, + ], +``` + +`content_scripts`还有动态注入的方式,其实就是通过调用api的方法来注入,如下示例代码: + +```typescript +chrome.scripting + .registerContentScripts([{ + id: "session-script", + js: ["content.js"], + persistAcrossSessions: false, + matches: ["*://example.com/*"], + runAt: "document_start", + }]) + .then(() => console.log("registration complete")) + .catch((err) => console.warn("unexpected error", err)) +``` + +动态注入可以scripts注入的时机更可控、或者可以更新、删除content_scripts。 + +`content_scripts`属性是一个数组,也就是说我们可以配置多个脚本规则,数组的每个元素包含多个属性: + +- matches 指定此内容脚本将被注入到哪些页面。必填 +- js 要注入匹配页面的 JavaScript 文件列表。选填 +- css 要注入匹配页面的 CSS 文件列表。选填 +- run_at 指定何时应将脚本注入页面。有三种类型,`document_start`,`document_end`,`document_idle`。默认为document_idle。选填 + +## 页面通信 + +> 由于`content_scripts`是在网页中运行的,而非在扩展的上下文中,因此它们通常需要某种方式与扩展的其余部分进行通信。 扩展页面(`options_page,bakcground,popup`)和内容脚本(`content_scripts`)之间的通信通过使用消息传递进行。 任何一方都可以侦听从另一端发送的消息,并在同一通道上做出响应。消息可以包含任何有效的 JSON 对象(空值、布尔值、数字、字符串、数组或对象)。 + +![img](Vue/16e29d0dea8191b9tplv-t2oaga2asx-jj-mark3024000q75.webp) + +![img](Vue/16e29ccb69463a4dtplv-t2oaga2asx-jj-mark3024000q75.webp) + +### 发送 + +从内容脚本(`content_scripts`) 发送到 扩展页面(`options_page,bakcground,popup`),代码示例: + +```javascript +(async () => { + const response = await chrome.runtime.sendMessage({greeting: "hello"}); + console.log(response); +})(); +``` + +从扩展页面(`options_page,bakcground,popup`)发送到 内容脚本(`content_scripts`) 代码示例: + +```javascript +(async () => { + //获取当前的tab页面 + const [tab] = await chrome.tabs.query({active: true, lastFocusedWindow: true}); + const response = await chrome.tabs.sendMessage(tab.id, {greeting: "hello"}); + console.log(response); +})(); +``` + +### 接受 + +接收消息的方法都是一样的,通过`runtime.onMessage`事件侦听器来处理消息 + +```javascript +chrome.runtime.onMessage.addListener( + function(request, sender, sendResponse) { + console.log(sender.tab ? + "from a content script:" + sender.tab.url : + "from the extension"); + if (request.greeting === "hello") + //处理完消息后、通知发送方 + sendResponse({farewell: "goodbye"}); + } +); +``` + diff --git a/source/_posts/Vue/16e29ccb69463a4dtplv-t2oaga2asx-jj-mark3024000q75.webp b/source/_posts/Vue/16e29ccb69463a4dtplv-t2oaga2asx-jj-mark3024000q75.webp new file mode 100644 index 0000000000000000000000000000000000000000..164ea337ef211c759434e5b49fafdd0624f10e7d GIT binary patch literal 28690 zcmeFY1#n!;(k9pe*yzUfdG=i!U`_H zpSJ*D7efaJ8_-W=Yv~9@UOf7i66E$uAh4T_4+efFs62@%AZ$+ z&o>T00wD5f9(Di&fD=Fq5Ogv1_|z8w5Vm*lbh0$Ja3K)<99dHWVS8H#R~J(!8Ujf> zV>%iFCI&`^Kkfe5?9UYdxK;Yg7C>lo|0%OC1OPaR0RWJg|CAY}0RU~?00741f67Sm z004My0HAf&!O+R@@8^Af0^NiDU)?*KF*E(u9tcJV007(h__!ql0Kk&~fVaetkC&p4 zkGJB_@Bg$}zs;vN5;%NXnE?|h7l`T< zCcOo$j(?y($$Q}A!=>>L{Fo2a_q9jzpLP5E_;1E9bHB>&J~l6F^F8f?T^PN&K*bpudg(EC1tN^tJC<{o&&>KLOtWf5$(= zKjwYnW$jJ-b2L6OKcf7W{QdB= z{$nrv*T*4$sei>A@qO^q*uDQN|FZvu-{xD8U-n1Bd(&I~9rT}ejddR%L;S%$k#8d( za~GP=Qy*Q=bC*vAk&J#;DHc%mx;ER8X@o;T*ZfxXx7(=L}F!QC#v;ipTG2k;O>_*e4T~Ed@WA#fsjalh;w{t@#_?S z$8^|X-<)F#&1tFL(C%Tb-nMNiIQn^j{1Wm~Ctu0XHXl21=H#Texn9x5NJ@Fe)H^LTp>5qA#dIiHX8@y>5JbXo@gB5DQFsQHwpOoolU1?r{0c`r6OjYlTx9AVyy z&?w92$en$Qy(P?_8|Gr*ssd35jnnmObpnSYQJX(NRGZOwXYAY7^PDz`FZ0VP>P)JO zJTO+}&ucJRT=e`1qVO@g5+aqnc6gGOb=s3j>>0!FGUu(`AG%ClLt?4D_O?5}q>j~u zmM0Jr+5JYJ*}vRJ>4v#osT`VAOy2&efpZ(smnmxg8W~8>pt#7`Ixg}4ggZ&aM9qT{ zT2kH}9Q)|?>wYoS!GA-hKeDV3?fc7qKS}Xg@^Y3#J!zDZ#kP~(_q0jDumKn^Qae2I zk`BnN%CAr$=wa#W3JGVuPr-;tC5NT=NVU)BoXQA!VoplWKEHy&V%Q=Zm*p5OQY={2 zaQa=LbmXdekCRQU@ow$!ZQp^2Vx(y0|=L@h`$rYz^Lv549{r~~XQ zm~QL!Q{uz1AW6k%=I1sy4vnjSlm!U!>q1|ls5y9#>0MemHKPLVW;NP@_T^xz=dIwY zCsK4^gH^9lx%2`f(#b0*emct_ZBEerHp*4=>K<%Phv^^WHQ7kih>1iU^fH0Yl{+-V zLMnriz@;HP7e6Im_@uEp^+|WaG49%$sRb@ZW=pnNqnn}s2(x~tk znJUD~&H$IS>rrfWq&%SU(c5}SFVEo62nEu)klu4-vV>I5r3+9i89>O0SddH$#f-`_ zYpa2)s5Iui>LvDTqQkiPsPttcN{kxls)l7nS<~IfUGie(GVZGC)DJnsOT1o>w=W^b zz~7$R2o^dY={Mo)rQTOHS*lbAW5_+}>7N}0(Oaf+_IW9DPchy+Es}!J76Tg%MJQ7hhaKlJa)`p?E z&vhJF-NN+255-2O@mZP)K#o`#OPH*& zQsTt2xY&(Nka`UsB zuwCBqiui%qUv?$a_$GxrAY60#x$hM9D4XJFl(R-`gI<4R#IDMU z(q!?VTlj&1h89@DDj3aCVLo zNm^7sVYyGJQUqI;>jC=?LnoNOuXyd;(rcd(!a7cAcuaqn8zIThEaa*s6x%Q5pg}i2 z#ld(2XPi-b6k!5R6ztCM4TP-g0??tSNLR-Jz@VGld@t*amtBMhh^F*Qh2;9pU?6ZI z?vqO81Y^NeazX9SkSx?NioYSNGNojysBVjJZ)A#T%r zc(vj3BUw?Grqd77?YXx$gR#2lKvq&J?jD?`86=m)+RGb9lMr%=c~xF)KVeyXky=An z3v%rdhr{;6Y!Yd-Jmfm@jghHNU4NVMd*ee-cxOp#zF2+!f@y^weAv@J`@&X-$}MgO z z*t4;S)k^^|5sW#|HlzS#2|s;_P#1L*oC`BzkxLDTyy#*co?!c& zJ78h69UFEO;2nz%OsASWw6s#KUtX;E9k`Dm8)vf>(CR?`KsMe&&_y+>KFFf~dlmd8 z*IWZWw(Fu=+^Y7TFHmCK-dE0hy&2bm1AOXx9_%@{o6{y7k$8~MmxSO=jb&aI#n!4{ z$%@}Afd?k&L%fwTfGF&l@Nbx((?8Zq8@Pcs84BA(uCKlWa`4u=<4pJ}#hs9|fye3= zv?mCws^IibuNa##)yi=owmBp}zU=Dw_$JtV0gqQzJJ|`*vRI1ua>E>+YYeBh5vnyL<;LlaK)V#Yi)!yZ0>t@oWL*yAQZcO^^yT9V0 z+U}Q?Ad@fF-BiLWsj&@orGYa}ur^bekeydL9K8fLhShaWOAd8~0b#2&lUwkEEJQKk ziHP|in@bpx#Zc3?Y@@(zlm=in)~&!C81Qrc_g5d=Bu@Gm6Cxei?yR2ZsK#3Hel2GS z5MBM~(p1Qr#*auVfwIu? zRzy(nMrfR1Q}(P`zxlf60Tl%MTKxXK_mx_7{L+0{2#m|p74v=CrQ$<7tcC?J&Bz}# zFelb!EIQ)=d_Iy%Mn;)!@9s9sCNi_R4^()C&2i2QA(dCZ@=-lDO%?gO(Y-XfuVK4# z7*y?GS~y2srX2@(Z;NeZf^^tvd{@@vk~<%HqfoYqdD5q#XKD9aJ7H;Wa>X6ncND^* zrt#f3MtLxZKwpWJV#DHA@-AC}K(Ga2xV6=2GPz4fTQ|X$dRPv+Zyc>L9L@A6cM2oz z3#7!?^ewBj=WK{88L>74vOYXYSt97S2ETTl$FCB=ud`6rj`fn;qS>G%69bNQk7!E{ z)f5>jcd9vAE7EVnm0P#{>DXC&D`Lem_b0KjM5|6iM~U~Paw^%Q%{?V z*9RfpLf_Es4HH{Cz^RW9Xsoxhw-26aECWIX6xzK>t~xcA`+$l$(WRsv9Rze2|AJ7V zL3^{^CzOl6r?C|yxLMdg9=w&R=ggrR0JZ*+SsCPb z(NNm+4eOb%Y0t=*p!j-u9T@E5e6~WC*TUC3Nw~KHbzM+<`m`CAZY5T3@Dj)|m&5n6 zfsM@Nekzlhi7q|EkO-4;dDdiF$(=$?JL5v<%g!SuJM2@01m4mSLQshV{1G_ZgPxA1 z&S8e3FvN-S?+kRiC#x_r=^uhLt$V`?v(Vcgu$M^$gI|H52pwS|mWy}j-&p5sj80-?o$KUsZS{>cT{fx%I1O^MznfYI0&ux|yDOe?HYHsLU*%&JJ# zPmpb-WB#)W>apSCH?LM19lo)Bf0DB(i%Du5DsD(Rw_O6m1BoopKRdHg14$H==1o1I z<@d1L;&Tz9A%a2dZo-XMZggw`h0(mOZw-E`kc<_tArMn-^~Y%ezyzVgFJJ z0ChleJ+lIX2W=I^Np&M;$`A_0Gysje=!=$2KUf7+1uD^%KIS|aI#ag3@$Dgy<;Q{F zQNeGiY)XvE1S0HjdxR{lKgq{VIi#0U(tsVg?9)iQKo*i5Ph|9Ez(ACsifnoHa9u6% zQhJgcYwlyjVp ztgdwd2EJ@^T{wY#TwKQe;MPbZbo}Oj7^zMFdT=X~zn~+5}O$teDmu zH4|)chNZUets}dJU)m~AT1yx7@?+LtA^<8^h4oItX+jTjr%)h z!FrwO(F-Gs*JmVQYU`wj z$|m%Ep%lEV*@9sWwt+msk#*`>7!gntK0iiKCw3#Q!&;(#DQJYGd@oeM14ZjI=o{5{OO z4Et!DW230k%YjohehG-eao9BQvXqjAXy*^QX}9$4h>UhsXQK7V_`(ZBu(p zKtQtngiiBU5Q81{B|VS)*+jVO$`!q3=L6maf5y|j!_7%*bgObzr#oDoiwoS?L4;|_ zoJ?&B*)hERc$us&4OSogR+rK?U7_)v-PG_{=YWv-GYj} z(4C3cD8nAE1b)T73$)i?9f5TAKipy5lqdD8R^P#bAxj(_ss)5bzg6IDcQA}-3L=qP z)kFovSVIqK4w5ALa(3lQ8?s3A$>L){WCP@w)pM2DZ9XE9TR;55 zNwU}mg60f1MmKk*=?osQOSYC^;4H!)z9z@(uY(vRaN4W`#?I0}hOg|*M;#{n{rV~p zeNka$;bn@s+R)L75L$5F7W|#vb6>~1JC;e@V9Jf;)!TW)*X#VpO3Jm3AmW=(OlK}8 za~(7_l;|vYgvz-kwX?ZGoeoZC+Gu02Cb)zYwV-NtCv?_`jP20~3 z(jbPUiYM+zU%C!R1$AUTK1`2Bo=V;^J^;mWOl|Z+3fo4H-a+K;Xub`}l9GA0kb|uI zzR`|-+?>8Wp)FvH5gGIZga)g$zpHYK7NtXAiMs2>v5nRdXr0Ul)?)e2&^WO4 zXtLsM1oMZj4CqWRvEsL2)L8%8jJKK5F|qTox0-#`>bhsfv06t-(@d-}_sFdG8x}_k`{&QRu7+BcgtD-deaOVCJ)gHTP2j5XuWS`EJbr`5 zI!}{=nxbW{SU$147~=ivhnbQ@)-1u^Fy=KhI|fWKd9AGhQQYh zkSnD~K=jG=Z!+i0XR!;8bOC(ueUuz^Hq-{5aS;gUuk#cL-%g5OW%;K`Dlrv+I!{u| zPADvR_LL0p>EgUKd0koB%rgjZ-(@C-W<$Q-*<285CfbI0-#N|wsLRGDvG@|AG@K%F zkk1p1z!EZ$6L0xDX1U*91g2;BWi+x-$nqMOqui$a7|4Fop-?4^Mdyi-qDn2X&}`5i zWwEs;YI*J2vn)YUf#LUZ6Pr<$yQru$7tEw!`3uF?Ekfm2FpATRl^~l*w7U9E8~� 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 z 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 z