该用户从未签到
|
1) Linux / Unix 命令格式, _4 G! e9 w7 r7 D5 e3 {5 `# B
command [-选项...] [参数...]2 E- [3 H7 N& A2 N/ D e
如: ls -a ~2 s8 Q( p( j" k
mkdir .demo //创建隐藏目录
* I% M! ? J" @* d& M' m$ N* j ls
9 g) \1 \& p) r3 W5 q* D ls -a% Z5 A8 y4 g; Z4 Z. _
o& N" [7 W2 R, Q' ~+ G
2)标准输出: 就是在控制台(终端, 命令行)的默认输出) v! [3 O3 f) O. Y' h0 Q6 q
ls pwd cat 等命令的默认输出都是标准输出
( X' R' V$ E$ L4 s3 K ">" 输出重定向, 可以将标准输出重新定向到一个文件上.; |. b5 Y0 \ _5 j* F
如: ls > abc.txt //将 ls 默认的标准输出结果定向到abc.txt( S" C) t& n u: P! Q
cat abc.txt //查看abc.txt文件内容. b0 X) v& {. ]7 T
7 j. d# [( s) \& z4 Y$ o _& P
3) "|" 是管道符号, 可以连接两个命令, 将前一个命令& D6 o5 }4 W1 Z/ w
的输出作为后一个命令的输入
: W' \3 n: g( G* \7 l# p0 Z5 \ 0 B, r( _ U8 z# H8 Q4 U% F
4) grep 是过滤输入信息 留下指定的行
5 g9 R8 j8 G( w$ q! }" A, l, h$ j/ h O' e; {- U6 |
2. 目录 与文件操作5 R0 d: |, `+ s# `1 S7 I
1)cd 改变当前工作目录 I" Y& h2 W: \' x# U) [0 Y
默认的cd 相当于 cd ~ : 返回"主目录"4 v* _! N( z. G7 k$ q8 R9 U) C
. 表示当前目录# X% V, a# `6 M! \
.. 表示上级目录(父目录)
`6 h: f" ?/ i' a ~ 代表"主目录" Q8 ?* }9 y0 R: k# L8 n
以"/" 开始的目录路径表示: 绝对路径, 反之: 相对路径1 l: k4 q* Y3 ~8 O$ H, h
相对路径: 是相对于当前目录. ".", ".." 都是相对路径
% h, b# x! q9 a$ s 以"." 为开头的文件/目录是隐藏的
4 [3 d( ^, |/ O5 w 2) ls 列目录命令
- g+ v8 K, ?/ i 如:/ d1 c0 M- K% F% j) x# d( c
ls /3 i5 S; d- i+ ^! v Q3 X Q0 j
ls /etc* h' W0 n* z: U, h
ls /opt( s# {$ C, V( p% j. o
ls ~
% ] x! T# k' n4 f* _' \# E7 v ls workspace
2 K0 e5 q% A7 k! R1 Z, o8 Y ls -a ~ 显示全部的内容(包括隐藏文件和目录)( ]! f4 W" h# L; P1 d" Q
* `( r( v& Y( L# A5 [' [" U
, O/ I' d5 ]" x6 R 3) 创建目录 2 K5 {# u3 @! {8 q% ~& m, t
mkdir .photo 创建隐藏文件夹 ".photo"( y* U9 {3 o, F& ? O! H
4) mv 移动/改名文件夹/文件" W5 g5 d1 X8 Z2 T! |, t" I- W
mv .photo photo //改名
# e. \9 a9 {4 O) S mkdir mm- I8 u# i3 o' `
mv mm photo //移动
4 c8 `7 h. f, T( \ ]- I ls photo( x: `" h9 u. B+ k) |) _1 b
mv passwd passwd.bak5 j# e6 X' Q3 F: H# s' Z
1 S) z2 M( d% E, q% \3 ~9 e% q! \
5) rm 删除文件/目录
1 {4 G& }% c7 e1 ] 删除文件: rm file1 file2 file3 ...7 K' K8 s3 @- u
删除目录: rm -rf dir1 dir2 ...- S+ r2 Z) [% ]
选项: -r 递归删除所有子目录和文件
9 a1 h. H* H2 [6 F5 T* A -f 强制删除, 不进行任何的交互确认(linux 默认 -f)
8 o: Q$ D% b$ ]) n7 P/ k' s: W" e9 t0 o, r7 X
6) cp 复制文件/目录, 注意第二个参数
7 M# T9 ?) M9 X1 w2 Q! m8 M 复制文件 cp /etc/passwd ~, _( t! ~/ k l9 L9 i
赋值文件夹 cp -r workspace workspace.bak2 t a1 d( `# U) B+ C6 \& W# o
mkdir demo
7 e. Q! f' I; l: k+ a- o cp -r workspace demo
, `/ U. r, }) L+ F9 G1 {4 R# e
" B. h. L* v) L) u | 选项-r 表示递归赋值所有的子目录和文件内容2 f* ^! L6 m0 g$ Q/ J0 |9 Z
# K8 L! \" N0 x, y 7) 文件的授权
/ P5 i4 }4 i. [7 M7 b/ f ls -al 查看长格式结果
( D# [2 K8 c+ k- b. Z9 A d rwx rwx rwx liucs liucs com' G8 j/ U" S' y: }1 k( t
-rwxrwx--- liucs liucs Hi.java
+ v+ C6 ?* `6 p. L) A% L
% @# S% t: @, r+ q chmod 660 test.txt; i: u( b# d: W: a+ B7 v5 P& z! W% d& J
rw- rw- ---
4 H: K& P" ?( k0 Y rwx
1 {8 U, J! @' K* I/ ?5 z5 _ 421 421
$ h+ ^% x6 Y/ X; @* Y$ s) H( Y1 O 000 0 ---
5 u8 i8 S+ e2 j5 q& U 001 1 --x) u4 u2 p9 k; Z" m' _/ ?
010 2 -w-) h( S9 o `+ k' \" ^
011 3 -wx p0 n2 a# C: O4 a4 ~
100 4 r-- J+ z! |8 l+ `5 [+ _
101 5 r-x. C' g0 w' y: i" c7 G2 w
110 6 rw-
2 E: G8 z$ U% w% I7 g5 c5 H/ v! G 111 7 rwx' |+ [3 R' g8 t0 Z5 ~! o- a
6 G' U8 M# Y! v! m2 [% M; m, Z0 I3 p" m
8) windows 命令6 o" E# G7 f* h
dir == ls/ L2 L. L* a% Q# Z6 U/ G: t
mkdir == mkdir. B+ Z+ ^7 ]3 |/ }1 I% b
cd == cd8 c6 c6 S# d4 a# ?2 o
del == rm! a) s7 c$ T4 n. o$ Y
cls = clear
6 d2 T/ U/ \( d3 k' s" R more = more
$ k2 A X# u7 V! f% ^ type == cat9 B1 m/ H. l: \# {' [: l1 `3 V
move = mv
/ [1 G/ W; Z# O% {$ }+ A copy, xcopy = cp
+ X* y b2 C9 H* w8 D4 ?* `
, N3 G; {. h2 V6 \; }" g/ i help == man7 H5 ]) \2 F- w9 o* p3 D+ h+ Y
! ~" d; Y) W3 \. p/ ]5 ?& I, n4 {; }! a) e/ [
3 文件的创建 与 修改! |% j4 T2 e$ D$ R; m% }
1) echo 回显命令
, X4 Z( B4 d' G1 ~% {3 Y" g4 O echo abc 将abc回显到控制台 m" c; n7 F% X1 s
2) ">" 输出重定向, 将命令的"标准输出" 结果重新定向到
+ K8 Y; x, V+ R& {9 \1 X5 D3 _ 新的目标.) \& j& X6 [* W& s
">>" 表示追加输出 7 q) V) E* w, a# G0 _! S
ls />rootlist.txt
/ \6 F7 d3 L* E" t/ D2 v& ?" F1 \ echo abc>test.txt
4 c s5 \0 n# W+ n2 l echo abc>>test.txt
Z3 }& C- y, ~3 F1 d- T) m) {$ q 3) cat 查看文件内容4 J4 H& E, }# d1 i8 [& {
4) touch 创建新空白文件, 修改文件访问时间
7 k4 l8 }" ?2 N# A3 |* ~2 a, P; i F! f3 D' n* t; m
4 创建和修改文本文件 vi T/ L1 b6 s; G# }& {' y6 R/ y
1 打开 vi [filename] -> 命令状态% d" Y$ i2 U8 S
命令状态: 任何键盘输入都是命令8 Z8 }* ?8 R$ W* G y
命令状态: [esc] 总是回到命令状态
! _5 H8 ]* S6 ? L6 R 编辑状态: 对文本进行编辑, 任何的输入都是编辑内容) @3 P. s1 r8 ?4 \6 o* W# g
vi [filename] -> i o a ->
# a& h, l: ]# x& K6 R 命令行 命令状态 编辑状态6 Z( Z" |( a$ d0 j5 [( [4 \ W1 A
<- :q 退出命令 <- [esc] C2 K9 D9 M. c z D0 \$ F
<- :q!强制退出命令
8 M2 K ~+ p+ H& }' j <- :wq保存退出命令
& n) N' x0 i+ ]! B4 f; a :w保存; o% g" E% Q$ [- b. s
:w [filename]
1 V; i5 n6 C1 L' ~, Y% ~0 D3 e$ m :w! [filename]+ B- {7 C' J, y
/ ? n 查找4 N$ z' {/ ?, ~( _9 J, U, X
& L! B; {7 ^2 K! A7 e/ a4 {5 打包备份与恢复(相当于winrar)
) Q% ]. r; j( r& {* S- N( q3 H 1) tar打包:
& \3 S: K" M1 D+ y tar -cf workspace.tar workspace ....
2 I# E7 z: [; } gzip workspace.tar
) K! X/ I7 i/ S) L: k+ N! m 或:! ~# F2 w( E& b' T( c6 f4 O
tar -czf workspace.tar.gz workspace .... 6 V9 Q; [7 t7 V5 o
/ H/ ~% O* C2 w; e; j# _0 g 释放当前文件夹: / X1 G4 u1 s/ ]/ y! v; h) O
tar -xzf workspace.tar.gz (Linux); n* v9 \, |8 l, t* k
或:
% h+ S! k$ v8 M; s X1 Z gzip -d workspace.tar.gz6 |) r' J. ~+ i) {" ~
tar -xf workspace.tar
, }# a" b3 w" P+ a: {1 \: w/ @! H p% `# \
2) zip 打包与释放:) s* R" ~5 X# j: ^0 e5 i
zip -r file.zip file1 file2 file3 ...
# R' m5 Y! @' c. N/ }6 M) r unzip file.zip
. a% c5 ?7 A8 D* [( t! [4 U# S4 d4 D: q- q6 p2 i& `3 k
" g) S1 q" [ \2 l- {. Y
6 系统环境变量PATH
, l$ y/ }7 l p/ N/ }. z 1) 环境变量PATH: 操作系统可执行命令的搜索路径.2 w5 O" `- U; o1 z' i4 J, M
2) 可以使用$PATH引用变量的值.' A$ q$ F2 {, Z2 d* p4 M
3) 查看环境变量: echo $PATH% a7 v y7 f4 X( ^: b% U
4) 设置环境变量: export PATH=$PATH:/sbin1 w& Z- m3 V8 Y6 O/ I/ H# v5 d. e
% a8 w: c& ]6 Y7 Q! M+ J7 Java的安装与环境的配置+ b& y; S; a: H- l7 m
1) Oracle下载JDK, http://java.sun.com
) M1 s1 x5 l# C, w* M linux 版本的JDK是自释放压缩包
% c7 M! n$ N6 S8 E2 i 2) 安装JDK 以Java1.5 为例:
0 x4 [9 z/ H: p3 Q0 A chmod +x jdk-1_5_0_09-linux-i586.bin (增加执行授权)6 ^" ^5 x6 u" n$ @9 m$ ^1 t0 z/ I* G
./jdk-1_5_0_09-linux-i586.bin (执行释放)6 }, l+ i: Z% m# ^: l) y
$ D5 Y. v7 T. f- R- b; X+ t- {3 x 自动释放安装到 ~/jdk1.5.0_09
) Q5 ~. ^& B# S: |( q k) ]! ^; S8 f% J. }9 V- v5 U
3) 配置JDK, 以JDK安装到 /opt/jdk为例:/ U3 s" Q" f$ G$ i* _5 j
/opt/jdk) K' n* h3 b+ L+ @/ r/ }+ J
|- bin 开发工具(命令: javac, java, jar, rmic, jps...); F- V, e% ]8 [" r' H. R" F' h
|- lib 开发工具实现类tools.jar
) ?" N* j) K* u6 t8 i B |- jre (Java运行环境)
$ m3 X y7 W. ^" B/ z | |- bin (JVM)
5 M& T; o7 b: y9 O' B3 F: i | |- lib (Java API 类库)
& k+ a& e8 I ~0 h, V( [ | |- rt.jar ( 核心类库, zip压缩,
- P. N6 d; I* w- R | 包含java.util.Random)
. p M- b; j% t- F ?* ~- e |- src.zip (Java API 类库的源文件)
% f. @* q- ?" J
& a/ D$ x" o5 l: H1 N7 Q# T) u0 M4 ~9 m$ N' a
A 配置PATH, 使PATH包含JDK安装目录下的bin目录! W4 I, f1 X+ ]
目的: 将JDK带来的开发工具(命令)扩展到OS中.9 i9 i; G. t0 L7 T8 p3 R+ }. H |
如: export PATH=/opt/jdk/binPATH
: H& j# ^" l4 { ]$ P; U7 o4 z3 R- Q1 K/ i6 l4 H
3 z3 T. X2 {& H# ^9 S v3 n+ v
B 配置JAVA_HOME, JAVA_HOME指向JDK的安装目录& V1 s M0 K& d& l
JAVA_HOME 的作用: 是指导"某些Java软件"找到JDK
+ N! }# l2 F1 H! [8 v 如: tomcat 服务器 就使用 JAVA_HOME
7 t5 \2 Z1 Q& @6 Z2 v4 h8 s 实例: export JAVA_HOME=/opt/jdk
4 q0 E9 ]4 D, J4 x$ l1 Y7 o
0 `; \# t0 m3 Y- ~5 u" u* { C 配置CLASSPATH, 指向Java类的部署目录或者Jar文件# e( V# y& ]: b8 E' I( q' u
用来为JVM 指明Java类的搜索路径, Java在执行类的时候: b! ~* y+ ~2 P- g' D/ `
在CLASSPATH指示的路径下查找类文件.
9 F$ ~( V; g% i2 J 实例: export CLASSPATH=.$ o! w& c+ \2 H6 j" h4 \# Q
0 Z7 I! b# q/ z$ m% c% I
Windows 参考 Java配置命令:
5 W& T! M. C/ h/ Y, ~: Y) s" e6 J set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_01
+ n0 p" K. k C( c- l& [2 M" \$ h& w set CLASSPATH=.% G, G" O5 p5 x# C
set PATH=C:\Program Files\Java\jdk1.6.0_01\bin;%PATH%0 i. ?! R$ z; s* \1 C2 Q
6 U& |" M, r, O/ I' z# V1 i8 package 与 CLASSPATH: + e1 V: |+ \, D x8 @
1) 是java中对类进行分类的6 p& K+ Q" W9 C* Y3 g7 E
2) 包映射为系统的文件夹# ~6 Z0 ^# l, X7 F! W
3) java的类的全名: 全限定名=包名+类名 8 E2 \$ Y% o$ O9 t
4) 使用Java执行类时候要指定到 "全限定名"- G+ M% m, q5 s2 ^& x
0 t% d8 s0 i m. Z# c& k8 ] 5)Java 的 编辑 与编译实例:7 n, E& S0 k/ _# S1 q) x8 z
cd demo9 E G' a& ~# Y$ Z2 H2 u
vi HelloWorld.java (编辑(edit)Java源文件)
$ |7 T, e- o3 n) ~; _ mkdir bin (创建输出目录bin)- P7 z! ^, E6 a4 C' x
javac -d bin HelloWorld.java (编译(Compile) 源文
; P6 C6 }+ a( m' }+ c 件到bin文件夹, 在bin中生成包)
7 t9 q8 C/ u0 |, S: {1 n (下面设置 Java的类文件搜索路径, java执行时候利用这个( @7 K. d: k& w$ r
路径搜索Java的包和类文件)
) l8 Z: I. ?* m) ` x5 ~! i export CLASSPATH=/home/soft01/demo/bin
% |( v+ X7 i: l8 B java unix.day01.HelloWorld (执行java类, Java命令会; v6 \; m2 M. X% U
到CLASSPATH指定的系列路径中寻找包corejava.day01
$ A3 } ?7 \( Q2 B g6 N 寻找包中HelloWorld.class 的字节码文件 )! {$ d" Z" c/ t7 f
5 d! d6 }; s" e9 系统初始化脚本
1 N% f+ N* D+ ~$ d/ o M 1) 初始化脚本 是指在开机过程中自动执行的系统脚本文件
9 r" s1 a5 P5 S 一般用来初始化系统环境
- Q5 p. {. _2 M+ `( |9 S/ w 2) 系统级初始化脚本文件: /etc/profile 所有当前系统的用户
% P8 ^* a8 G3 H- l5 j2 g; F- v 登录时候都执行
) R6 z" N$ W" K% X8 |% `4 y0 ^+ B. S3 ]3 K& p# x
|
|