反编译一个或多个class文件。

摘要

javap [options] classfile…

阅读全文 »

  1. -e filename:如果 filename 存在,则为真。
  2. -d filename:如果 filename 为目录,则为真。
  3. -f filename:如果 filename 为常规文件,则为真。
  4. -L filename:如果 filename 为符号链接,则为真。
  5. -r filename:如果 filename 可读,则为真。
  6. -w filename:如果 filename 可写,则为真。
  7. -x filename:如果 filename 可执行,则为真。
  8. -s filename:如果文件长度不为 0,则为真。
  9. -h filename:如果文件是软链接,则为真。
  10. filename1 -nt filename2:如果 filename1 比 filename2 新,则为真。
  11. filename1 -ot filename2:如果 filename1 比 filename2 旧,则为真。

Bash Shell可以进行变量的条件替换,条件放在{}中,只有条件发生时才进行替换:

  • ${v1:-$v2}

当变量v1未定义或者值为空时,返回v2的值,否则返回v1的值。

阅读全文 »

我们已经知道在Shell中$0表示Shell脚本的文件名,但在有脚本调用的情形中,子脚本中的$0会是什么值呢?我们通过下面的实例来看。

已测试系统列表:

  • Mac OS X EI Capitan 10.11.6
  • Ubuntu 16.04 LTS (GNU/Linux 4.4.0-28-generic x86_64)
阅读全文 »

在MacOS上使用DMG文件安装了Jdk8 之后,在默认路径下找不到JDK的HOME路径:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$ which java
/usr/bin/java
$ ls -l /usr/bin/java
lrwxr-xr-x 1 root wheel 74 12 6 2015 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
$ ls -l /System/Library/Frameworks/JavaVM.framework/Versions
total 8
drwxr-xr-x 10 root wheel 340 5 9 20:45 A
lrwxr-xr-x 1 root wheel 1 12 6 2015 Current -> A
$ ls -l /System/Library/Frameworks/JavaVM.framework/Versions/A/
total 80
drwxr-xr-x 47 root wheel 1598 10 18 2015 Commands
drwxr-xr-x 4 root wheel 136 10 18 2015 Frameworks
drwxr-xr-x 14 root wheel 476 8 2 2015 Headers
drwxr-xr-x 3 root wheel 102 8 23 2015 JavaPluginCocoa.bundle
-rwxr-xr-x 1 root wheel 109488 10 18 2015 JavaVM
drwxr-xr-x 3 root wheel 102 8 2 2015 Modules
drwxr-xr-x 45 root wheel 1530 10 18 2015 Resources
drwxr-xr-x 3 root wheel 102 8 23 2015 _CodeSignature

在MacOS下可以使用/usr/libexec/java_home命令来定位JAVA_HOME

阅读全文 »

在Linux系统上使用以下命令编译安装Lua:

1
2
3
4
curl -R -O http://www.lua.org/ftp/lua-5.3.3.tar.gz
tar zxf lua-5.3.3.tar.gz
cd lua-5.3.3
make linux test

安装make

阅读全文 »
0%