小技巧备忘

小技巧备忘

2020-01-13
| 杂事 | | 备忘 , 知乎 , 技巧 | Comment 评论

1 本地md+LaTex如何完美发布到知乎?

我已写成了脚本:forzhihu

答:知乎编辑器提供了md上传,还提供了https://www.zhihu.com/equation?tex=...接口,并且支持贴图自动上传。 因此完全支持本地Markdown+LaTex完美发布到知乎,具体步骤如下:

  • 用本地Markdown编辑器放心写作。【我使用Typora
  • 将本地图片换成网上图片,我个人的做法是先发布到gitbook,比如我的https://chaoskey.gitee.io/notes/。然后复制图片链接,替换原本地图片链接,图片数量一般不多,手工替换也不麻烦。
  • 将LaTex代码用https://www.zhihu.com/equation?tex=...替换。首先得有支持正则表达全文置换编辑器【我使用Visual Studio Code】,然后将 \$\$(\n*)\s*(.*?)(\n*)\s*\$\$ 替换成 $1<img src="https://www.zhihu.com/equation?tex=$2" alt="$2" class="ee_img tr_noresize" eeimg="1">$3。 当然前面这个正则表达式的形式要以实际为准。
  • 最后,保存文件,然后打开知乎编辑器,上传md文件,简单调整后,发布,完工。

2 Git如何永久删除文件(包括历史记录)

20200425追加

首先,可参考 github 的帮助:

https://help.github.com/articles/remove-sensitive-data

第一步:从你的资料库中清除文件

以Windows下为例(Linux类似), 打开项目的Git Bash,使用命令:

$ git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch <你要删除的文件的相对路径>' --prune-empty --tag-name-filter cat -- --all

$ git filter-branch --force --index-filter 'git rm --cached -r --ignore-unmatch <你要删除的文件夹的相对路径>' --prune-empty --tag-name-filter cat -- --all

## 相对路径可以用通配符
## 这里的文件或文件夹,都不能以 '/' 开头,否则文件或文件夹会被认为是从 git 的安装目录开始。

如果你看到类似下面这样的, 就说明删除成功了:

Rewrite 48dc599c80e20527ed902928085e7861e6b3cbe6 (266/266)
# Ref 'refs/heads/master' was rewritten

第二步: 推送我们修改后的repo

以强制覆盖的方式推送你的repo, 命令如下:

$ git push origin --force --all
$ git push origin --force --tags

第三步: 清理和回收空间

虽然上面我们已经删除了文件, 但是我们的repo里面仍然保留了这些objects, 等待垃圾回收(GC), 所以我们要用命令彻底清除它, 并收回空间.

$ rm -rf .git/refs/original/

$ git reflog expire --expire=now --all

$ git gc --prune=now


Counting objects: 2437, done.
# Delta compression using up to 4 threads.
# Compressing objects: 100% (1378/1378), done.
# Writing objects: 100% (2437/2437), done.
# Total 2437 (delta 1461), reused 1802 (delta 1048)


$ git gc --aggressive --prune=now


Counting objects: 2437, done.
# Delta compression using up to 4 threads.
# Compressing objects: 100% (2426/2426), done.
# Writing objects: 100% (2437/2437), done.
# Total 2437 (delta 1483), reused 0 (delta 0)

3 Git常用命令速查

0132.png


# https://help.github.com/en/github/using-git/configuring-git-to-handle-line-endings
# Linux下忽略换行符的差异
git config --global core.autocrlf input     【推荐,因为我使用git bash】
# Windows下忽略换行符的差异
git config --global core.autocrlf true

# 至于乱码,可在Git GUI中设置UTF-8即可解决。

# 注意: 上面的设置必须在拉取代码前或写代码前必须配置好

# Windows下隐藏文件
attrib +s +h  .git  

# Windows下显示文件
attrib -s -h  .git  



#####################################
#            本地仓库初始            #
#####################################

# clone默认分支(gitee)
git clone git@gitee.com:chaoskey/notes.git  notes 
# 为远程分支取别名
git remote rename origin gitee

# 支持多个多个远程仓库(并取别名)
git remote add github git@github.com:chaoskey/notes.git

# 一个别名all,包括多个远程
git remote add all git@gitee.com:chaoskey/notes.git
git remote set-url --add all git@github.com:chaoskey/notes.git
#########################################
#                日常操作                #
#########################################

# 查看本地分支
git branch -a 

# 拉取非默认分支
git fetch gitee gh-pages 

# 分支切换
git checkout gh-pages
git checkout master

# 文件提交
git add .
git commit -m "提交git常用命令备忘"
git push all master

# 完全放弃本地修改
git checkout . 
git clean -df

#########################################
#              文件修改记录              #
#########################################

# 查看单文件修改历史
git log --pretty=oneline  <filename>

# 查看尚未暂存的文件更新了哪些部分
git diff
git diff git.txt

# 查看已经暂存起来的文件和上次提交的版本之间的差异
git diff --cached
git diff --cached  git.txt

# 查看某两个版本之间的差异
git diff <id> <id>
git diff <id>:<filename> <id>:<filename>

# 显示具体的某次的改动的修改【进入行命令状态,:q 退出】
git show <id>
git log -p <filename>  

4 Ubunt常用备忘命名【只列我老忘的】

# 启动jupyter
nohup jupyter notebook > ./log/notebook.log 2>&1 &

# 查看后台程序
jobs
ps -ef | grep notebook

# 将后台转到前台
fg %1

# 杀进程
kill -9 %1

# 解压
tar -zxvf gr-latest-Ubuntu-x86_64.tar.gz 

5 VSC Netease Music 无法启动问题的解决

# 务必以管理员身份在PowerShell中执行

# 要翻墙
set http_proxy=http://127.0.0.1:9081
set https_proxy=http://127.0.0.1:9081

# 修复无法启动问题
# https://www.jianshu.com/p/463f8ece033a
Invoke-RestMethod https://gist.githubusercontent.com/nondanee/f157bbbccecfe29e48d87273cd02e213/raw | python

 # 关闭代理
set http_proxy=
set https_proxy=

6 adb常用命令

# 获取adb设备列表
adb devices
# 结束adb服务
adb kill-server 
# 启动adb服务
adb start-server

# 已安装应用
adb shell pm list packages

# 禁用应用
adb shell pm disable-user  com.miui.analytics
# 开启应用
adb shell pm enable  com.miui.analytics

# 卸载应用
adb shell pm uninstall --user 0  com.miui.analytics

# 查看特定包的详细信息
adb shell dumpsys package com.miui.greenguard
# 启动应用
adb shell am start -n  com.miui.greenguard/.ui.AppRestrictActivity

# 文件传输
adb push ./abc.apk  /sdcard/
adb pull /sdcard/abc.apk ./  

# 对特定机型,可能需要先root
adb root
adb remount

# 如果uninstall无法卸载,不妨尝试
adb shell pm path com.miui.touchassistant
adb shell rm  /system/app/TouchAssistant.apk


以后遇到小问题继续添加…