Chinaunix首页 | 论坛 | 博客
  • 博客访问: 222994
  • 博文数量: 36
  • 博客积分: 3044
  • 博客等级: 中校
  • 技术积分: 356
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-20 18:31
文章分类

全部博文(36)

文章存档

2010年(36)

分类: LINUX

2010-03-12 23:37:09

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任.http://U16.cublog.cn
 
 
一.. &&和||的区别
1.第一个命令&&第二个命令&&第三个命令......
用这种方法可以执行多个命令,当碰到执行出错的命令后将不在执行后面的命令,如果没有出错,将一直执行下去.....
2..第一个命令||第二个命令||第三个命令......
用这种方法也可以执行多个命令,第一个命令执行成功了就不再执行下面的命令了,如果执行出错,则继续执行下一个命令....

二..几个零碎的知识点...
#yum -y install  fonts-chinese(如果有yum服务器我们可以直接通过此命令安装中文字体)
 #system-config-language &(打开语言栏,可以选择系统默认的语言)
 #yum  groupinstall  KDE(安装KDE桌面)
管理员UID永远是0,系统用户UID在1-499之间.普通用户UID大于500
 #id(查看当前用户的id号)
 #id  username(查看其他用户的id号)
 #id  -u(查看当前用户的uid号)
 #id  -u  username(查看其他用户的Uid号)
 #finger  username (查看某用户的相关信息)

 在一个命令提示符下可写入多个命令,彼此之间用分号隔开...for example
 #cd /etc;ls  -l
 #hwclock  -w (当硬件时间出错时我们将硬件时间与系统时间同步使用此命令)
 #makewhatis(生成一个whatis数据库,默认这个数据库不存在)
 #ls  -lh 目录名(查看某个目录中文件的大小以Kb和G显示)
 #ls  -lhd  目录名(查看摸个目录的大小)
 #man  -k  某个单词前几个字母(当忘记某一个单词时,这个命令显得特别有效,for  example    #man  -k  mou可以查到所有包含mou的单词)
 # vim  /etc/issue(在此文件中可修改开机启动欢迎界面..)
 #vim  /proc/sys/net/ipv4/ip_forward(当有双网卡时,做转发用就得编辑此文件,值默认是0将其修改为1即可..)
 #sysctl  -p (重新读取一下上面修改过的配置文件,使其生效..)
       切记:在linux上除了斜杠不能用于文件名,其他的任何字符都可用文件名,包括*号..for  example  #touch  '*a'(创建一个名为*a的文件)

  #ls  -R 目录名(递归显示目录中所有的文件)
  #ls  -r  目录名(倒序显示目录中所有文件)
  #cp  -v(显示过程)
          -r(递归拷贝)
  #cp   a  b  c  d  e(将a,b,c,d拷贝到e目录中)
  #stat  文件名(查看文件时间戳,包含三个:访问时间,修改时间,系统时间,touch可以修改文件的时间戳..这个切记)
    关于rmdir,此命令只能删除空目录,非空目录删除不掉的...
 #mkdir  -pv  a/b/c  (-p是指依次创建a/b/c三个目录..-v显示过程...)
 #mkdir  -pv  x/{y,z/a} (创建x,x/y,x/z,x/z/a这几个目录的技巧..)
 我们在来说下文件查看命令的使用...more,less,cat,tail,head命令的区别..
more和less命令使用功能差不多,不同之处在于less在显示文件可前后翻阅,而more查看文件只能向后翻阅...
head命令查看文件的前几行,默认显示10行,语法#head  -number  file..
tail 命令查看文件的最后几行,默认显示后10行.语法#tail -number  file.
#tail  -f  file  (监视文件的内容,如果在另外终端向此文件中写入数据,会立刻显示出来)
cat命令查看文件所有内容,若内容比较多时,最好分页显示.如果文件中含有特殊符号的话,使用-A选项,将其一块显示出来...
#cat  -n  file  (查看文件时,会将文件前编上序号.)
#cat   test1    test2 > test3 (将test1和test2中的内容追加到test3中去)
#cat  file1  file2 (可以将file1和file2中的内容一起显示出来.)
file权限:666-umask
directory权限:777-umask

只有管理员才能修改文件的权限,所属主和所属组....
修改权限使用chmod命令,如果修改目录权限,且目录中有很多子目录的话,使用-R选项,递归修改权限...
#cat  /etc/shells (查看系统当前可用的shell)
#echo  $SHELL (显示当前系统shell)
#echo  $PATH  (显示当前的所有的路径)
#echo  $HISTFILE (显示曾经输入命令存放的文件)
#history   -c  (清除所有曾经输入过的命令)
#history   -n  (显示最近执行的n个命令)

在命令行使用ctrl+R直接进入搜索状态...
#!! (把刚才执行的命令在执行一遍)
#!n (执行命令史第n个命令)
#!-n (执行命令史倒数第n个命令)
#vim   !$ (引用上一个命令的最后一个参数)
ctrl+方向键 (在编辑文件时可以一个单词一个单词的移动)
sort命令对文件的内容进行排序..(根据首字母进行正向排序,如果想反向排序使用-r选项)
wc命令进行文件内容统计.选项.
-l  统计行数.
-c 统计字节数.
-w统计字数.
#echo  $? 返回值为0表示上次输入的命令执行正确.
< (输入重定向)
> (输出重定向,会覆盖文件原有数据)
>> (追加输出重定向)
2> (错误重定向,若不错误则不重定向)
2>> (追加重定向)
&> (混合重定向,无论错误与否,都把结果定向到文件中去)

#NAME=tom (声明一个变量NAME)
#echo  $NAME (回显结果是tom,如果换个bash后就回显不出tom了.)
#bash (切换到另外一个bash)
#export  NAME=tom (这样声明变量即使进入另外一个bash,也能看到声明的变量)
#stat  file  (查看文件的访问,修改,系统时间)
#touch  -at  file (修改文件访问时间,格式:年 月 日)
#touch  -mt file (修改文件修改时间.格式:分 秒)
#tr  'a-z'  'A-Z'  

:w! 强行保存退出..
we 将光标跳到下一个单词.
b 键 (一个单词一个单词往回跳转)
G  文件跳到尾部
ctrf+f 下一屏
ctrl+b 上一屏
:%s/^[0-9]/#&/g锚定数字将其前加上一个#号.
小写的u用来撤销上次的修改.大写的U用来撤销所有的修改.
ctrl+r 恢复上一次的撤销.
小写的x用来删除当前光标所在处的单词..
#vim  -o   file (水平分割窗口)
#vim  -O  file  (垂直分割窗口)
#vim  .vimrc (只需在用户家目录下创建这个文件,写入set nu以后编辑文件直接就显示行号,非常方便)
:set  showmatch (符号配对时会用到.)
:set  ai --->set autoindent 自动缩进.
#vim  /etc/modprobe (修改网卡别名文件.)
#ifup   eth0 (临时启动eth0网卡)
#ifdown  eth0 (临时关闭eth0网卡)
#ifconfig  eth0  IP  netmask 掩码 (;临时配置IP地址,重启后消失)
#vim   !$ (这儿!$指上一个命令的最后一个参数)
#!-2 ---->命令史中倒数第二个参数.
#hostname   名字 ---->临时修改主机名字,重启消失.
ctrl+shift+t ----->打开多个控制台窗口
ctrl+page(down|up)----->窗口切换.
#lpc   status ---->查看打印机状态信息.

#system-config-date  (打开时间的窗口,配置NTP时用到)
#hwclock  -s (将系统时间与硬件时间同步)
#read   A  B (然后输入1和2,会自动将1值付给A,2值付给B
#ping    -c2   -w2   IP   &>/dev/null----->ping此IP,只ping两次,如果ping不通等待2秒再去ping,将返回的结果追加到/dev/null中去
#bash   -x    脚本---->执行脚本会用到
$[ ]或expr或let ---->运算三种方法.
if  [ -e  $FILE ] --->判断文件是否存在.
if  [ -e  $FILE1  -a   -e  $FILE2 ] 多个文件时加-a选项,表示and
#df   -lh  ---->查看磁盘使用情况...
#echo  -e  "IPADDR=$IPADDR  \nNETMASK=$NETMASK" >>$FILE ----->-e选项表示转义,且转义的内容一定要用双引号,不能用单引号,切忌...
#if   [ $(grep  'BOOTPROTO=dhcp'  $FILE) ] --->判断条件,内容要用括号括起来...在写脚本经常用到
#grep   -E   'BOOTPROTO|IPADDR|NETMASK'  $FILE ---->当要把一个文件中的多个内容搜索出来显示时要用-E选项..
#if   [  $[$I%2] -eq  0 ] ---->算术运算一定要用[ ] 引起来,而不是用(),这一点很重要,写脚本经常用到...

if   [ -f  $FILE ] ---->判断是否为普通文件.
$[ $A+$B ] 等效于$(($A+$B))
一个进程包含多个线程,init进程号永远为1。用户是通过进程来操作计算机的.
#ps   -a  ---->选择跟终端无关进程.
#ps   -e  ---->选择所有进程.
#ps    a  ----->选择跟终端有关进程.
#ps    aux  ---->此选项相当于-ef
%CPU  ---->进程获得时间比上占用的时间.
%MEM ---->使用内存与物理内存比.
优先级:-20-19 ---->数字越小优先级越高.
VSZ ---->占用虚拟内存大小.
RSS ---->占用物理内存大小.
START --->启动时间..
COMMAND --->哪个命令发起的进程.
#pidof  bash --->显示bash进程号.
ctrl+c  ---->向进程发起一个终止信号.
kill 默认15信号.
#kill   -9   PID ---->强行终止某进程.
/etc/aliases ---->定义别名的文件.
PR(优先级)  VIRT(占用虚拟内存和实际内存和)
NI(nice值)   RES(实际物理内存)  SHR(共享内存大小)
us --->userstates
sy ---->所有系统空闲占用cpu的比率.
ni ----->使用nice调整.
id ---->idle 空闲比率.
wa --->系统等待io的时间.(此比值不讷讷个超过30%)
hi ----->硬件中断次数.
si ----->软件中断次数.
st ------>偷拐时间.
#jobs --->查看作业(即将运行,或正在运行的,使用cron和crontable时用到.)
ctrl+z ---->将作业送到后台.
#fg   %1 --->将作业1调回前台运行.
#bg  number --> 将第n号作业送到后台继续运行.
#firefox & ---->打开浏览器,并且释放命令提示符.
#kill   %1 --->杀死jobs中第一号作业.若杀死的是进程则不加"%"
crond周期性执行任务.
at 一次性执行任务.
#at   指定时间
at>作业1
at>作业2
.......
定义完作业后使用ctrl+d退出..
#at   -l  ---->查看作业.此命令相当于#atq
#at   -c 作业号 --->查看作业的内容.
#atrm   作业号 --->删除作业.
#crontab  -e  -u  用户名
#crontab  -l  --->列出作业.
#crontab  -e --->定义自己的作业.
#crontab  -r  --->删除全部作业.--->作业存放在/var/spool/cron中.--->顺序:分  小时   天  月   年   星期
#alias   cls=clear ---->定义别名,可以用cls代替clear清屏..--->临时生效.
#vim  .bashrc --->可在此文件定义别名,且永久生效.--->编辑完后不能立即生效,使用sorce 文件名(重新读取一下配置文件)
#updatedb --->此命令用来建locate数据库.
#find  -size  +100M  -ok  mv {}  /tmp/largefiles/ \; --->在/tmp/largefiles/找到大于100M的文件将其删除.
 -perm  mode --->精确匹配
 -perm /mode --->匹配任何权限都可查到.
 -perm +mode --->和/mode一样.
 -perm  -mode --->匹配每一个.
阅读(2051) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~