Linux的一些指令与介绍
其实这是我为了期末考弄得的重点整理拉....(明天要考)
不知道对大家有没有帮助
PS.看完请祝福我...考试 顺利喔..感激不尽^^
#开机
1.kernel会执行/sbin目录下的init程式
2.init会执行/etc/rc.d/rc.sysinti
3.rc.sysinit中设定了很多的系统变数,即执行其他启动所需的动作
4.init会执行run level中所有的script(script档案中开头为S:启动 为K:不会启动
5.init会执行/etc/rc.d/rc.local中的script
#执行等级 预设等级存放在/etc/inittab中
0 Halt
1 Singual user mode
2 Multiuser,no NFS
3 Full multiuser mode(文字模式)
4 Unused
5 Xwindows
6 重新开机
压缩指令
#compress
compress A 产生A.z(且档案会被A.z取代)
-d 解压缩
#gzip
gzip A 产生A.gz(且档案会被A.gz取代)
zcat A.gz 不解开压缩就看里面的内容
-d 解压缩
#tar
-c建立备份档
-x解开备份档到目前的目录
-v显示详细资讯
-z同时使用压缩方式备份
tar -cvzf ./A.tar.gz ./A 将A目录打包后压缩成A.tar/gz
env 显示全部的环境变数
echo $home 显示home的环境变数
#shell 是一只程式、在Linux中担任解释及执行使用者命令
USER login后Shell就被载入记忆体=>Login Shell
Login shell 处理使用者输入输出及系统错误讯息
设定环境变数
解释使用者输入指令sh:最早的shell
bash:预设的shell
csh:功能多与C类似 最严谨
#shell script 整合繁琐指令步骤 符合个人化管理需求
优点:难度低 速度快
$:变数
' ':单引号内部视为字串 echo '$b" =>$b
" ":双影号内部视为字串(含空白)内部会判断变数 echo "$b" =>abc
/:目录
.:现在目录
..:上一层目录
` `:执行命令
Example: $c=`who`
echo $c =>who指令结果输出
>:重新导向 ps > a.txt 将ps指令所显示的内容存到a.txt
|:管道 A程式输入当成B程式输出
;:连续指令 echo $a;echo $b
#:注解 #!/bin/base 使用base来解译script
read:似C++的cin read $a 把keyin的资料丢给a
$1 $2 $3:?????
#变数宣告方法
(1)直接给予 varible-name=varible-value
example:a=5;echo $a
(2)read =c++的Cin
example:read(a)//将Keyin的值丢到a
(3)使用参数$ ???????????
example:
$abc 123 456
$1=123
$2=456
#for条件式: Example:
for 变数(var) in 条件式(list); sum=0
do for int in 1 2 3 4 5 6 7 8 9 0
commands do
done sum=$[sum + $int]
done
echo "1+2+3+4+5+6+7+8+9+0=$sum"
#if条件式 example:
if(test condication)then a=5
commands b=3
elif(test condiction)then echo $a
commands echo $b
else if (test $a = $b)then
commands echo a=b
fi//代表if end else
echo a!=b
fi
#test:
数字 逻辑 档案
==:eq and:-a -f:档案存在
>=:ge or:-o -d:目录
<:gt not:! -r:档案存在且可read
<=:le -w:档案存在且可write
<:lt -x:档案存在且可执行
!=:ne -s:档案存在且不是空的
[ ]:控制流程判断式 example:if [ $a -eq $b ]...省略了test
#case 判断式 example1: example2:
case word in read a read a
pattern) statement;; case $a in BB=`who | grep $1`
pattern) statement;; a) echo 1;; case $a in
esac b) echo 2;; a) echo $BB;;
*) echo 3;;//*=defult b) who | grep $1;;
esac *) echo 3;;
esac
#while判断式 example:
while [ condition ] times=0
do while [ $times -lt 10 ] //until [ $times -eq 10 ]
command do
done echo $times
sleep 1 //delay 1sec
times=$[$times + 1]
done
#until
until [ condition ]
do
command
done
#九九乘法表
for a in 1 2 3 4 5 6 7 8 9
do
for b in 1 2 3 4 5 6 7 8 9
do
echo "$a*$b=$[$a * $b]"
done
done
#FTP
ftp ftp.nsysu.edu.tw
>Td:anonymous
>passward:
cd:改变远端电脑的工作目录
get:取得远端电脑档案 example:get A.gz
put:将档案放到远端的电脑上 example:put A.gz
lcd:改变本地电脑的工作目录 example:lcd file
chmod:改变档案的存取权限
delet:删除远端档案
mkdir:建立新目录
quit:离开
ls,dir:列出远端目录
#Mail
mail address
>subject..... ctrl+c:中断编辑(按两次)
>CC:副本 ctrl+d:编辑完成并传送
mail 看信 h:看邮件
d:删除 example:d4 删除编号4的mail
R:回信给寄信者
r:回信给所有的收件人
用自己写好的讯息寄mail
-s:加标头 example:mail
a9307048@mail.ntust.edu.tw -s 'test'
<$Home/k.txt
#crontab执行例行的行程
-u:只有root可以下的参数,视察或编辑其他使用者crontab内容
-l:列出crontab内容
-e:编辑crontab内容
-r:删除
格式:分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 周(0-6)
*/5 * * * 1,3,5 a9307048 -s test
周一三五 每五分钟 执行
#gcc/cc
compiler c example:gcc hello.c 产生a.out执行档
建立object file gcc -c hello.c 产生hello.o
建立执行档 gcc -o hello[执行档档名] hello.o
多个档案编成一个file gcc -c main.c echo.c
gcc -o hi[执行档名称] main.o echo.o
若程式较小时可用:cc -o hi main.c echo.c
gcc -o sin sin.c -lm //(l:link,m:math)
ldd sin 看执行档有哪些lib
/lib
/usr/lib
-L/home/lib 指定函式库目录
-I/home/include/ 指定标头档目录(内建的存在/usr/include)