Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 1 commit ahead, 125 commits behind oldratlee:master.
Latest commit 593e7c7 Aug 20, 2017

README.md

🐌 useful-scripts License

GitHub stars GitHub forks

把平时有用的手动操作做成脚本,这样可以便捷的使用。

有自己用的好的脚本 或是 平时常用但没有写成脚本的功能,欢迎提供(提交Issue)和分享(Fork后提交代码)! 💖

🔰 快速下载&使用

source <(curl -fsSL https://raw.githubusercontent.com/oldratlee/useful-scripts/master/test-cases/self-installer.sh)

更多下载&使用方式,参见下载使用

📚 使用文档

☕️ Java相关脚本

  1. show-busy-java-threads.sh
    用于快速排查JavaCPU性能问题(top us值过高),自动查出运行的Java进程中消耗CPU多的线程,并打印出其线程栈,从而确定导致性能问题的方法调用。
  2. show-duplicate-java-classes
    找出jar文件和class目录中的重复类。用于排查Java类冲突问题。
  3. find-in-jars.sh
    在目录下所有jar文件里,查找类或资源文件。

🐚 Shell相关脚本

Shell使用加强:

  1. c
    原样命令行输出,并拷贝标准输出到系统剪贴板,省去CTRL+CCTRL+V操作。
  2. colines
    彩色cat出文件行,方便人眼区分不同的行。
  3. a2l
    按行彩色输出参数,方便人眼查看。
  4. ap and rp
    批量转换文件路径为绝对路径/相对路径,会自动跟踪链接并规范化路径。
  5. xpl and xpf
    在命令行中快速完成 在文件浏览器中 打开/选中 指定的文件或文件夹的操作。
  6. tcp-connection-state-counter.sh
    统计各个TCP连接状态的个数。用于方便排查系统连接负荷问题。

Shell开发/测试加强:

  1. echo-args.sh
    输出脚本收到的参数,在控制台运行时,把参数值括起的括号显示成 红色,方便人眼查看。用于调试脚本参数输入。
  2. console-text-color-themes.sh
    显示Terminator的全部文字彩色组合的效果及其打印方式,用于开发Shell的彩色输出。
  3. parseOpts.sh
    提供命令行选项解析函数parseOpts。用于加强支持选项的值有多个值(即数组)。

⌚️ VCS相关脚本

你会发现这些脚本都是svn分支相关的操作。

个人在使用Git的过程中(7年+),并没有发现有对应脚本的需求(侧面反映出Git的优秀)。
原因:Git的概念模型一等公民支持分支,切换分支是件很简单且统一的事,而svn不得不涉及仓库的URL(不统一简单)。

我已经在自己的开发机上卸载了svn,没有需求场景也没理由再用了。 😛

使用更现代的Git吧! 💥

  1. swtrunk.sh
    自动svn工作目录从分支(branches)切换到主干(trunk)。
    PS: Git对应的是git checkout master,如果你使用了oh-my-zsh,已经有对应的别名加速了:gcm
  2. svn-merge-stop-on-copy.sh
    把指定的远程分支从刚新建分支以来的修改合并到本地svn目录或是另一个远程分支。
    PS:Git的合并很直接简单,git merge branch-foo,也更智能(没有树冲突一说)。
  3. cp-svn-url.sh
    拷贝当前svn目录对应的远程分支到系统的粘贴板,省去CTRL+C操作。
    PS:因为分支不需要URL来引用,这个脚本的需求也没有了,直接给个分支名就好了。