|
该用户从未签到
|
1) Linux / Unix 命令格式
r9 ~4 O' T( x7 | command [-选项...] [参数...]
" V! X! ] m- {& h' y3 [$ y 如: ls -a ~ q0 W/ }% C% s- t1 v' N8 t' @( S; z
mkdir .demo //创建隐藏目录
0 L& }3 s) C# J, N1 Z) q& X7 F4 L ls 3 f2 }2 D' c4 W& n
ls -a8 e7 J. P: k1 B
6 W9 _) Y3 ^! O: c
2)标准输出: 就是在控制台(终端, 命令行)的默认输出4 ^/ p& J5 A6 E" J! f6 r3 f
ls pwd cat 等命令的默认输出都是标准输出
7 _, P& |: }# Y9 r8 t ">" 输出重定向, 可以将标准输出重新定向到一个文件上.
# Z ?. b( I7 h$ n( z4 R- e 如: ls > abc.txt //将 ls 默认的标准输出结果定向到abc.txt% E) w, M# O5 Z" V3 W
cat abc.txt //查看abc.txt文件内容# t/ ~( z8 {7 I
) o" s }- x( i* {% ]9 A. N
3) "|" 是管道符号, 可以连接两个命令, 将前一个命令
, K% Y& A6 q! h' L4 m 的输出作为后一个命令的输入
% A- v9 Y2 e0 J) v/ f7 [, s1 l
3 c/ G$ h5 Q r 4) grep 是过滤输入信息 留下指定的行
; W' Y, `9 T- n8 v0 |9 q
" q% @' z* w8 o8 J2. 目录 与文件操作
3 W6 _ F. j% y& J Z- H2 D 1)cd 改变当前工作目录: G) |% z/ B' E5 f
默认的cd 相当于 cd ~ : 返回"主目录"
) [! Q6 s3 B( ]( l . 表示当前目录% l Y9 n& K# P" s
.. 表示上级目录(父目录)
$ ^; G0 n# U% H ~ 代表"主目录"" Y; s6 B, L8 E9 C7 _6 w
以"/" 开始的目录路径表示: 绝对路径, 反之: 相对路径
# D; N2 x! `$ Q V1 k/ A 相对路径: 是相对于当前目录. ".", ".." 都是相对路径
+ |9 U) L8 ^2 @' e7 B) Q 以"." 为开头的文件/目录是隐藏的
( |2 s" R B1 k. y 2) ls 列目录命令& S+ k! z {, X5 R J3 o
如:
! G' `3 v% D( i! i$ c ls /
. K3 k2 ~( O( v) k/ U2 E/ j+ [ ls /etc$ w/ K: L9 x9 ^. R) a i+ W
ls /opt+ N% s& l% v* x2 ^6 x+ N! A3 |
ls ~/ Q1 x( ?, V' B, Q2 e
ls workspace
) m8 W1 u, x: R! \4 t! I ls -a ~ 显示全部的内容(包括隐藏文件和目录)6 n* E/ T4 r& y1 w
* h9 |$ D6 C# {/ [ i0 C. F% i
& G, c+ |$ i1 Z) l9 O 3) 创建目录
( X, n& O+ v% j Y/ L* n+ g% v mkdir .photo 创建隐藏文件夹 ".photo"% E' R" i2 _3 M1 X8 u, G8 Z
4) mv 移动/改名文件夹/文件0 A, y, k9 Y9 N2 o* }% D
mv .photo photo //改名% N+ H: F" f& w* X, _( B1 t
mkdir mm
. M5 J8 K h) M2 f/ Z" t# ^& U mv mm photo //移动
/ u @/ Y! J8 I/ O. \ ls photo a: L2 @/ N7 Z a
mv passwd passwd.bak
6 N; z' D8 l+ C. d, { v9 t7 Q. J* p, T0 R8 f. _9 c" {' R
5) rm 删除文件/目录6 W% V/ y( e/ t3 i6 M! S
删除文件: rm file1 file2 file3 ...
- w+ d# S. n% K) l( ^7 a- t a 删除目录: rm -rf dir1 dir2 ...
. ?5 _ I ^; ` _7 F$ U 选项: -r 递归删除所有子目录和文件
; N4 r: y/ U, s x6 ] N/ R$ X. M -f 强制删除, 不进行任何的交互确认(linux 默认 -f)+ m) u/ D( J9 `8 H# T( d
. f( W% X `: y; M 6) cp 复制文件/目录, 注意第二个参数
6 ^. f! B1 Z( W 复制文件 cp /etc/passwd ~
& J+ S8 b8 w, ^# R$ c9 F 赋值文件夹 cp -r workspace workspace.bak
: H7 Z" c/ V) W" q5 _ mkdir demo/ Z& [: i& l7 ^
cp -r workspace demo
- H5 X5 W8 C7 |& q" P& A
5 W( L( E" s) ~/ m2 X$ X 选项-r 表示递归赋值所有的子目录和文件内容
8 a2 _. u6 O! p5 L5 T6 }& Y
0 j0 Z' I e b% m1 R) z" H 7) 文件的授权
2 z) `& s. I8 u( ` ls -al 查看长格式结果
& y# J- _3 r! Z4 }, M" P: @9 f d rwx rwx rwx liucs liucs com {, N* C7 b: u2 A
-rwxrwx--- liucs liucs Hi.java, e5 P$ r$ }9 Z( @
+ ~- k# I9 e9 s+ b) C" W% w
chmod 660 test.txt7 I4 w4 K- ?, ?+ I9 v
rw- rw- ---& f: q3 U3 n: n( ~
rwx
$ ^2 t3 i# @8 \% d1 k, e( Q; E _ 421 4210 _0 a; h- X& U6 o6 r
000 0 ---
1 D6 u' d' K4 C& f% k& E6 U 001 1 --x
: k) P/ o8 Z9 @9 `6 @! f( _, N/ h 010 2 -w-
& b# k4 U& N" E0 c: B/ v' Z/ } 011 3 -wx
- X- X1 Q% a9 J: h/ L 100 4 r--
; b- J. [$ M! ]! Z3 \) p; I 101 5 r-x
* h( s) k" N1 T, b8 i! { 110 6 rw-
! }0 b0 s) v' b: q, I& C. O 111 7 rwx9 w, _* F+ Z! A' l
2 |, g" f! O4 n! c
3 c# [) P8 v, r' _4 } 8) windows 命令. B* e" H5 C% T; X
dir == ls
' O6 q, ]6 d. |8 A1 l# R* K% G" B4 h4 V mkdir == mkdir
2 R) ~0 ~- V/ j cd == cd
+ N% N* x. S3 g del == rm1 H! i" A) v% O4 F f' l( Y7 \4 @1 c$ H: t
cls = clear
- _3 k2 G0 X9 e' ^. i5 y more = more
" ^- s K1 B A* g3 v/ t type == cat
2 g. u( a! ]: \3 p move = mv
9 {; O) V+ j, S4 O6 s copy, xcopy = cp
" {/ K( S; Q* p7 _- ~, I& t( g6 [; w/ N# f
help == man* M; _/ A- {9 A% `- W/ {8 {8 j2 q& E
5 |9 e) N" g3 r: M9 C0 v; R8 P
& O0 K9 [$ o# ?( @+ d7 Q0 g! Z
3 文件的创建 与 修改
4 T- d9 Y1 k3 I5 i; o/ W 1) echo 回显命令
% I6 s$ `9 G4 L7 x/ c- L1 d echo abc 将abc回显到控制台
( d- i# G7 G& { 2) ">" 输出重定向, 将命令的"标准输出" 结果重新定向到
' Y9 D; W# l; J" k/ c# Y7 K 新的目标.
) ?! H/ s V/ h8 f6 o0 \0 X! f ">>" 表示追加输出 2 E3 T. J& t, w1 e
ls />rootlist.txt
9 Y2 a" k7 n$ [$ O8 S' V echo abc>test.txt 0 T# H9 S8 Z" [( W8 W E
echo abc>>test.txt. _$ F k( Q: q" U6 ^
3) cat 查看文件内容. A/ N) y2 H7 J+ a/ z7 |6 n
4) touch 创建新空白文件, 修改文件访问时间+ j3 T1 U2 X0 b. b0 q3 ?) i+ `7 Z
3 d' i7 L0 T8 s B- {4 创建和修改文本文件 vi
# C1 g( Y# F7 E, W1 c& O1 T 1 打开 vi [filename] -> 命令状态
' m1 n0 _; b! \- \: O: g' r 命令状态: 任何键盘输入都是命令
8 `! [" t' g- l) D6 T3 \ 命令状态: [esc] 总是回到命令状态
) ^+ K f) L* o O( r) h" R' w! z 编辑状态: 对文本进行编辑, 任何的输入都是编辑内容; [$ f% k4 z( g5 n8 T0 B) R
vi [filename] -> i o a ->
: n1 y- W' u% i! p r 命令行 命令状态 编辑状态9 _% t1 w2 ~) _: }; [
<- :q 退出命令 <- [esc]3 \$ n9 H4 ~4 Z. G2 i
<- :q!强制退出命令
2 a3 Z* x; x6 L0 T' G1 j <- :wq保存退出命令 5 }! F% S! @5 H+ n/ B6 I
:w保存6 P4 s3 m, m' m6 F e& T; S
:w [filename]
; G2 S; i+ b0 q :w! [filename]
4 n0 i/ w3 P8 \) {$ Y! z / ? n 查找$ M/ l7 a( A: _
; j3 c) d, q5 X" h* O0 c4 H9 }5 打包备份与恢复(相当于winrar)
7 Z/ b, u) ^: N% f+ a A4 ] 1) tar打包:
+ l0 O5 ~2 x! t tar -cf workspace.tar workspace ....
# l" Y- C1 `0 E gzip workspace.tar
) }& d, ?/ n6 I8 _' h) o+ C! Q, s8 ? 或:0 r4 l6 D: W9 k+ c4 V5 O
tar -czf workspace.tar.gz workspace .... - ?9 b2 `- I7 v; S
1 D7 I5 o/ X, N8 o 释放当前文件夹:
9 W/ N: f6 M7 r+ z( {6 P tar -xzf workspace.tar.gz (Linux)
4 J0 l: O% ~; `% p$ N: ? 或:
9 ?! E, a0 |; H$ B gzip -d workspace.tar.gz7 f9 `+ \9 S/ k9 t6 E
tar -xf workspace.tar
) k3 D4 H( B3 S- O
' X, S: @) d/ f/ U/ X 2) zip 打包与释放:
6 v1 d* c' x% k zip -r file.zip file1 file2 file3 ...# C* B! _0 a' C/ `
unzip file.zip
( m) u5 C M9 Z2 G+ Y
! p. k7 h8 k. N7 t& Q- W* s2 y* h* l3 r2 @1 Z
6 系统环境变量PATH6 M3 ]' d' W/ x- [* G' r
1) 环境变量PATH: 操作系统可执行命令的搜索路径.
3 ^8 j: b X( @( s& N) ~& Z% e 2) 可以使用$PATH引用变量的值.7 \0 l% y: V0 l: g) }+ x5 B" m
3) 查看环境变量: echo $PATH6 ]4 H4 l" s3 H/ U3 d) I
4) 设置环境变量: export PATH=$PATH:/sbin: W3 Y2 C7 F' I6 y$ B2 m+ t; b' u
' G, b# ^4 U1 _, G h/ A0 _7 Java的安装与环境的配置
: b0 A1 _2 j% a7 [( f 1) Oracle下载JDK, http://java.sun.com9 j5 j/ z1 Y) c& O$ x
linux 版本的JDK是自释放压缩包
1 j& z6 v! \. R8 z! q- E 2) 安装JDK 以Java1.5 为例:: s* [# }" w, a* b9 ^. g" H3 Z
chmod +x jdk-1_5_0_09-linux-i586.bin (增加执行授权)* ~* x9 n# M2 o5 |$ Z
./jdk-1_5_0_09-linux-i586.bin (执行释放)
D! g0 z& z0 I3 d1 `; S3 k
7 U7 f: J2 Z* ]# z4 {) X" i 自动释放安装到 ~/jdk1.5.0_09
+ d" j o9 J' Y( y+ Z! g( C+ ]" [5 D M& K3 t# t A; G$ c- q: D
3) 配置JDK, 以JDK安装到 /opt/jdk为例:, D+ X0 [+ b1 N: E( @) Z. C
/opt/jdk. a* |1 F8 Z' Z9 H! ~
|- bin 开发工具(命令: javac, java, jar, rmic, jps...)$ K \" p w& g. F
|- lib 开发工具实现类tools.jar
, N' E& I3 V& b( n |- jre (Java运行环境) * j$ q& [: S; ] m
| |- bin (JVM)
) B* z8 y% S: S, D/ h1 R' h: |3 S | |- lib (Java API 类库)7 H" x; a: H0 A% O/ T
| |- rt.jar ( 核心类库, zip压缩,- \: V' i( ` c
| 包含java.util.Random)
3 W) Q; i3 k0 T3 B |- src.zip (Java API 类库的源文件)
; R4 K$ `5 W! ~6 E
& Z. O; }2 g( H5 k0 v4 N4 R; L
7 S; Z6 c6 R' R% j A 配置PATH, 使PATH包含JDK安装目录下的bin目录
6 Q1 {& j* I+ Y% u1 M2 t 目的: 将JDK带来的开发工具(命令)扩展到OS中.
) o- c- o0 ^2 T4 a% G" }% p 如: export PATH=/opt/jdk/bin PATH' U/ Q6 U# P: e' {. } e
" H7 ]4 W* @1 B# t; c8 r& z6 [7 D% x5 X& e8 w- j0 x! k/ r: x
B 配置JAVA_HOME, JAVA_HOME指向JDK的安装目录+ [: Q6 o2 O' V& w2 L
JAVA_HOME 的作用: 是指导"某些Java软件"找到JDK& }; D7 R3 D1 Z) P2 n) J( W& G
如: tomcat 服务器 就使用 JAVA_HOME
; a! g6 X: p2 g" e4 { 实例: export JAVA_HOME=/opt/jdk8 P/ O2 |; R# ?! B- ^
& g: G( ~6 h/ S1 Z* b
C 配置CLASSPATH, 指向Java类的部署目录或者Jar文件
) F, O& @* a. L/ b9 }& b) F( e 用来为JVM 指明Java类的搜索路径, Java在执行类的时候8 i( b8 G0 n0 t* K
在CLASSPATH指示的路径下查找类文件.
& k3 e" |) x9 D4 Q0 y5 [ 实例: export CLASSPATH=.
V/ @0 H' i7 q$ |7 r- X3 _
) G7 e* h0 P9 n, n) E) P! O Windows 参考 Java配置命令:
3 G6 e, G0 \( B& L1 J) a& h; f set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_01
% i& |& ^5 N4 b! @7 d7 @; W set CLASSPATH=.# r8 B6 C3 J# F, `6 J) j
set PATH=C:\Program Files\Java\jdk1.6.0_01\bin;%PATH%6 T) i2 o8 @5 K! b
9 A7 ~( E6 T+ ~% T8 package 与 CLASSPATH:
# V' Y( H6 p, G1 v 1) 是java中对类进行分类的
" f8 B( P4 d, H7 P; C- z 2) 包映射为系统的文件夹
& y: I; a0 |5 I( M5 b 3) java的类的全名: 全限定名=包名+类名
" H% x, [& h6 V/ n 4) 使用Java执行类时候要指定到 "全限定名") {+ E4 y8 |4 J; q
) ]/ C' Y: U" Z 5)Java 的 编辑 与编译实例:, I- F+ U1 t0 T2 S
cd demo+ e; V) I# U3 Q3 N; h2 L
vi HelloWorld.java (编辑(edit)Java源文件)
# s, [. u' H9 E' H- U. O/ a6 v mkdir bin (创建输出目录bin)
; K( s" c ?& I- @- l0 s javac -d bin HelloWorld.java (编译(Compile) 源文' O d" C) U8 h$ S% B7 }( d
件到bin文件夹, 在bin中生成包)5 l' X" x- w! S0 e! H
(下面设置 Java的类文件搜索路径, java执行时候利用这个# P, s; A: L( q
路径搜索Java的包和类文件)) A3 B+ }0 b' j
export CLASSPATH=/home/soft01/demo/bin
* u+ Y5 I3 R# z- Y) i8 A/ P* P java unix.day01.HelloWorld (执行java类, Java命令会
2 J2 a3 o5 R* X* j. h0 a 到CLASSPATH指定的系列路径中寻找包corejava.day01) W9 n4 l$ `, J5 P. J e, D! c
寻找包中HelloWorld.class 的字节码文件 )
1 j" n+ o2 X& [6 e. J* k% s) K4 T1 \) V. _
9 系统初始化脚本
" ^. T% `4 [, z: f B& k 1) 初始化脚本 是指在开机过程中自动执行的系统脚本文件
% u& F5 r, g8 l r 一般用来初始化系统环境# W. P* |# z! J. U
2) 系统级初始化脚本文件: /etc/profile 所有当前系统的用户
; @/ \, o1 K4 }* S6 P 登录时候都执行
0 ?: k; g3 k0 z) |; e+ c0 p; j) k1 m! M' c3 x8 `
|
|