让pdf阅读变成深色模式
123javascript:void(document.documentElement.style.filter='invert(89%)')//或者document.documentElement.style.filter='invert(89%)'
GCC 中在非 void 函数中不写 return 的情况
最近在复习408关于二分查找时,看到一个使用递归实现的方法。代码并不难实现。但是在写完这段代码后,发现一个问题。我在递归中并没有及时return结果。但是结果却是正确的下面贴上代码: 1234567891011121314151617181920212223242526#include <bits/stdc++.h>using namespace std;int BinSearchRec(int *ST, int key, int low, int high);int main(){ int st[10] = {3,6,8,11,15,18,20,21,25,30}; cout << BinSearchRec(st, 15, 0, 9) << endl;//查找15在数组中的位置 //结果为4}int BinSearchRec(int *ST, int key, int low, int high){ if (low > high) return...
Linux如何大量删除小文件
清楚了问题现象,解决方案就从除去rm -rf *命令的方式之外,还有哪些方法可用,如果通过网络搜索,可能会找到结合find命令再去执行rm的方式,但其实效率非常差,具体写法这里就不列出了,因为我们通常也不会这样处理。那么如何较为效率的删除大批小文件呢?结合网络的经验,并实测验证,最终总结了两种常见的解决方案,效率上也都尚可。 方案一:巧用rsync的方式达到删除目的建立一个空文件夹,使用rsync --delete-before -d <空文件夹> <需要清理删除小文件的目录>命令最终达到删除大批小文件的目的。下面演示具体操作: 1234[oracle@jystdrac2 adump]$ mkdir /data/null[oracle@jystdrac2 adump]$ ls -l /data/nulltotal 0[oracle@jystdrac2 ~]$ nohup rsync --delete-before -d /data/null/ /opt/app/oracle/admin/crmdb/adump/...
获取docker run命令
有时候我们需要获取docker run命令,比如我们在docker中运行了一个容器或者别人帮我们启动了一个docker但是未告知我们应该如何再启动一个。这时候我们可以通过docker inspect命令来获取。 安装1pip install runlike 支持的参数12345678910111213runlike nginx # 获取nginx容器的run命令Usage: runlike [OPTIONS] [CONTAINER] Shows command line necessary to run copy of existing Docker container.Options: --no-name Do not include container name in output -p, --pretty -s, --stdin --help Show this message and exit. 已启动容器通过 docker update 对设置 restart 选项1docker update --restart=always...
设置非root账号不用sudo直接执行docker命令
起因是经常使用docker,但使用的是自己的账户,这样就每次都需要使用sudo来创建容器和相关的目录。而这样带来的后果就是,我后续的每一个操作都需要加上sudo命令。否则连修改文件都做不到。因此写下这篇文章 设置 创建名为docker的组,如果之前已经有该组就会报错,可以忽略这个错误: 1sudo groupadd docker 将当前用户加入组docker: 1sudo gpasswd -a ${USER} docker 重启docker服务(生产环境请慎用): 1sudo systemctl restart docker 添加访问和执行权限: 1sudo chmod a+rw /var/run/docker.sock 然后就可以了,不用再使用sudo命令了。
家庭服务器Home Server实践
引用自家庭服务器Home Server实践 大佬写的很好,我这里不赘述,这些都是我在家庭服务器上实践过的,非常有用。
linux分区方案
常用方案 分为3个区 挂载点/;主分区;安装系统和软件;大小为30G;分区格式为ext4; 挂载点/home;逻辑分区;相当于“我的文档”;大小为硬盘剩下的; 分区格式ext4; swap;逻辑分区;充当虚拟内存;大小等于内存大小或内存的一半(本人16G);分区格式为swap /boot ;引导分区;逻辑分区; 大小为1G ;分区格式为ext4;
linux修改时区
Linux 设置时区和修改时间123timedatectl set-timezone Asia/Shanghai #服务器时区设置date #查看时间date -s "2024-07-17 09:28:05" #修改时间 保存退出,然后reboot重启服务器即可生效,date命令查看是24小时时间格式。
在浏览器调试js程序
在浏览器中调试在编写更复杂的代码前,让我们先来聊聊调试吧。 调试 是指在一个脚本中找出并修复错误的过程。所有的现代浏览器和大多数其他环境都支持调试工具 —— 开发者工具中的一个令调试更加容易的特殊用户界面。它也可以让我们一步步地跟踪代码以查看当前实际运行情况。 在这里我们将会使用 Chrome(谷歌浏览器),因为它拥有足够多的功能,其他大部分浏览器的功能也与之类似。 “资源(Sources)”面板你的 Chrome 版本可能看起来有一点不同,但是它应该还是处于很明显的位置。 在 Chrome 中打开 示例页面。 使用快捷键 F12(Mac:Cmd+Opt+I)打开开发者工具。 选择 Sources(资源) 面板。如果你是第一次这么做,那你应该会看到下面这个样子: 切换按钮 会打开文件列表的选项卡。 让我们在预览树中点击和选择 hello.js。这里应该会如下图所示: 资源(Sources)面板包含三个部分: 文件导航(File Navigator) 区域列出了 HTML、JavaScript、CSS 和包括图片在内的其他依附于此页面的文件。Chrome...
重定向和转发
重定向简而言之,重定向就是servlet将新的URL返回给Location,浏览器获得Location值,访问新的URL。从时序图中可以看出,服务器只负责将新的URL注入Location,URL的转变是由浏览器完成的 转发与重定向不同的是,转发的动作是在服务端完成,也就是说server直接将新的URL中的资源返回给浏览器,浏览器地址栏不变,用户察觉不到URL的转变。