Skip to content

Commit 194ece8

Browse files
committed
update doc for self-install oldratlee#32
1 parent 7d3f4a5 commit 194ece8

File tree

1 file changed

+83
-75
lines changed

1 file changed

+83
-75
lines changed

README.md

Lines changed: 83 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -5,78 +5,17 @@ useful-shells
55

66
有自己用的好的脚本 或是 平时常用但没有写成脚本的功能,欢迎提供([提交Issue](https://github.com/oldratlee/useful-shells/issues))和分享([Fork后提交代码](https://github.com/oldratlee/useful-shells/fork))!
77

8-
下载使用
9-
========================
10-
11-
### 下载整个工程的脚本
12-
13-
#### 直接clone工程
14-
15-
使用简单、方便更新,不过要安装有`git`
8+
快速下载&使用
9+
----------------------
1610

1711
```bash
18-
git clone git://github.com/oldratlee/useful-shells.git
19-
20-
cd useful-shells
21-
22-
# 使用Release分支的内容
23-
git checkout release
24-
25-
# 更新脚本
26-
git pull
12+
source <(curl -fsSL https://raw.githubusercontent.com/oldratlee/useful-shells/master/test-cases/self-installer.sh)
2713
```
2814

29-
包含2个分支:
30-
31-
- `master`:开发分支
32-
- `release`:发布分支,功能稳定的脚本
33-
34-
当然如果你不想安装`git`,`github`是支持`svn`的:
35-
36-
```bash
37-
svn co https://github.com/oldratlee/useful-shells/branches/release
38-
39-
cd useful-shells
40-
41-
# 更新脚本
42-
svn up
43-
```
44-
45-
PS:
46-
47-
我的做法是把`useful-shells` checkout到`$HOME/bin/useful-shells`目录下,再把`$HOME/bin/useful-shells`配置到`PATH`变量上,这样方便我本地使用所有的脚本。
48-
49-
#### 打包下载
50-
51-
下载文件[release.zip](https://github.com/oldratlee/useful-shells/archive/release.zip)
52-
53-
```bash
54-
wget --no-check-certificate https://github.com/oldratlee/useful-shells/archive/release.zip
55-
56-
unzip release.zip
57-
```
58-
59-
### 下载和运行单个文件
60-
61-
[`show-busy-java-threads.sh`](https://raw.github.com/oldratlee/useful-shells/release/show-busy-java-threads.sh)为例。
62-
63-
#### `curl`文件直接用`bash`运行
64-
65-
```bash
66-
curl -sLk 'https://raw.github.com/oldratlee/useful-shells/release/show-busy-java-threads.sh' | bash
67-
```
68-
69-
#### 下载单个文件
70-
71-
```bash
72-
wget --no-check-certificate https://raw.github.com/oldratlee/useful-shells/release/show-busy-java-threads.sh
73-
chmod +x show-busy-java-threads.sh
74-
75-
./show-busy-java-threads.sh
76-
```
15+
更多下载&使用方式,参见[下载使用](#下载使用)一节。
7716

7817
show-busy-java-threads.sh
79-
==========================
18+
----------------------
8019

8120
在排查`Java``CPU`性能问题时(`top us`值过高),要找出`Java`进程中消耗`CPU`多的线程,并查看它的线程栈,从而找出导致性能问题的方法调用。
8221

@@ -142,7 +81,7 @@ The stack of busy(26.1%) thread(24018/0x5dd2) of java process(23269) of user(adm
14281
[silentforce](https://github.com/silentforce)改进此脚本,增加对环境变量`JAVA_HOME`的判断。
14382

14483
tcp-connection-state-counter.sh
145-
==========================
84+
----------------------
14685

14786
统计各个`TCP`连接状态的个数。
14887

@@ -168,7 +107,7 @@ SYN_SENT 17
168107
```
169108

170109
parseOpts.sh
171-
==========================
110+
----------------------
172111

173112
提供命令行选项解析函数`parseOpts`,支持选项的值有多个值(即数组)。
174113
\# 自己写一个命令行选项解析函数,是因为`bash``buildin`命令`getopts`和加强版本命令`getopt`都不支持数组的值。
@@ -218,7 +157,7 @@ parseOpts "a,a-long|b,b-long:|c,c-long+" -a -b bv -c c.sh -p pv -q qv arg1 \; aa
218157
```
219158

220159
cp-svn-url.sh
221-
==========================
160+
----------------------
222161

223162
拷贝当前`svn`目录对应的远程分支到系统的粘贴板,省去`CTRL+C`操作。
224163

@@ -245,7 +184,7 @@ http://www.foo.com/project1/branches/feature1 copied!
245184
[拷贝复制命令行输出放在系统剪贴板上](http://oldratlee.com/post/2012-12-23/command-output-to-clip),给出了不同系统可用命令。
246185

247186
swtrunk.sh
248-
==========================
187+
----------------------
249188

250189
`svn`工作目录从分支(`branches`)切换到主干(`trunk`)。
251190

@@ -282,7 +221,7 @@ svn work dir /path/to/svn/work/dir2 switch from http://www.foo.com/project2/bran
282221
```
283222

284223
svn-merge-stop-on-copy.sh
285-
==========================
224+
----------------------
286225

287226
把指定的远程分支从刚新建分支以来的修改合并到本地SVN目录或是另一个远程分支。
288227

@@ -307,7 +246,7 @@ svn-merge-stop-on-copy.sh http://www.foo.com/project1/branches/feature1 http://w
307246
[姜太公](https://github.com/jiangjizhong)提供此脚本。
308247

309248
find-in-jars.sh
310-
==========================
249+
----------------------
311250

312251
在当前目录下所有`Jar`文件里,查找文件名。
313252

@@ -335,7 +274,7 @@ $ ./find-in-jars 'Service.class$'
335274
[在多个Jar(Zip)文件查找Log4J配置文件的Shell命令行](http://oldratlee.com/458/tech/shell/find-file-in-jar-zip-files.html)
336275

337276
echo-args.sh
338-
==============================
277+
----------------------
339278

340279
在编写脚本时,常常要确认输入参数是否是期望的:参数个数,参数值(可能包含有人眼不容易发现的空格问题)。
341280

@@ -361,7 +300,7 @@ $ ./echo-args.sh 1 " 2 foo " "3 3"
361300
这样可以不改其它的程序,查看到输入参数的信息。
362301

363302
console-text-color-themes.sh
364-
==============================
303+
----------------------
365304

366305
显示`Terminator`的全部文字彩色组合的效果。
367306

@@ -391,7 +330,7 @@ colorEchoWithoutNewLine "4;33;40" "Hello world!" "Hello Hell!"
391330
- [utensil](https://github.com/utensil)[在Bash下输出彩色的文本](http://utensil.github.io/tech/2007/09/10/colorful-bash.html),这是篇很有信息量很钻研的文章!
392331

393332
xpl and xpf
394-
==============================
333+
----------------------
395334

396335
* `xpl`:在文件浏览器中打开指定的文件或文件夹。
397336
\# `xpl``explorer`的缩写。
@@ -425,3 +364,72 @@ xpf /path/to/dir1 /path/to/foo1.txt
425364
### 贡献者
426365

427366
[Linhua Tan](https://github.com/toolchainX)修复Linux的选定Bug。
367+
368+
下载使用
369+
----------------------
370+
371+
### 下载整个工程的脚本
372+
373+
#### 直接clone工程
374+
375+
使用简单、方便更新,不过要安装有`git`
376+
377+
```bash
378+
git clone git://github.com/oldratlee/useful-shells.git
379+
380+
cd useful-shells
381+
382+
# 使用Release分支的内容
383+
git checkout release
384+
385+
# 更新脚本
386+
git pull
387+
```
388+
389+
包含2个分支:
390+
391+
- `master`:开发分支
392+
- `release`:发布分支,功能稳定的脚本
393+
394+
当然如果你不想安装`git`,`github`是支持`svn`的:
395+
396+
```bash
397+
svn co https://github.com/oldratlee/useful-shells/branches/release
398+
399+
cd useful-shells
400+
401+
# 更新脚本
402+
svn up
403+
```
404+
405+
PS:
406+
我的做法是把`useful-shells` checkout到`$HOME/bin/useful-shells`目录下,再把`$HOME/bin/useful-shells`配置到`PATH`变量上,这样方便我本地使用所有的脚本。
407+
408+
#### 打包下载
409+
410+
下载文件[release.zip](https://github.com/oldratlee/useful-shells/archive/release.zip)
411+
412+
```bash
413+
wget --no-check-certificate https://github.com/oldratlee/useful-shells/archive/release.zip
414+
415+
unzip release.zip
416+
```
417+
418+
### 下载和运行单个文件
419+
420+
[`show-busy-java-threads.sh`](https://raw.github.com/oldratlee/useful-shells/release/show-busy-java-threads.sh)为例。
421+
422+
#### `curl`文件直接用`bash`运行
423+
424+
```bash
425+
curl -sLk 'https://raw.github.com/oldratlee/useful-shells/release/show-busy-java-threads.sh' | bash
426+
```
427+
428+
#### 下载单个文件
429+
430+
```bash
431+
wget --no-check-certificate https://raw.github.com/oldratlee/useful-shells/release/show-busy-java-threads.sh
432+
chmod +x show-busy-java-threads.sh
433+
434+
./show-busy-java-threads.sh
435+
```

0 commit comments

Comments
 (0)