Sharp DX-2058NC的折腾记录
前言这两天正好有扫描文件的需要,而办公室里的扫描仪只能扫描A4纸大小的文件,所以有很多局限性。而单位有一台Sharp DX-2508NC打印机,可以满足大纸张的扫描需要,但是据其他同事说,扫描功能坏了,不能用了。但我想着这玩意儿应该没这么容易坏吧,于是折腾了两天,绕了许多弯路,最终解决问题。
折腾记录一、怀疑是扫描软件的问题这台打印机具有扫描功能,所以很自然的想到,既然已经安装了打印机的驱动,打印正常,那么扫描应该也能用吧。于是打开Acrobat,选择从扫描仪创建PDF,但是很遗憾找不到Sharp的扫描仪。以为是扫描软件的问题,于是下载了其他扫描软件,皆失败。
二、怀疑是驱动不完整或许是我只安装了打印模块,没有安装扫描模块?我这么想。于是上夏普官网,找到SharpDX-2508型号,一看,
DX-2508NC只有一种打印驱动,但是看到下面兄弟型号2008UC有一款TWAIN扫描驱动程序,想着兄弟型号的扫描驱动说不定也能用。下载安装后,测试失败。
三、怀疑是后台配置出错后来发现该设备具有网络扫描功能,于是登陆该设备后台,发现,其他同事已经尝试过了,不死心的我继续尝试。在后台中可看见有四种 ...
信任
读《怒》有感。说来挺有意思的,这本书我本来是当推理小说看的,但是越看越不对劲,书里写了三个故事线,讲述了三个故事中的主人公遇见了一个来历不明的男人之后发生的故事。一点都没提到开头的凶杀案,我一度以为自己可能看了什么盗版。于是上豆瓣瞅了一眼评论,我很其实讨厌被剧透,所以只是简单瞄一眼书友看完此书的感受,大概就是“前半段很无聊,后半段很感人”、“戳中泪点”、“立意很深”之类的。说实话和我的预期有点不一样,我是当作推理小说看的,但是我偶然看到了一条评论:“……直人、田中、田代是同一个人……”。我只看到了这行字,因为害怕被剧透,不敢继续再看了,赶紧关了手机,心想:“这么刺激?”。顿时对这本小说产生了兴趣,并且后悔刚才为什么要看那条评论。所以我一直在把三个故事中的男人当作凶手,分析他们行为的动机,梳理三个故事的时间线,认为三个故事是依次发生的。但是今天阅读到最后一页时,结局与我预想的差距太大,我感觉我好像成为了故事中的一员。
本书与其说是推理小说,不如说是社会小说,故事一开始就明确了犯罪嫌疑人是山神一也,全书也是围绕在爱子和田代,优树和直人,景、辰哉和田中,以及警察追踪凶手这四条线进行叙述,凶手 ...
对文件的高阶操作-shutil库
前言shutil模块提供了一系列对文件和文件集合的高阶操作。 特别是提供了一些支持文件拷贝和删除的函数。
即便是高阶文件拷贝函数 ([shutil.copy()], [shutil.copy2()]也无法拷贝所有的文件元数据。
文件夹与文件操作copyfileobj将fsrc文件内容复制至fdst文件,length为fsrc每次读取的长度,用做缓冲区大小
完整语法:
copyfileobj(fsrc, fdst, length=16\*1024)
fsrc: 源文件
fdst: 复制至fdst文件
length: 缓冲区大小,即fsrc每次读取的长度
import shutilf1 = open("file.txt","r")f2 = open("file_copy.txt","a+")shutil.copyfileobj(f1,f2,length=1024)
copyfile将src文件内容复制至dst文件
完整语法:
copyfile(src, dst[,follow_symlinks])
...
openwrt cloudflare的ddns插件安装
先下载cloudflareddns插件,下载地址:https://wws.lanzouy.com/iJvl3ybr32h然后使用winscp登录路由器,将插件上传到tmp路径下。
接着使用xshell登录路由器,目录切换到tmp下,执行命令
opkg install ddns-scripts_cloudflare.com-v4_2.7.8-13_all.ipk
等待安装完毕后,在网页上刷新路由器后台地址,打开动态dns插件,发现插件安装成功
主要有以下几项配置:
查询主机名 – 你的主机名,主要用于显示域名是否与ip绑定成功,例如 text.com
域名 – 填写一个子域名,例如de@text.com,如果使用主域名则只需要填写@text.com即可
用户名 – cloudflare的登录名
密码 – cloudflare后台中的Global API Key
配置正确的话会出现如下界面
markdown语法学习
markdown语法学习基础语法标题使用 # 号可以表示1-6级标题
# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题
换行使用两个以上空格加回车可以换行
字体*斜体文本***粗体文本*****粗斜体文本***
效果如下
斜体文本
粗体文本
粗斜体文本
分隔线分隔线可以很随意,如下所示均可以创建分割线,但是在为知笔记里就只能使用下面的第三种方法
Text******* * * * - - -----------
删除线在文字两端加两个波浪线即可
下划线可使用HTML标签实现,为知笔记不支持
xxx
脚注脚注是对文本的补充说明,为知笔记暂不支持,作为代替可以使用评论功能
格式如下
Text我现在要使用脚注了[^脚注][^脚注]:这是一个脚注
列表以下符号均可创建无序列表
Text*-+
有序列表可以用数字加 . 来表示
列表嵌套在次级列表前添加四个空格,为知笔记中可以简便的使用换行进行自动缩进
第一项
第二项
区块暂时不知道有什么用,但是在文章中提高阅读性有点用
在段落开头使用 > 符号,后面跟一个空格
Text& ...
了解docker
docker是什么Docker 是 PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上, 基于go语言并遵从Apache2.0协议开源。Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。Docker 容器通过 Docker 镜像来创建。容器与镜像的关系类似于面向对象编程中的对象与类。Docker daemon 一般在宿主主机后台运行,等待接收来自客户端的消息。 Docker 客户端则为用户提供一系列可执行命令,用户用这些命令实现跟 Docker daemon 交互。一句话简单概括:docker相当于是一艘船,docker中的镜像相当于是一个个集装箱,每个集装箱之间互不干扰。
docker使用中的术语
镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
容器(Container):镜像(Image)和容器(Contain ...
obsidian笔记同步方案
前言obsidian是一款基于本地文件的笔记软件,所以笔记的多端同步是个问题,虽然官方推出了自己的同步服务,但是本着能自己解决就自己解决的态度,我自己研究出了一个比较完美的同步方案。
解决方案因为我用的是苹果手机,所以自然而然的考虑到了icloud同步这个方法。在手机版obsidian上创建笔记库,在windows上下载icloud,登录icloud账号,obsidian选择在icloud中打开笔记文件。经过如上操作之后就解决了同步问题,本篇完(并没有) ^8fe52d
起初我是通过这种方案,但是使用一段时间后发现,在写笔记的过程中,obsidian经常弹出“文件被外部修改,正在合并”的提示,然后再icloud中就会出现若干个重复笔记。类似这样:
而且写着写着经常会有几行笔记消失了。所以以上几宗罪使icloud同步变得很难用。
真·解决方案自动同步icloud和本地为了解决上述问题,我写了一个自动同步的程序,使其每隔两分钟在本地文件和icloud中同步一次。同步的代码如下:
def file_cmp(f1,f2): res = filecmp.dircmp(f1,f2) c ...
MBR与GPT
前言前几天为朋友修电脑遇到了问题:[[重装系统的经验#遇到的问题|重装系统遇到的问题]] ,是因为对磁盘分区以及主板年代理解不深,所以本文针对磁盘分区这部分进行记录。参考资料:MBR与GPT
正文机械硬盘的原理机械硬盘由坚硬金属材料制成的涂以磁性介质的盘片,盘片两面称为盘面或==扇面==,都可以记录信息,由磁头对盘面进行操作,一般用==磁头==号区分。结构特性决定了机械硬盘如果受到剧烈冲击,磁头与盘面可能产生的哪怕是轻微撞击都有可能报废。
继续讲原理:假设磁头不动,硬盘旋转,那么磁头就会在磁盘表面画出一个圆形轨迹并将之磁化,数据就保存在这些磁化区中,称之为磁道,将每个磁道分段,一个弧段就是一个扇区。一个硬盘可以包含多个扇面,扇面同轴重叠放置,每个盘面磁道数相同,具有相同周长的磁道所形成的圆柱称之为==柱面==,柱面数与磁道数相等。如下图
最初的寻址方式称为==CHS==,在LBA(Logical Block Address)概念 ...
python subprocess库
前言subprocess这个模块来产生子进程,用于执行shell指令,并连接到子进程的标准输入/输出/错误中去,还可以得到子进程的返回值。subprocess意在替代其他几个老的模块或者函数,比如:
os.system os.spawn*
os.popen*
popen2.*
commands.*
参考资料:
subprocess的用法_soman的博客
Python之subprocess模块 - 卿先生
正文常用subprocess方法
函数
描述
subprocess.run()
Python 3.5中新增的函数。执行指定的命令,等待命令执行完成后返回一个包含执行结果的CompletedProcess类的实例。
subprocess.call()
执行指定的命令,返回命令执行状态,其功能类似于os.system(cmd)。
subprocess.check_call()
Python 2.5中新增的函数。 执行指定的命令,如果执行成功则返回状态码,否则抛出异常。其功能等价于subprocess.run(…, check= ...
文件比较-filecmp库
前言filecmp库定义了用于比较文件和目录的函数。
模块方法
方法
描述
filecmp.cmp(f1, f2, shallow=True)
比较名为f1和f2的文件,如果它们相等则返回True,否则返回False。
filecmp.cmpfiles(dir1, dir2, common, shallow=True)
比较dir1和dir2两个目录中文件,文件的名字由common给出。返回三个文件名列表:match、mismatch、errors。mtach包含匹配文件的列表,mismatch包含不匹配文件的列表,errors列出无法比较的文件的名称。
shallo参数告诉cmp()除了文件的元数据外,是否还要查看文件的内容。默认情况下,会使用由[[os库#os stat|os.stat()]]得到的信息来完成一个浅比较。如果结果是一样的,则认为文件相同。因此,对于同时创建的相同大小的文件,即使他们的内容不同,也会报告为是相同的文件。当shallow为False时,则要比较文件的内容。
dircmp类class filecmp.dircmp(a, ...