我的一句话经验——软件篇
之前零零散散写过一些经验分享的文章,不系统,对读者也不友好。现在整理到一块,随时更新,如果值得深入还可以单独写文章。主要针对自由/开源软件,也可能涉及科学软件、商业软件。
目标:今年整理50条在中文圈里稀罕的小技巧。
2017-12-20 Update: 跌跌撞撞,我写完了50条经验。
2018-01-03 Update: 进行了归类,想办法转载看能不能收获更多访问。
一句话系列的另外两篇:我的一句话经验——Emacs Lisp篇、一句话系列——冷知识篇。
*NIX世界命令行使用技巧
主要是使用和写脚本的经验,带例子。
-
Grep可以用
--include="*.md"
指定搜索的文件类型,比如grep Chris -r . --include="*.md"
,在当前目录递归的检索*.md
文件中的“Chris”。 -
7-Zip的
-r
会递归的在目录里搜索指定的路径,而不是我们期望的在指定目录中递归,所以不要用。详解。 -
多进程使用下载工具wget的方法:
cat /tmp/url.txt | xargs -n 1 -P 8 wget -c;
,url.txt
里一行一个地址,-P 8
表示最多同时运行8个进程,相比加&
后台运行的方法可以指定进程数。更好的方法是用parallel
,例子见下面。 -
*NIX世界的cut命令很好用,有时候比正则好用,而且可以写一些比较“dirty”的代码。
-
Bash中如果要实现某条指令成功后再并行运行几条命令,可以这样写:
echo && { sleep 12 & sleep 12 & }; wait; echo && { sleep 12 & sleep 12 &};
。 -
grep -o
可以只显示匹配的部分。 -
将URL保存到文件后用wget的
-i
参数批量下载,比如wget -i ./list.txt
。 -
Linux里有一个
/usr/bin/timeout
命令可以让程序超时退出,用法是/usr/bin/timeout 1m ts
,就是执行1分钟后就kill掉,在写cron命令时很方便。如果没有这个命令,对于Debian系列的系统可以安装名为timeout
的包。来源。 -
用
date +%j
可以告诉你今天是一年中的第多少天,对于算天数非常有用。date的手册。 -
写Bash脚本的好参考:
- progrium/bashstyle
- Ten Things I Wish I’d Known About bash
- Ten More Things I Wish I’d Known About bash
- Linux Commands Cheat Sheet
- A-Z Index of Bash and utilities
- Pronunciation guide for UNIX
-
Bash里我觉得最有用也最不容易记住的是变量替换。
-
上面的第二个链接告诉我们单引号
''
不会做替换,而双引号""
会替换。我们一般写sed
和awk
命令都用单引号,就是不希望我们的代码被替换,可有时候我恰恰需要替换,这时候换用双引号就好了,请看示例代码
1 | Etdl=$(grep "FINAL SINGLE POINT ENERGY" /data/qm/B97-3c/a.out | tail -n1 | awk '{print $(NF)}') |
演示了如何把内容附加到每行后面。
-
从第三行输出文件内容可以用awk实现:
awk 'NR>=3' "aaa.xyz"
。 -
GNU Parallel并行执行命令很方便,一些实例
1 | parallel echo {} + 1 is {= '$_++' =} ::: {1..10} |
注意,parallel会把你的输入放到命令行里,所以上面的命令如果不加-N0
会睡很长时间。另外parallel在Android的termux环境中需设置环境变量PARALLEL_SHELL
。
- Linux的字符终端(TTY)可以旋转,方法是
1 | echo 1 | sudo tee /sys/class/graphics/fbcon/rotate_all |
注意下面这种写法不行。
1 | sudo echo 1 > /sys/class/graphics/fbcon/rotate_all |
-
Bash里
<()
的含义是:括号内的代码的输出被重定向到一个文件/dev/fd/63
。执行cat <(ls)
就得到了ls
的输出,执行echo <(ls)
得到了文件名。这个/dev/fd/63
是一个命名管道(named pipe),一切皆文件嘛,就当一个文件使。参考。 -
对于v1.06以上版本的GNU bc,设置
BC_LINE_LENGTH
可以控制自动断行的特性,例子
1 | BC_LINE_LENGTH=0 bc -l <<< "scale = 100; a(1) * 4" |
- 上一条技巧里的
<<<
是“Here Strings”,Bash等shell才有,sh里没有,bc -l <<< "scale = 100; a(1) * 4"
等价于echo "scale = 100; a(1) * 4" | bc -l
,但前者速度快很多。参考。测速代码
1 | time for i in {1..10000}; do echo "" | : ; done # 84s |
-
echo
不读sdtio,所以echo <<< $'Hello\nWorld'
没输出,这时候应该用cat <<< $'Hello\nWorld'
。 -
除了
nohup
,setsid
也可以在不受登出影响在后台运行程序。参考。 -
批量后缀名修改:
find . -name "*.txt" -exec rename .txt .md {} \;
,把所有的*.txt
替换为*.md
,包括子目录的文件。注意这里用到了rename
命令,来自util-linux
包。 -
批量添加后缀:
find . -type f -exec bash -c 'mv $0 $0.txt' {} \;
。批量删除后缀:find . -type f -exec bash -c 'mv $0 ${0%.*}' {} \;
。来源。 -
sort
命令其实非常强大,比如对一个「表格」进行排序:
1 | $ cat a.txt |
这里是根据第二列的值对行进行排序。我以前只知道sort
可以行排序,现在会根据指定的列排序,用Excel的理由又少了一个。
- 接上面一条,Coreutils里的join可以连接表格,比如
1 | $ cat a.txt |
上面的代码还演示了如何在排序的时候保留第一行。更多的解释请看join的手册。
- 可以用awk进行「转置」,把列变成行,方法是设置
ORS
,控制的是输出的间隔符,设为空格就把列连接起来了。比如用上面的数据,对第一列进行转置,借助Emacs的M-|
,代码是:
1 | awk 'BEGIN{ORS=" "} {print $1}' |
- 比如我有一列姓名,我想知道每个人出现的次数,怎么办呢?实例输入文件如下:
1 | 李四 |
可以借助sort和uniq再加上awk很方便的进行处理:`sort | uniq -c | sort -k1 | awk ‘{print $2 “\t” $1}’,结果如下:
1 | 王二 1 |
- 如何只复制指定的文件并且保留文件夹结构:
1 | rsync -rv E5internet:/tmp/screening/ /tmp/ --include="*/" --include="a.xyz" --exclude="*" |
-
似乎
rsync
比scp
快。注意是rsync
而不是sync
。rsync
显示速度可以加--info=progress2
。 -
保留一些文件,删除其他所有文件:
find . -type f -not -name 'a.xyz' -delete
。 -
批量生成MD5校验的方法:
find /data/ -type f -exec md5sum {} \; > /tmp/list.txt
。来源。 -
找大文件并且显示文件大小:
find . -size +100M -exec du -h {} \; | sort -k1hr
。 -
awk '/^>./ {printf("\n%s\n", $1)} ! /^>./ {printf("%s", $1)}' unigene.fasta > unigene.fasta.nonewline
。 -
对目录按大小排序:
du -h -d 1 | sort -k1hr
。 -
Arch Linux滚动更新后,强制装载新的USB驱动,不拔优盘直接起效。当然最简单的方法是重启。来源。
1 | sudo modprobe -r usb-storage |
-
成对替换可以用Coreutils里的
tr
,比如tr 'abcd' 'jkmn'
,缺点是不支持UTF-8,遇到中文就完蛋。这个需求可以用sed
实现,比如sed 'y/“”/「」/'
。来源。 -
显示文件某一行:
sed -n 233p a.txt
,注意要加p
。如果要批量可以结合GNU Parallel,比如
1 | parallel 'sed -n {}p a.txt' ::: 2 3 4 |
-
创建指定格式的目录:
echo {37..38}- | xargs mkdir -p
。 -
原来
sed -i
才能直接编辑文件,不加这个是输出替换后的文件。
自由/开源软件使用经验
-
对于大规模的搜索,简单的把
grep
命令换成ag
(当然前提是安装了这个软件),可以大幅加速搜索速度。还有一个最新的软件ripgrep,据称比ag (The Silver Searcher)更快。 -
Fontconfig的配置文件推荐放在
~/.config/fontconfig/fonts.conf
里,放在别处是废弃的用法,可能导致出错。 -
Cron脚本不执行的一个可能的原因:Cron脚本不能包含后缀名,如果你不确定写的对不对,可以用
run-parts --test /etc/cron.monthly/
测试一下。askubuntu上的解答。 -
Markdown中,用
#.
代表编号只在pandoc中支持,不要期望它在其他地方获得支持,对于非pandoc的情况用传统的1.
是正道。 -
MPV如果要批量播放视频,可以在视频所在目录里运行
mpv *
。 -
可以用ffmpeg合并视频,一个例子是:
1 | ffmpeg -i "Cloud.Atlas.2012.RUS.Blu-Ray.1080p.AC3.x264.mkv" -i "Cloud.Atlas.2012.English.Audio.AC3.DD5.1.448K.Angrybirdy@CHD.ac3" -c copy -map 0:0 -map 1:0 out.mkv |
- ffmpeg合并字幕并且设为默认
1 | ffmpeg -i in.mp4 -i in.srt -c copy -disposition:s:0 default out.mkv |
来源。
- 正确的用ffmpeg截取视频的方法:
1 | ffmpeg.exe -ss 1:8:57 -i "阿凡达 Avatar Extended Collector's Edition 2009 BluRay 1080p DTS x264-CnSCG.mkv" -t 12 -c copy a.mkv |
注意,这里必须写时间长度,用-t
。
-
转换
MKV
到MP4
有好多坑,一个是字幕需要提取后嵌入,一个是音频编码搞不好浏览器不支持,再一个是时间轴不一致,还可能有字体问题。一个成功的示例代码:ffmpeg.exe -ss 1:8:57.640 -copyts -i "a.mkv" -t 11 -c:a libmp3lame -ss 1:8:57.640 -vf subtitles=a.srt:force_style='Fontname=微软雅黑' wrong.mp4
。 -
.ts
视频可以直接用cat
合并。更多关于合并视频的知识。 -
用ffmpeg给视频加简单的淡入、淡出和字幕特效:
1 | ffmpeg -i a.mp4 -vf "fade=t=in:st=0:d=2, \ |
把文字放在单独的文件a.txt
里防止编码错误。另外,我发现用服务器编码并不会快多少。
- 抓取
m3u8
形式的在线视频:
1 | ffmpeg -allowed_extensions "ALL" -protocol_whitelist file,http,https,tcp,tls,crypto -user_agent "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/601.7.8 (KHTML, like Gecko) Version/9.1.3 Safari/537.86.7" -i http://185.38.12.60/sec/1503173737/363333397f6b65370bfc740ca4dea8c3f8dd2a93419f7748/ivs/12/b1/2ec5e15ba2a6/hls/tracks-4,5/index.m3u8 -c copy pd.mkv |
比较新的ffmpeg有奇奇怪怪的bug,需要加参数,可以用wget
下载下来后,本地操作:
1 | ffmpeg -allowed_extensions "ALL" -protocol_whitelist file,http,https,tcp,tls,crypto -i a.m3u8 -c copy a.mkv |
需要注意加密视频要提供key,比如ts.key
来源。
- 把图片转成视频:
1 | ffmpeg -framerate 12 -i "a_%03d.bmp" -vcodec libx264 -crf 1 -preset slow -vframes 1000 -pix_fmt yuv420p a.mp4 |
-
用mpv播放网络音频容易断,加上
--stream-lavf-o=reconnect_streamed=1
参数可以自动重新连接。播放网络音频默认的超时值是1分钟。出处。 -
Shadowsocks的“ss-stunnel”是用来进行转发的,数据走的是Shadowsocks的协议,用法类似
ss-tunnel.exe -u -c "C:/msys64/etc/shadowsocks/config.json" -L "8.8.8.8:53" -l 53
,实现在本地的53端口起一个DNS服务器,而DNS的解析被转发到谷歌的DNS。 -
用Shadowsocks时,如果想把代理分享给局域网的其他电脑,可以在配置文件中加入
"local_address":"0.0.0.0"
,这样代理的本地端口就暴露给局域网的其他电脑了。注意这里可能会弹出防火墙的窗口。 -
开启MPV硬件加速的方法:在配置文件里写入
hwdec=auto
。对于Windows,配置文件是%appdata%/mpv/mpv.conf
。 -
GNU Octave的每夜版(nightly)可以从https://buildbot.octave.space/#/download获取。
-
Pandoc的
reference-docx
和reference-odt
参数统一到reference-doc
参数上了。 -
Linux平台下,54.x版本以上的Firefox必须安装PulseAudio才能听到声音,命令是
sudo pacman -S pulseaudio pulseaudio-alsa
。 -
MacType的最新版(v1.2017.628.0)中,如果使用了DirectWrite支持(即
DirectWrite=1
),那么,[DirectWrite]
中最好RenderingMode=6
,否则用DirectWrite的软件,比如Word 2013,效果会非常差。 -
好奇的你可以用
objdump -d emacs
来反汇编某个程序看里面的秘密,如果你喜欢Intel的汇编语法,可以用objdump -M intel -d emacs
。 -
用GCC的时候在
CFLAGS
加上-ftree-vectorize
自动向量化代码。想知道哪些代码被自动优化了?再加上-fopt-info
优化的指示就会输出到stderr,用2> /tmp/err.log
把它们输出到文件仔细研究吧。 -
curl是比较容易使用Socks5代理的,用
--socks5-hostname
参数就可以,示例
1 | curl https://chriszheng.science/index.html --socks5-hostname localhost:65500 -O |
-
用代理
git clone
的方法:ALL_PROXY=socks5://127.0.0.1:65500 git clone https://github.com/neomutt/neomutt
。 -
UnZip可以解压百度网盘批量下载的zip压缩包,7-zip不行,WinRAR的修复功能也可以让压缩包正常解压。
-
AndroidScreencast可以在电脑上操作安卓手机,而且不需要手机上装软件,原理是用ADB。当然,非常不好用,延迟达到秒级,玩玩就好。
-
接上条,CXTouch速度更快,需要在手机上安装软件。
-
更快的是scrcpy。
-
如果Node的包管理出现问题,可以用激进的方法删除
node_modules
重新安装。对于*nix系统rm -rf node_modules
就可以,在Windows下可能会删除不掉,可以安装在Windows下实现“rm -rf”的包rimraf:npm install rimraf -g
,然后rimraf node_modules
。注意,这个包的功能是rm -rf
哦。 -
Hexo的包hexo-filter-cleanup在调试模式不会生效。我一直疑惑为什么调试模式生成的快,原来是因为调试模式不会优化,所以快了很多。
-
编辑
/etc/fstab
的时候一定要慎重,因为启动的时候系统会默认挂这些分区,如果找不到,启动失败。 -
播放器mpv如果不想要看输出可以加参数
--no-terminal
。 -
用Emacs的Tramp连接到运行BusyBox的路由器时会遇到连不上的问题,在路由器上安装
coreutils-stty
就好啦。原因是因为精简的BusyBox很可能不带stty
命令,而Tramp又依赖它,所以反复出错。 -
衍生自Firefox的浏览器K-Meleon会连接到官网自动更新,如果官网挂了,比如像今天这样,软件就会崩溃。禁用自动更新就好了,禁用方法是
偏好设置→K-Meleon插件
中禁用检查更新
。 -
最近用上了tmux,有种相见恨晚的感觉,以下两条配置很好用,可以放到
~/.tmux.conf
1 | set -g mouse on |
-
Windows下使用Firefox还是必须得用Flash,而第三方修改过的Flash比原始版的好。火狐吧的文科一直维护去沙箱版Flash,下载地址
https://pan.baidu.com/s/1boVSQXx#list/path=%2F
另外一位朋友维护的
https://bbs.kafan.cn/thread-1839722-1-1.html -
开源看图软件nomacs还挺好用。
-
Termux也可以用
termux-change-repo
换源。 -
让Termux不震动的方法是改配置,方法见配置文件的手册。
-
在Windows环境下使用mutt看HTML邮件:
1 | # ~/.mutt/muttrc |
- ImageMagick可以重设图片的DPI,方法是
1 | convert -units PixelsPerInch 输入图片.png -density 600 -trim 输出图片名.png |
顺带演示了-trim
去白边。
-
Git可以用
.git/info/exclude
代替.gitignore
来忽略本地文件,这种方法不必提交到远程。来源。 -
下载用于win64平台的最新版Firefox:
https://download.mozilla.org/?product=firefox-latest&os=win64&lang=zh-CN -
如果VirtualBox的VDI文件是动态大小,占用空间变大了,可以在虚拟机的系统里用SDelete命令清理自由空间:
sdelete.exe c: -z
,然后用VBoxManage的vboxmanage modifymedium --compact thedisk.vdi
来压缩。来源。 -
统计汉字的字数
wc -m *.md
。 -
Linux的
sensors
命令可以输出传感器探测到的温度,如何把温度信息和相应的硬件匹配呢?ls -l /sys/dev/block/*
。来源。 -
用neomutt可以设置编辑器,比如把
set editor = 'emacsclient -a ""'
写到配置文件里。注意,不要加上-n
,因为那样会立即退出,neomutt会认为你没有写内容而放弃寄信。 -
MSYS2更新
msys2-runtime
包的时候会提示关闭其他的MSYS2程序(terminate other MSYS2 programs before proceeding),一定要照做,否则会出错。错误的原因是,Windows支持延迟写入,到的动态链接库(DLL文件)如果在使用,新的文件不会覆盖老的,再运行新程序,用的还是老的DLL,新程序加老动态链接库很可能会出错。 -
如何快速知道Linux系统的关机开机情况:
last -x | grep shutdown | less
。来源。 -
可以访问http://localhost:631来在线管理CUPS系统。
-
BUILDDIR=/tmp/makepkg makepkg
. 来源。 -
Github超过100M的大文件上传,用到了LFS。
-
转换
MKV
到MP4
有两个坑,一个是字幕需要提取后嵌入,再一个是音频编码搞不好浏览器不支持。一个成功的示例代码:ffmpeg.exe -ss 0:53:53.777 -i "加勒比海盗(国英双语) Pirates.of.the.Caribbean.The.Curse.of.the.Black.Pearl.2003.BluRay.720p.x264.AC3.mkv" -t 8 -c:a libmp3lame -vf subtitles="subs.srt" give.mp4
。 -
快速重启Firefox,
Ctrl + Shift + J
打开父进程浏览器控制台,Ctrl + Alt + R
。来源。
科学相关软件技巧
-
用ORCA计算金属配合物遇到SCF不收敛的情况,可以使用
! SlowConv
,如果不行可以试试! KDIIS
。更多信息。 -
Octave里在向量最后增加一个元素的写法是
a(end + 1) = 5;
,删除最后一个元素的写法是a(end) = [];
。手册里的解释。 -
求AutoDock Vina输出结果的平均值,:
1 | (for f in *.log; do echo -n "${f}: "; awk '/^[ ]+[1-9]+/ {n++;sum+=$2} END {print n?sum/n:0}' ${f}; done) > /tmp/a.log |
-
When Octave fail to plot a figure, run the magical
close all
. I struggled with this issue for a long time.
如果Octave的画图功能不能正常工作,运行神奇的close all
。这个问题困扰我很久了,只有在Emacs里用Octave才会遇到。这条经验也分享到help-octave邮件列表了。 -
从兼容性方面考虑,Octave导出SVG格式的图片是比较好的选择,缺点是不太好编辑了。话说回来,PostScript也不是为了编辑而产生了。
-
用
mpif90
编译的时候会报Illegal preprocessor directive
,因为默认不进行预处理,FCFLAGS = -cpp
可以解决。 -
Jmol/JSmol获取高质量截图:
write IMAGE 1920 1920 PNGT n "6.png"
。 -
Octave里要用LaTeX语法必须用单引号,
xlabel('{\it d}(C–Cl) in Å')
。来源:手册里有,我觉得这句话应该强调。
商业软件技巧
-
在MS Word中,
=rand(8, 10)
可以生成随机的文字,=lorem(8, 10)
生成的是Lorem ipsum。详解。 -
MS Word里用
Ctrl + *
(实际是Ctrl + Shift + 8
)可以显示额外的格式符号,比如空格用·
表示,对于一些编辑工作可能有用。(Emacs里等价的功能是M-x whitespace-mode
)。 -
永久性的将Word的宏转为文字:
Ctrl+Shift+F9
。出处。 -
Acrobat XI的11.0.1以上版才能和Word 2013兼容,直接安装的11.0.0是不行的,必须先升级。各版本的兼容情况。
-
要想在Windows下使用UTF-8的,要么用Emacs等软件,通过管道传递,要么就在命令提示符里用chcp改代码页(
chcp 65001
),直接用使用命令,包括API调用,肯定会失败。在MS-Windows平台下使用UTF-8编码。 -
Word的选项里面,显示-打印选项里面,有“打印文档属性”一项,如果选上了,打印的时候会多一页,一定不要选。这个毛病非常难以排查,设置的位置又非常隐秘。
-
Excel怎么固定多个行和多个列呢?选中你要固定的行和列的「下一个」单元格,比如你想固定2行和1列,那么你应该选B3,然后视图-冻结窗口,就好了。如果我一直看百度出来的教程我是不会知道这个技巧的。
-
Excel里统计非空的列和行
=COUNTA()
。 -
Word里不能插入特别大的图片。
-
小米的解锁工具带一个ADB驱动。官方提供的驱动签名都过期了。小米药丸。
-
Acrobat XI的PDFMaker插件在Word里不能加载,修复重装等方法是不行的,需要修改注册表
HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins\PDFMaker.OfficeAddin
的LoadBehavior
,改成3,就好了。官方的解决方案。 -
如果还是不好使,继续修改
HKEY_CURRENT_USER\Software\Microsoft\Office\Word\Addins\PDFMaker.OfficeAddin
的LoadBehavior
为3。 -
Q: 刚装上的EndNote X9在Word 2016里不能用,提示「无效字符串」,怎么破?
A: 运行安装目录下的Configure EndNote.exe
。 -
Word把全角引号替换为半角引号怎么操作?用查找替换。查找
((?*))
替换为(\1)
,记得选使用通配符。 -
Word的文档模板
Normal.dotm
位于%appdata%/Microsoft\Templates
文件夹。 -
思源宋体/黑体 + 数字 + Word 2016里用Acrobat XI生成PDF = 乱码。
-
Windows丢失通知栏的蓝牙图标怎么办?
控制面板
→网络和共享中心
→更改适配器设置
→Bluetooth 网络连接
→ 右键属性
→BlueTooth
选项卡 →BlueTooth设置
→在通知区域显示BlueTooth图标
。或者看下面这个图。萎软药丸!
-
手机QQ关闭烦人的小世界:
手机QQ
→设置
→辅助功能
→ 最下面的底部导航栏显示功能
→ 选不显示
。 -
手机微信出现小程序不能用,无限正在加载、白屏。复制以下链接,在微信任意聊天窗口内发送下列内容,就可以了:
debugmm.qq.com/?forcex5=false
目的是关闭 X5 内核,使用谷歌 chrome 内核。出处。 -
我现在用的Windows 8.1,想要网络共享,直接连不上,必须双方互相
ping
一下才行。我已经从防火墙排查了,不行。 -
连接到Windows 7的远程桌面,运行程序,不能用OpenGL。解决方案是放弃远程桌面,改用NoMachine。出处。
-
如何从GNU/Linux系统远程重启/关机Windows服务器?用
smbclient
。
1 | sudo pacman -S smbclient |
-
GaussView如何重新编号原子?用
Tools -> Connection
,在这个界面打开的时候,用鼠标左键和中键给原子连续编号。 -
如何安装预览版的WSL?从
https://github.com/microsoft/WSL/releases
下载安装包,在PowerShell里
Add-AppxPackage .\Microsoft.WSL_1.2.2.0_x64_ARM64.msixbundle
。 -
EndNote如何设置插入文献的字体?看图说话。来源。
Edit & Manage Citation(s)
->Tools
->Configure Bibliography
->Layout
移动端相关
-
对于MIUI 8,开启开发者模式后,选择不使用锁屏界面,就不用看锁屏画报了。我之前写过。
-
下载用于Android的最新版Firefox:
https://download.mozilla.org/?product=fennec-latest&os=android&lang=multi -
红米手机用MTP模式传文件,文件显示不全?重启试试。
网络相关技巧
-
为了移动端友好没有必要在robots.txt中禁止抓取CSS等文件。详解。
-
同一个域名下混合使用HTTP和HTTPS会导致很多问题,不要这样。一个我的折腾实例。
-
批量复制URL的Firefox扩展Copy Link URL。
-
网站https://gtmetrix.com/可以对网页进行测速,方便优化网站。谷歌的PageSpeed Insights也是个好工具。
-
可以通过添加
rel
确认你是链接的所有者,添加的链接类似这样<a rel="me" href="https://mastodon.sdf.org/@chriszheng">Mastodon</a>
,这样在Mastodon的资料页里链接会变绿。 -
Firefox 60+版本移除了查看Cookie的功能,解决方案是用存储查看器,快捷键是
Shift+F9
。
软硬件折腾
-
除非有好的设备并且非常认真听,320 Kbps的音质已经足够好了。我的经验。
-
Wifi常见的协议按从旧到新的顺序是:
802.11b < 802.11g < 802.11n < 802.11ac < 802.11ax
,目前802.11ac
就是比较新协议了。后来字母越来越多,索性引入代的概念,802.11ac
起个名叫Wifi 5
,记法就是支持5 G,更新的是802.11ax
,下一代,就叫WiFi 6
。WiFi 6
的路由我已经用上了,终端还没用过,因为WiFi 6
的代表无线网卡AX200只支持Windows 10及以后的操作系统,老系统没驱动。 -
一些无线网卡,比如我用的比较坑的Intel的N 2230,会出现使用
802.11n
不稳定的情况,这种时候可以在网卡的设置里面禁用802.11n
协议,这样速度会慢一些(理论最大速度下载速度从37 M/s降低到6 M/s),稳定性会有很大的提升,而且大多数时候出口带宽没有那么高(也就是说你的下载速度根本就不会大于6 M/s),就算协议能支持也对你没有用。这条经验比较啰嗦,希望看的人能明白。 -
Intel Core架构的顺序是:Nehalem、Sandy Bridge、Ivy Bridge、Haswell、Broadwell、Skylake、Kaby Lake。出处。
-
今天解答了我4年前在笔记本上装双系统的一个疑惑:如果电脑是以Legacy模式引导的,那么Windows的安装程序只能安装到MBR分区上,而以UEFI模式时只能安装到GPT分区上,即
BIOS–MBR
以及UEFI–GPT
是绑定的,二选一。这是Windows的限制。出处。 -
从TP-Link WR841N v8路由器读取PPPoE密码,直接从Web界面读的是
Hello123World
,是不对的。需要用RouterPassView这个小软件从备份的配置文件(默认叫config.bin
)里读取。 -
比较老的TP-Link路由器,比如WR841N,登录管理系统只能用HTTP,比较新的Firefox会优先使用HTTPS,导致地址变成类似
https://192.168.1.1/
,无法登录管理系统。 -
运行LEDE的路由器彻底禁用DHCPv6,配置LAN的
IPv6 分配长度
,设为禁用。来源。
或者您可以把评论发在别处,添加指向本页的连接,然后把网址告诉我:
本文标题:我的一句话经验——软件篇
文章作者:Chris
发布时间:2017-01-02
最后更新:2024-09-09
原始链接:https://chriszheng.science/2017/01/02/One-sentence-tips-on-software/
版权声明:本博客所有文章除特别声明外,均采用 CC BY 4.0 许可协议。转载请注明出处!
分享