该用户从未签到
|
1) Linux / Unix 命令格式+ o. z4 x1 G! a- J) p
command [-选项...] [参数...]. I+ w, X, ~8 a6 U I% ~# R6 J
如: ls -a ~0 a- @1 S; V3 j$ Q
mkdir .demo //创建隐藏目录
* w& {, l; n) d+ t4 g ls
5 X- w: W- f. ^% A ls -a0 x, I# T' k/ i7 s1 y
3 x% L) h0 }8 \' W% g" ]3 Q. U1 |
2)标准输出: 就是在控制台(终端, 命令行)的默认输出# ~. i2 `. m$ W& ~" V
ls pwd cat 等命令的默认输出都是标准输出
, }# t. F3 L7 ~: z3 a: S6 t* n ">" 输出重定向, 可以将标准输出重新定向到一个文件上.
. S( r' w- X6 @6 ? 如: ls > abc.txt //将 ls 默认的标准输出结果定向到abc.txt
4 U: Q( n* R+ u' M m& Z, H1 b, o+ a cat abc.txt //查看abc.txt文件内容
; `# K+ r/ O( t% ?% ~5 }
5 t M6 x3 |4 T. ] 3) "|" 是管道符号, 可以连接两个命令, 将前一个命令3 m3 |: O- @5 x% N, j
的输出作为后一个命令的输入
8 e7 |: b1 i5 m) S4 y6 ]
- ?$ y; `8 C W4 A X' Q8 G. h 4) grep 是过滤输入信息 留下指定的行
% X' o8 c3 P* u. D4 K+ s; ]# b- ^- \5 y7 w7 P" Q) [0 p, F, h! R
2. 目录 与文件操作4 k! p6 t; I/ G5 @, W( g* y# D+ G
1)cd 改变当前工作目录+ O5 L( n+ n3 w3 n8 z0 u
默认的cd 相当于 cd ~ : 返回"主目录"# N* u: H2 ^) X |7 K9 R Y, U, y
. 表示当前目录( _, Z; B4 G3 o% K9 Y$ N
.. 表示上级目录(父目录)
( {- t' v1 P3 a* ?) ^! N ~ 代表"主目录"/ [' R' W# c# F. {7 ~, F
以"/" 开始的目录路径表示: 绝对路径, 反之: 相对路径
! b' N/ W1 J* ^* q! D 相对路径: 是相对于当前目录. ".", ".." 都是相对路径( ^$ W. ^$ @8 l, `; B' ~- o3 Z
以"." 为开头的文件/目录是隐藏的! j! d" b; h; R# J0 I' O
2) ls 列目录命令
. B9 P+ ~3 B5 w$ k 如:
; F4 t7 j$ @; W ls /
1 E. W( o- i* F2 A; i. {' [ ls /etc
# Z( l. q4 y( k2 X ls /opt
7 G+ l3 q6 z# ?$ d, \4 @ ls ~! |; u' p( ~ k9 R f2 {
ls workspace% H$ \% X& N) ~; y$ g. P
ls -a ~ 显示全部的内容(包括隐藏文件和目录)5 R, C, }8 W- K- V
' U. \. ]4 {& v- T" V* Q% T
7 b% U4 ?" y" \% S; n% q& y8 | 3) 创建目录 ' u }* k- j6 @* }) W" g, v
mkdir .photo 创建隐藏文件夹 ".photo"; v) f& b$ p: S9 C9 n+ l& n
4) mv 移动/改名文件夹/文件
/ ~ i8 B) R* c mv .photo photo //改名* D4 J" L3 [- [# e& w9 `& `. u
mkdir mm
. A$ ~5 }5 P# T3 f$ R3 C( S mv mm photo //移动
/ @6 `. w3 I2 Z# D1 ] ls photo
- B6 b9 J/ ] `0 o, m5 `1 Y mv passwd passwd.bak
% P- S2 A$ l, y3 d" v3 f5 w I$ ~0 j3 v2 r9 z
5) rm 删除文件/目录$ g! t/ @5 U+ }2 y# \
删除文件: rm file1 file2 file3 ...
& ]$ y& r# B. P$ G! h: Z( ~ 删除目录: rm -rf dir1 dir2 ...+ u- n. i2 }4 b6 E- W( C% I8 u
选项: -r 递归删除所有子目录和文件
& v! y4 ?! Z8 N; [ -f 强制删除, 不进行任何的交互确认(linux 默认 -f)4 C. ?1 z% d! N* U5 ?
! k7 M# S( ^0 k 6) cp 复制文件/目录, 注意第二个参数
O& n" \ l ?( q" ` 复制文件 cp /etc/passwd ~
+ M5 T) `* i3 F5 J3 Y 赋值文件夹 cp -r workspace workspace.bak; H2 \/ C0 g0 T$ w' u
mkdir demo
# c R9 J) H- F* O* U cp -r workspace demo
- i% X) h7 U# |- Q# N m
/ v4 n0 C( \0 `& H7 m6 ~5 m 选项-r 表示递归赋值所有的子目录和文件内容, f( j5 Q D6 [
: o3 E, x6 K) r& D0 C9 z2 L 7) 文件的授权; D& S. o$ R5 b+ P# s) g6 {
ls -al 查看长格式结果
+ ^: v/ g+ g. E! j* } d rwx rwx rwx liucs liucs com% J3 R2 ^* N- m6 X4 M) M9 K
-rwxrwx--- liucs liucs Hi.java" Y; {. t/ u6 d+ o3 I6 E v
- L6 N) |# r5 i5 x# x' S8 g$ B chmod 660 test.txt, Q& U" {1 u+ Y# C& f% l
rw- rw- ---
; X4 O; O+ L' x6 m" u rwx: [" l$ B- S; w9 H5 s$ `! h0 d7 _
421 421
. I1 S' i2 }1 f8 W% p6 d# J; o 000 0 --- 9 v$ K8 T7 s F+ f
001 1 --x
/ t8 Y- L Z9 L; W6 g) u( Y0 O 010 2 -w-
7 W# Q+ h* P9 g 011 3 -wx
0 E+ o/ P- I$ D# A, B5 q/ b 100 4 r--/ @' v9 D3 r8 C& p: ^, L
101 5 r-x v, k3 ^9 t3 I( o
110 6 rw-( f+ R+ I7 y/ ?: R, l; \
111 7 rwx
1 q* O I- k; K5 m4 L$ g7 f2 A2 I! c5 M, U2 _& y
) r1 s) w: l3 z1 @ 8) windows 命令
3 l" u9 A) U; G' l* w% e, ? dir == ls. e3 `! e1 X) v. V5 t8 t8 L3 e( S
mkdir == mkdir
4 ~5 g/ k* S* |. A cd == cd
! H' p. Q' f" o" @0 X0 h. | del == rm
" m1 \; n" _- Y$ z3 y/ e: v7 }+ \ cls = clear, B$ O) D2 h% W% G
more = more
% h& k9 C5 j% n+ w/ s W) Z1 v2 }' ^ type == cat
i9 y! t& Q% E6 g6 a! Z move = mv
+ `0 Z% F: V: p' S; v copy, xcopy = cp
% G7 J( ?) ]- I1 Q
' o' J+ U- ^ F+ t* r9 n; G2 k help == man' U; D" D) t8 @. i5 A6 i z
$ r [7 e" _1 ?# Q5 E3 s3 Q
* {2 g+ H! o# I# T$ M: q# Q
3 文件的创建 与 修改/ q5 `7 G' V# D; \% I
1) echo 回显命令
3 W0 Z. b' A6 |! @ echo abc 将abc回显到控制台 2 e1 W& U9 T) }; U
2) ">" 输出重定向, 将命令的"标准输出" 结果重新定向到
- M {7 K2 L3 F9 n( A, H' j 新的目标.
. i2 y$ P: s' S9 X0 w. _0 P' s ">>" 表示追加输出
4 m& \7 u' C9 b" [ ls />rootlist.txt1 E$ T2 V# ]& v7 k/ u/ {& n$ v
echo abc>test.txt 3 ^5 L+ C. l* m0 q7 [
echo abc>>test.txt
/ d8 _8 y: i. i# N3 S 3) cat 查看文件内容
" p0 \! @' X' Q* ]* G3 \' F# J 4) touch 创建新空白文件, 修改文件访问时间
H1 Z, D( b! q# U. m2 ~6 c- U2 M" ~2 s7 P, G& q6 F* R
4 创建和修改文本文件 vi
; T5 H3 Q5 E9 L. @( F; ?8 P 1 打开 vi [filename] -> 命令状态2 ~: T# P( u" p# H
命令状态: 任何键盘输入都是命令2 t8 F! T6 j, L$ I% v8 ~0 F @9 Y# }
命令状态: [esc] 总是回到命令状态6 T+ b$ t; U, |% r+ u/ z2 Q5 g7 X
编辑状态: 对文本进行编辑, 任何的输入都是编辑内容
3 M) l- s" r6 `' m* S vi [filename] -> i o a ->
# Q! E1 R4 `8 t6 Z/ L 命令行 命令状态 编辑状态
+ E" g( S: B6 G# a+ s2 P0 K <- :q 退出命令 <- [esc]
- n6 q3 ]" i v! g <- :q!强制退出命令 : ^0 f. Q9 _% E: j" O
<- :wq保存退出命令
( z! v( K, X( U. }) B :w保存
: a; v; j! W# F :w [filename]
! H% a0 V6 j. f$ |2 Z :w! [filename]6 |; q- e5 S' w. v$ F
/ ? n 查找/ p4 g; [" K, U' Q
9 x1 x$ M( t3 M. [- M) r
5 打包备份与恢复(相当于winrar)
+ n7 Q0 b* d, F. h* i+ p1 J8 @ 1) tar打包: 2 a+ h7 _0 K r+ x
tar -cf workspace.tar workspace ....
1 C# b% r' Q! ?! C% @2 |' H( R gzip workspace.tar$ l p7 S! o# W0 t6 z T/ O
或:
7 c1 h" y2 v4 r" g tar -czf workspace.tar.gz workspace .... 4 |0 M. `0 e" ]# c2 K- i1 N7 K
" M2 c" ?$ k" w) R$ ]( m. S
释放当前文件夹: , G3 B" D4 C6 g( g% h
tar -xzf workspace.tar.gz (Linux)" W3 b: t7 }! T/ r2 P
或:
0 z+ n, L5 i7 c gzip -d workspace.tar.gz! p' q: n8 R. l# X w' G) M
tar -xf workspace.tar
S5 Q7 n7 {8 y2 f0 y8 [5 l& c
" `: H) t# j; ]9 V* G4 a* w 2) zip 打包与释放:
1 j# \+ |: k, |8 P4 `0 g2 x% B+ S zip -r file.zip file1 file2 file3 ...8 }# q4 D- j6 u8 n( M7 F$ z
unzip file.zip
) [" c6 l4 T1 i5 J0 ~7 o- g& ?# j6 g E) C. [3 m
: V" I" b5 S {$ D! p6 系统环境变量PATH* E; ?# d6 K+ E2 g; d- q: [
1) 环境变量PATH: 操作系统可执行命令的搜索路径.
! E# k a/ j% F! x* D 2) 可以使用$PATH引用变量的值.4 h! R' s+ s" A$ |& n W: t
3) 查看环境变量: echo $PATH/ H8 k S& r9 f
4) 设置环境变量: export PATH=$PATH:/sbin
* d* |9 ~0 ~. R% V' ~$ Q/ q
9 H7 D }, x7 e7 Java的安装与环境的配置
. x6 b! G. M" }; K0 G 1) Oracle下载JDK, http://java.sun.com; |" u% s7 |$ t* T5 i. k! e- u
linux 版本的JDK是自释放压缩包
! H& l- z5 X' u D 2) 安装JDK 以Java1.5 为例:8 q; X, z5 B' \4 {$ r
chmod +x jdk-1_5_0_09-linux-i586.bin (增加执行授权)
% Z n3 P+ s0 u" O8 D! F$ { ./jdk-1_5_0_09-linux-i586.bin (执行释放)6 b3 z# ^$ i6 Z5 }, {) [
0 r7 _- K2 v, O$ Y
自动释放安装到 ~/jdk1.5.0_09
" r3 \& d+ _$ Y, L6 v2 c6 |8 H
3 X5 \/ f7 i, t I5 M 3) 配置JDK, 以JDK安装到 /opt/jdk为例:
/ y4 _" B+ Z) ]% y) ~: i3 c6 j /opt/jdk5 _/ j# {( g# ]) b9 v1 d
|- bin 开发工具(命令: javac, java, jar, rmic, jps...)& E& f% E5 |. f3 F+ Y
|- lib 开发工具实现类tools.jar# Y+ N% _1 G! r9 \
|- jre (Java运行环境) % M9 B2 N Q$ Z8 ?3 w5 p" N! P
| |- bin (JVM)
, X: g* q( F. {$ h& J7 d | |- lib (Java API 类库)
% s, j$ f L0 r' Z$ L | |- rt.jar ( 核心类库, zip压缩,
% I; L1 J2 Q' D5 P | 包含java.util.Random) 0 k3 C% n; B# m
|- src.zip (Java API 类库的源文件)
$ q- C9 @( |7 \1 m& Z5 w9 l, I$ ?& w) `6 c, _2 q& |
5 t' M. c" Y- b7 T8 O/ U
A 配置PATH, 使PATH包含JDK安装目录下的bin目录6 I" L8 |- ^0 x* o% ^5 B) `
目的: 将JDK带来的开发工具(命令)扩展到OS中.
- r( D, I. R2 B; w/ S' o, Y1 { ?7 l 如: export PATH=/opt/jdk/binPATH7 t2 R u1 ?; T, k! W: C) @# T' b
% d X) V0 N6 m, ^0 D: W4 h
+ h* a* R& p+ V B 配置JAVA_HOME, JAVA_HOME指向JDK的安装目录4 _( ~1 U( E6 w8 f5 R- j$ e
JAVA_HOME 的作用: 是指导"某些Java软件"找到JDK
6 c# A# M; y" Q5 T, G0 d 如: tomcat 服务器 就使用 JAVA_HOME
' ?. q; }5 A$ F% ~; E; @ 实例: export JAVA_HOME=/opt/jdk
7 U0 R+ x% U1 b* N' _0 F1 U$ [* n: [8 f1 G
C 配置CLASSPATH, 指向Java类的部署目录或者Jar文件
f' V! f3 C& Z4 b" g- A 用来为JVM 指明Java类的搜索路径, Java在执行类的时候 x- G% X4 b& y- N0 j) q
在CLASSPATH指示的路径下查找类文件.
: _7 k6 l* H0 _, O- u# O) c' |7 L" Z 实例: export CLASSPATH=.
3 E1 Q) R7 s6 C4 m3 Q
# U2 G7 w) G( J) P z3 r8 y Windows 参考 Java配置命令:: O) _: J7 j& \: ^, ?1 _! q) V
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_01
" P" K# U$ V. Z* K% n set CLASSPATH=./ o, o2 y5 u2 l$ a
set PATH=C:\Program Files\Java\jdk1.6.0_01\bin;%PATH%9 j. r7 E9 c: ^, n2 X* X& j
5 [6 d: l9 |8 O; W$ D$ Z, K& Y, l
8 package 与 CLASSPATH: 5 u+ q+ p! L- `) I9 k
1) 是java中对类进行分类的% |, P9 g V0 [4 u0 D4 S
2) 包映射为系统的文件夹. l6 a" ~( G7 x! ]: I
3) java的类的全名: 全限定名=包名+类名
$ ?( O2 z. \+ h& ? 4) 使用Java执行类时候要指定到 "全限定名"3 ^! q/ n' u0 ~; k+ G5 N, k0 f$ {6 Q2 @
: ?) i( ]8 c4 G6 W9 y3 g8 h
5)Java 的 编辑 与编译实例:
9 l, s' n) H z! c9 g* E cd demo
L3 k; |2 w: v( B# _, t vi HelloWorld.java (编辑(edit)Java源文件)
; F6 d$ c# D& b) a/ S9 p mkdir bin (创建输出目录bin)
; U+ H( I0 E' a# ~. n- S/ f9 T1 u3 Q2 \ javac -d bin HelloWorld.java (编译(Compile) 源文8 @+ h5 |5 y" y( x. m' ^0 X
件到bin文件夹, 在bin中生成包)
) y, w- K3 ?: ? (下面设置 Java的类文件搜索路径, java执行时候利用这个
2 g1 U H# x9 I8 ~: h: E4 ?: T1 `7 Q 路径搜索Java的包和类文件)
$ y- u8 M1 }0 q2 x) G, f' Y5 I export CLASSPATH=/home/soft01/demo/bin
; r0 U8 f8 w. M, k$ A1 J java unix.day01.HelloWorld (执行java类, Java命令会
) ~9 `( W8 E# f4 I7 x7 E 到CLASSPATH指定的系列路径中寻找包corejava.day01
4 O2 f8 K) ]' W* { 寻找包中HelloWorld.class 的字节码文件 )
! K) r/ k! |, P" \% C/ N6 w6 f7 |0 i1 P0 |1 [8 v/ y
9 系统初始化脚本 2 I& {* W; `% O# R5 N0 `
1) 初始化脚本 是指在开机过程中自动执行的系统脚本文件
8 L& {' V/ z3 O# n) d# @ 一般用来初始化系统环境
* {: F* s9 F" s; r. t 2) 系统级初始化脚本文件: /etc/profile 所有当前系统的用户
4 p& G1 P+ ^. J/ W" {5 d 登录时候都执行' B" r8 D/ z: v2 o( d# \" T4 B
( w# ^$ c& o* b6 f6 D' T" [ |
|