|
该用户从未签到
|
1) Linux / Unix 命令格式
# C% r. A9 ?' l0 ] command [-选项...] [参数...]
* o6 |. d2 j' b0 T; N 如: ls -a ~: I/ o4 A: J# m8 c+ r3 e) Y& B
mkdir .demo //创建隐藏目录$ T+ _5 {5 {% q3 L, e5 q
ls - }) ?- y# c" ~; [. s, I
ls -a; J! ]" q4 h& `+ Y; s
2 @; Q7 Y/ y) h, H7 ?% b
2)标准输出: 就是在控制台(终端, 命令行)的默认输出% t* z' S {' Z) g2 F. d
ls pwd cat 等命令的默认输出都是标准输出
8 }6 K$ X, r8 @ ">" 输出重定向, 可以将标准输出重新定向到一个文件上.
# t. q# l: K! K. u; @ 如: ls > abc.txt //将 ls 默认的标准输出结果定向到abc.txt7 U0 X U2 a. Z+ w+ j& G
cat abc.txt //查看abc.txt文件内容
2 w+ N+ Q* u: b+ W, T) V" Z7 Y7 L- m
3) "|" 是管道符号, 可以连接两个命令, 将前一个命令
. C- q8 N. O* z, |% }' k) A 的输出作为后一个命令的输入
! {" h" M. w4 Q" E) S
$ E0 `$ b; b1 h8 D( H8 M 4) grep 是过滤输入信息 留下指定的行" p4 ?: ?# ?; @' [; N/ T
8 v0 N( e# C( j' Z; D" U7 R9 ]) T2. 目录 与文件操作
6 h1 j/ X# h9 n1 j; V: Z 1)cd 改变当前工作目录
) Y% Q' ~6 ]% ] 默认的cd 相当于 cd ~ : 返回"主目录"1 _& ^) \- p# |7 w. `+ ~7 E
. 表示当前目录; l9 r7 n# a; w* Z8 j: B
.. 表示上级目录(父目录)
?" H2 \3 R$ b: W* m ~ 代表"主目录"
r0 P0 W2 h4 k8 g% V$ }. X6 u 以"/" 开始的目录路径表示: 绝对路径, 反之: 相对路径
6 R9 R* { w. e- ~0 X4 } 相对路径: 是相对于当前目录. ".", ".." 都是相对路径
6 D7 l# Z- @5 A/ U1 X N 以"." 为开头的文件/目录是隐藏的& D( v ]1 d+ I$ y2 e. c' L0 `
2) ls 列目录命令
. R& E' J5 L; {! d( ] 如:. K8 m; h) i& x( g1 Y7 W# [* T( K( A
ls /5 A3 p* S8 |+ e8 ~
ls /etc
: T/ A6 X& W( }, D9 _ ls /opt
6 b, r% p( c4 |: h ls ~7 e, J% H1 j' e. ~ W
ls workspace
1 a7 X' g! ^5 j ls -a ~ 显示全部的内容(包括隐藏文件和目录)' ]1 ^+ T# e" |4 D0 [9 [; b
4 t5 K; g- E* d. u: W5 O' `- S# J2 L2 w6 }8 Y5 b
3) 创建目录 ) H8 ]) k& P m% d' y" _
mkdir .photo 创建隐藏文件夹 ".photo"
: _5 ]4 U: V2 ^4 r7 N6 l: F3 f 4) mv 移动/改名文件夹/文件
% |# T: e. ?! |& {' m( M9 _ mv .photo photo //改名7 g1 \7 _7 {! D- }( B. `& M3 a
mkdir mm
8 l* v, s& @6 f, Q( s+ m4 n% a' v mv mm photo //移动4 n! y1 y& b) c) A4 u7 n, c
ls photo
/ p1 \8 V. V. n4 o: \ mv passwd passwd.bak
* q1 v0 x. u3 `. n! T, J$ m }: h8 X" D! I
5) rm 删除文件/目录
. z) l) t$ K' X0 T$ T$ T 删除文件: rm file1 file2 file3 ...
0 t9 C% [9 j, q 删除目录: rm -rf dir1 dir2 ...0 v0 C3 f6 g. Q: l3 E% P! r
选项: -r 递归删除所有子目录和文件" Z. q0 ?. ^1 P& K$ s. U
-f 强制删除, 不进行任何的交互确认(linux 默认 -f)% @! |+ V, |# R$ W1 I
# A. J4 O" b; t+ |* q: w
6) cp 复制文件/目录, 注意第二个参数
2 [1 r" }+ n7 e# G 复制文件 cp /etc/passwd ~
0 e1 O l" g+ C8 F 赋值文件夹 cp -r workspace workspace.bak
& H9 G) J9 K) U/ |) R6 y6 z2 U& a mkdir demo" G* A; V" g: R; I0 O* ?
cp -r workspace demo
: @/ k9 T( q5 K7 Q$ [7 i: p# o' t( `
选项-r 表示递归赋值所有的子目录和文件内容2 g/ ^9 G; b* w; I9 C J* _8 b
$ I4 t7 v7 c0 X; u* [' k0 @7 v
7) 文件的授权4 S0 f) b9 L9 j* x+ X
ls -al 查看长格式结果
E. v" ]0 c" @5 l' v d rwx rwx rwx liucs liucs com& c, M1 D7 X- P8 {4 s
-rwxrwx--- liucs liucs Hi.java
# M5 }5 m- d% k0 ~7 d
& s) h$ b- J' [9 C3 k ~+ c+ M chmod 660 test.txt
& B) s, B) s% Z- a: E9 s7 Z* N z rw- rw- ---
9 y4 x2 M' Z! Y) r C' J rwx% v' W7 I) m) D0 h8 m8 h0 @
421 421- N- P( Y! f7 p) \1 c# v; }2 t
000 0 --- - m# r, d# b( N' `6 f* g' E2 Z
001 1 --x
X3 S% R. ]& f8 V. S6 ?3 ?2 r 010 2 -w-# t' z6 d* L# Q
011 3 -wx6 V( X. r; W( h1 c8 p
100 4 r--
" Z+ F5 j& O4 s7 J" ]% D7 Y 101 5 r-x- w4 [- ?/ g' q, B5 Z5 \; g
110 6 rw-
) _, G* k. l3 {- R' c# y 111 7 rwx
1 s; S9 |$ d! P i+ E! u, M- w3 e0 Q5 Y5 U8 l' J0 A$ b* P: G
/ L7 w; T [) [$ e8 }' ^. N' T
8) windows 命令
& w! f, U/ o3 ^ dir == ls# n2 M; @9 |7 b
mkdir == mkdir
# G% G4 x. K: g7 K+ ^ cd == cd+ E; w3 I) c0 k; d9 Q* ?
del == rm
3 s& L$ J; [6 N# }8 q cls = clear; X9 B. @+ R5 N: l; y/ a# R' u( O
more = more9 G8 f* n9 E7 N0 m# ]
type == cat
% f: R; ?, v5 r8 a move = mv
9 R. n' f/ K- E8 i copy, xcopy = cp
X" I, [" ?- K! K! Y6 A% Z$ q# p) ]! O* ~
help == man
' E8 R, ]: e' N) |
% E' W- A5 f7 y+ n) o' h
# u2 f- v q& F* w. `/ k1 b6 I, ]3 文件的创建 与 修改
0 i; ]# g8 w+ q/ C% x. l5 \9 W 1) echo 回显命令! Y% L# F4 O+ C+ Z; X& d
echo abc 将abc回显到控制台
3 [2 P; I# `# @3 J0 V" [* J2 M 2) ">" 输出重定向, 将命令的"标准输出" 结果重新定向到9 v& O2 j$ ?0 A- P! H' [* x- x
新的目标.. `; p1 H; ]- q
">>" 表示追加输出
' I" t/ r( e) C5 x ls />rootlist.txt
1 D6 X$ R2 ?. Y; w( h: C8 s echo abc>test.txt ' o$ y; m/ e2 G8 l$ Q1 \1 a
echo abc>>test.txt8 y m. o& S+ Z; M+ V
3) cat 查看文件内容
9 T6 p1 {+ N" Z( P 4) touch 创建新空白文件, 修改文件访问时间
6 A- Z* u5 j2 `* g% O
% T# \: n' u4 Q# Y& `8 ?/ m4 创建和修改文本文件 vi
0 q. M6 |$ {# P y9 u3 N3 b 1 打开 vi [filename] -> 命令状态
3 d; T+ N- u' r8 ]4 J 命令状态: 任何键盘输入都是命令
: s3 P" h) v6 Q) ]* } 命令状态: [esc] 总是回到命令状态1 I" L% n* M$ o% p3 h! g7 e
编辑状态: 对文本进行编辑, 任何的输入都是编辑内容
% k; v' S$ A4 [, I) I0 m- `. X vi [filename] -> i o a -> R0 i) N- e. f1 R
命令行 命令状态 编辑状态
6 g& H A; J2 K <- :q 退出命令 <- [esc]& g' N/ p c2 M
<- :q!强制退出命令 1 n. r( `* d6 a1 P% b
<- :wq保存退出命令
, L( p0 N2 ^. ]3 I7 G# J; A :w保存' P2 l; g3 Y. n
:w [filename]' S% x. H! y$ L" T2 J
:w! [filename]
7 i# }1 x' z% K0 |6 d( a. t9 E / ? n 查找
- r" t, [8 Y6 [
' k9 Q$ w' [' e5 R- l5 打包备份与恢复(相当于winrar)! K Q; U* S Y' }3 H& M: O# y
1) tar打包:
8 { o2 w! a" K9 a tar -cf workspace.tar workspace ....
a U& L+ h0 K: ~: Q1 v gzip workspace.tar) T1 v8 o, l8 {
或:- f1 m# Y% p3 d7 R
tar -czf workspace.tar.gz workspace .... G' |; E( Z1 E- B# K7 P6 h
1 }, b9 E. Q* S7 C 释放当前文件夹: 3 T0 V, u4 N3 F3 }( x9 l+ c
tar -xzf workspace.tar.gz (Linux)
, t/ k2 k9 ~2 u: q) j1 G 或:
' E" B5 v2 k( s6 H0 C/ w gzip -d workspace.tar.gz' v' W2 u2 Z4 r& ~# R* a
tar -xf workspace.tar 7 b) s2 T" O/ e& y! x
8 s! a V+ b' B; O3 P/ B
2) zip 打包与释放:
$ l( q4 z$ T$ I$ P$ G+ l zip -r file.zip file1 file2 file3 ...
$ z* A, ?/ x/ R0 Q unzip file.zip
* n7 F* }: W) p, x. H' d
0 Q/ H$ `8 }. M. T. ~! B+ F" Z) K' `
6 系统环境变量PATH
( s# Y& T( D! s$ V1 f; k! ] 1) 环境变量PATH: 操作系统可执行命令的搜索路径.+ ~* _3 }0 X$ L; B* ]6 F
2) 可以使用$PATH引用变量的值.$ p H; E. k; w& |4 g. D
3) 查看环境变量: echo $PATH# w5 u% K; R+ l2 Y' k- e O1 }
4) 设置环境变量: export PATH=$PATH:/sbin
; s( J) n: u2 B0 w$ c+ q4 u! L( g% j; @9 F, b: t
7 Java的安装与环境的配置3 i8 H5 |2 |/ W# f- K# N- \/ s* {, @
1) Oracle下载JDK, http://java.sun.com% r. _! p z: \0 s5 }3 m7 b
linux 版本的JDK是自释放压缩包" v1 [5 u7 t/ E& S1 V
2) 安装JDK 以Java1.5 为例:
I4 M) g0 k# b g2 E" U& {9 B chmod +x jdk-1_5_0_09-linux-i586.bin (增加执行授权)% i( P! j* s" D* P0 O$ Y U- r2 I
./jdk-1_5_0_09-linux-i586.bin (执行释放)
( T9 g' V4 S7 P1 I$ _. ]* v0 T2 g! ]7 u9 w2 w8 l, ^. [3 ?
自动释放安装到 ~/jdk1.5.0_09 . @' h x, B/ F: Q
1 S$ }9 @1 h, H5 `. F5 F) r 3) 配置JDK, 以JDK安装到 /opt/jdk为例:
7 Q" ~6 z/ {: C$ e+ L: S /opt/jdk
/ o( \% z+ @2 O- ^& u) g3 O! i6 j |- bin 开发工具(命令: javac, java, jar, rmic, jps...)! M t4 Y- ?3 S) }+ \
|- lib 开发工具实现类tools.jar, d8 ]- N# o8 w( D$ _
|- jre (Java运行环境)
: d8 Z7 R* \: m: z | |- bin (JVM)
7 G, J' B. d7 p9 W2 d: \: n* K | |- lib (Java API 类库)
: B4 B# |% S9 o! h8 W" z1 y. I$ V" G1 X | |- rt.jar ( 核心类库, zip压缩,
# ~" B$ c/ k& t+ }. F9 u | 包含java.util.Random)
! `/ G2 ?$ ]' B& t( c |- src.zip (Java API 类库的源文件) . b* w8 t; D: v1 k
4 I$ d \* s" d
+ w; D+ a3 O) A! }- z& a$ x; L A 配置PATH, 使PATH包含JDK安装目录下的bin目录" O0 N$ J1 T! i* ^
目的: 将JDK带来的开发工具(命令)扩展到OS中.
* c3 _0 e, [" g7 O2 }8 t 如: export PATH=/opt/jdk/bin PATH6 l+ _. I- a3 _# o+ m
& v7 J4 K9 S; T" H
1 y% G5 ^# M/ M" y4 ?; Y B 配置JAVA_HOME, JAVA_HOME指向JDK的安装目录1 i6 L" J* `* j. v. |
JAVA_HOME 的作用: 是指导"某些Java软件"找到JDK
( f& Q+ v& j [8 S 如: tomcat 服务器 就使用 JAVA_HOME
1 I1 _; P8 z9 G0 I+ p 实例: export JAVA_HOME=/opt/jdk% L1 v* q: |3 u. p% S2 g
2 ?: U8 Y& d+ s% V
C 配置CLASSPATH, 指向Java类的部署目录或者Jar文件9 ]- _0 V% h9 R* w5 d" H
用来为JVM 指明Java类的搜索路径, Java在执行类的时候
z* h+ M- I, Z" F. z; p* P" @8 h 在CLASSPATH指示的路径下查找类文件.
+ N+ N" R7 Y: _" b 实例: export CLASSPATH=.
; H5 D( x- @2 W, g0 b3 Y2 C d* j8 e. {
Windows 参考 Java配置命令:
3 V' b& }+ k( J set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_01
; h" R# `' U' Q% a9 v8 F6 W set CLASSPATH=.
) L8 `7 Q/ g; F! e1 l set PATH=C:\Program Files\Java\jdk1.6.0_01\bin;%PATH%
6 `) ~9 \" Y, x9 s( K
+ N- ]- F7 i' g/ k( f; i8 package 与 CLASSPATH: : ~ Z" q/ G0 [
1) 是java中对类进行分类的# T0 V% l$ S6 T% k u# ^
2) 包映射为系统的文件夹, t8 B$ N }. D6 {6 W, G: a0 R# i8 E4 p
3) java的类的全名: 全限定名=包名+类名
( h! P' \% A) t/ M( j! \ 4) 使用Java执行类时候要指定到 "全限定名"1 E {/ R, N8 {: {. d) i
% ~8 {+ F! y4 x9 e
5)Java 的 编辑 与编译实例:- b" j( m% _2 U5 j* P( A
cd demo
! F& W: q7 N- N7 ]# c: [ vi HelloWorld.java (编辑(edit)Java源文件)" @: O+ r- p9 o. q9 K1 r& j& ?6 [9 y
mkdir bin (创建输出目录bin)& U4 ?2 @- e" j6 k( H, I
javac -d bin HelloWorld.java (编译(Compile) 源文 k, P7 l6 t) o+ L+ z3 u
件到bin文件夹, 在bin中生成包)7 G7 B; H3 d4 |4 ~% p; ]! E6 B* `
(下面设置 Java的类文件搜索路径, java执行时候利用这个
/ Z q6 c' R/ h- O3 a 路径搜索Java的包和类文件)1 J- j- Z/ y! L* K0 v" r
export CLASSPATH=/home/soft01/demo/bin9 r' b$ ^% N+ `, W( L, K9 C
java unix.day01.HelloWorld (执行java类, Java命令会
0 h1 K, j" I' v8 Q0 q 到CLASSPATH指定的系列路径中寻找包corejava.day01% v( H- @/ }: b" x9 T; B6 R
寻找包中HelloWorld.class 的字节码文件 )
) c) V: N" e8 T/ x' I) T$ u6 Z% M7 {/ `1 }
9 系统初始化脚本
! c7 A; W' H7 T6 R* f9 k S1 D 1) 初始化脚本 是指在开机过程中自动执行的系统脚本文件
! ~' P0 Z0 ~4 }, j0 A- Y2 M( R 一般用来初始化系统环境- \5 q0 X+ E& s3 o0 B
2) 系统级初始化脚本文件: /etc/profile 所有当前系统的用户
1 O1 V# w, i$ Q3 i$ m: ~ 登录时候都执行
2 g( c' R3 l4 t4 S/ r1 F0 p5 s/ O
: r& T: n* x M |
|