Linux基础知识课件.ppt
Linux基础知识,Linux基础知识,Linux目录结构,Linux目录结构/procbinetchomemntvar,Linux的目录结构,/bin常规执行程序的存放位置。如基本的命令:ls、mv、rm、mkdir、rmdir,基本的压缩和解压缩工具:gzip、gunzip、tar,基本的网络工具:telnet、ftp等等。而且/bin目录下的程序一般和/usr/bin有一个连接,也就是说/bin和/usr/bin这两个目录存放的文件几乎相同。,Linux的目录结构/bin,Linux的目录结构,/boot系统启动文件(内核)存放位置。/sbin存放一些系统管理的程序,如:fdisk、mke2fs、mkswap、mount等等。,Linux的目录结构/boot,/dev/存放设备文件。Linux把所有的设备都视为一个文件。例如第一块硬盘在linux中的设备文件叫“had”,而其他系统如dos使用名称c:来代表。Linux上面使用设备文件代表设备,这些文件只是设备的连接符号。,Linux的目录结构,/dev/Linux的目录结构,/etc几乎所有的系统设置文件都放在这个目录中。修改前最好先备份,如果出错可以立刻恢复正常。这里的每一个配置文件对系统管理都至关重要。修改之前请多了解一些相关知识。,Linux的目录结构,/etcLinux的目录结构,/tmp这是提供给一般使用者能够暂时存放文件的目录。/lost+found存放系统不正常关机或者其他原因所造成的流失文件,如果幸运的话能够在这里找到丢失的文件,Linux的目录结构,/tmpLinux的目录结构,/homeLinux系统每个使用者数据的存放位置。我们的工作目录基本在此。/libLinux在执行或者编译某些程序时时候需要某些函数库,这个目录就是存放一些共享库的地方。,Linux的目录结构,/homeLinux的目录结构,/var存放变动性较高的文件。如/var/log下面会存放系统日志。/var/spool里面存放电子邮件,打印队列和crontab等档案信息。/usr存放与使用者有关的文件。还包含很多子目录,以后会进行讲解。,Linux的目录结构,/varLinux的目录结构,/procProc是一个虚拟的目录。主要存放在内存中,而不是硬盘上。系统会为每个进程号建立一个目录,并且也会把每个进程当作文件来管理,提供目前系统正在使用的irq,i/o,DMA通道,CPU种类等相关环境信息。,Linux的目录结构,/procLinux的目录结构,常用命令,man查看帮助文档,可以查看命令、函数和常见配置文件等。如man bash ; man /etc/fstab-k 同apropos,在帮助文档中搜索用户输入的字符串info使用info来查看文档,也可以使用info方式来查看man文档。,常用命令man,常用命令,基本命令 ls 浏览目录文件或是节点信息(-i) cd 进入目录,如无参数,则返回用户主目录,相当于cd $HOME mkdir 建立目录,使用-p参数在建立目录时,如果不存在父目录, 那么直接建立父目录 rm 删除文件,-f为强制删除,-rf会删除目录,这种命令尽量少用, 并且少用通配符 more/less 查看文件内容 alias 建立别名,如alias ll=ls l; alias cdw=cd /home/work/work/ 注意:在查看大文件内容时,如程序日志文件,一定要不使用vi命令来查看,而要使用more/less这种命令来看,常用命令基本命令,常用命令,文本处理tail 查看文件后几行,-f参数查看当前文件所增加的行信息head 查看文件前几行sort 对文件内容进行排序,-k指定针对第几列进行排序uniq 去文件相同的行数去重,只能去相邻的行去除,使用-c可以得到每行出现的次数,对整体文件计算每行出现次数时通常与sort配合使用cut 得到文件第几列的信息diff 查找二个文件不同的内容,常用命令文本处理,常用命令,文本处理grep 搜索文件内所包含特定字串的行grep c baidu 查找文件中包含baidu字串的行数的总和grep c “” 只匹配baidu单词grep v baidu 返回不包含baidu的行grep E bidu|baidu 返回包含bidu或是baidu的行,-E为扩展正则表达式grep i baidu 忽略大小写,常用命令,常用命令,文本处理的强大命令sed & awksed通常使用在模式匹配替换字串,如sed e s/(.*)abcdefg(.*)$/ 1 2/ filename只打印二个括号内匹配的文本awk域处理函数,可针对文本的某个域进行处理,如awk $7+=sum END print sumfilename对文件的第七列进行求和,常用命令,常用命令,文本处理常用的命令是grep / awk / sed / sort /uniq 常用技巧:查看每秒的请求条数,假设日志第4列为时间,以秒为单位tail f log | cut d” “ f4 | uniq c计算apache请求的每个页面的访问次数awk a$7+ END for ( i in a) print ai,i access_log,常用命令,常用命令,其他find 查找文件 ,尽量不要在复杂目录中执行此命令find . name “*baidu*” find . type f name “*.txt” exec tar cvfz .tar.gz ;nohup 启动程序忽略hangup信号,使用nohup启动程序后,在用户logout系统后,程序继续运行,默认输入文件为nohuo.outcrontab 定时执行程序1 0 * * * somebin 每天零点一分执行程序*/5 * * * * somebin 每五分钟执行一次,相当于0,5,15,20注意:定时并不是十分准确,所以不要在0点做与日期相关的操作,常用命令其他,常用命令,网络相关命令ssh建立信任关系失败如何查找原因:1,权限2,认证key文件的文件名使用ssh在远程执行命令时的返回值为在远端命令的返回值,而非ssh本条命令.在远程执行命令时可以与scp在cp文件时使用同样的选项来避免因为key问题导致脚本hang住.,常用命令,常用命令,网络相关命令scpscp 使用ssh协议传输文件-r cp整个目录注意:scp 在传输文件时会hang住在做脚本时最好使用如下选项scp o PasswordAuthentication=no o StrictHostKeyChecking=no file mac:PasswordAuthentication 不使用密码验证方式StrictHostKeyChecking 不检查主机key,直接接受,常用命令网络相关命令,常用命令,网络相关命令wget 下载文件,支持ftp/http,要注意采用限速-r 下载整个目录netstat 查看网络连接状态-n 使用IP方式-a 所有的网络连接-p 显示进程名-i 网络流量,常用命令,常用命令,系统命令vmstat 系统状态命令,可查看系统当前状态,如vmsatat 1 10 间隔时间为1秒,显示十次当前系统状态iostat 显示系统当前io状态,iostat 1 10含义如上date 显示时间,如date d “1 days ago” +%Y%m%dps 当前程序状态pstree使用Tree方式显示进程top 实时显示系统及程序状态,可用-d指定刷新时间time 命令执行的时间,可以使用time dd if=/dev/zero of=test bs=1024k count=1024来查看io性能watch 默认每隔二秒执行一次命令,如查看文件内容的变化watch n1 cat filename,常用命令系统命令,vi指令模式,搜索/替换:1,50s/word1/word2/g:1,$s/word1/word2/gc刪除dd复制yy粘贴p:w :wq :q! :wq!,vi指令模式搜索/,管道 | 和重定向 ,把一个程序的输出接到另一个程序的输入 who | wc -l tmp“|”即是管道符号,也叫管道线 “”就是重定向符,你可以把它读作“重定向到”。 “”追加操作符,将内容追加到目标文件末。,管道 | 和重定向 把一个程序的输出接到另一个程序的输入,