第1章Linux目录结构Linux命令是严格区分大小写的ls显示指定目录下的列表No命令/参数作用1ls后面不带参数显示当前目录下的列表2ls/bin显示bin目录下的所有列表3ls–l显示当前目录下文件的详细信息(长格式输出)4ls/bin–l显示bin目录下文件的详细信息5ls-a显示所有文件,在linux中文件名以“.”开头表示隐藏文件6ls–a-l显示当前目录下文件的所有信息,这个命令可简写为“ls-al”或“ls-la”7ls-i显示文件的索引节点号,如果两个文件的索引节点号相同则内容一样8Ls-hl显示当前目录下文件的详细信息(长格式输出)并且显示文件大小Linux中文件的前缀表示的含义,在Linux中命令是严格区分大小写的chmod777test.txt表示test.txt文件所有用户和组都有权限可读、可写、可执行No文件类型前缀表示文件的类型或权限1-以“-”开头对应的文件是普通文件2d以“d”开头表示是目录3l以“l”开头表示对应的文件是符号链接4c以“c”开头对应的文件是字符设备文件5b以“b”开头对应的文件是块设备文件6蓝色显示表示该文件是目录7浅蓝色符号链接文件8默认颜色显示表示是普通文件9绿色显示表示是可执行程序,或者是可执行文件10红色显示红色表示压缩文件cd切换用户的当前工作目录No命令/参数作用1cd/bin切换到bin目录下2cd回车后直接回到宿主目录3cd~回车后直接回到宿主目录4cd$HOME回车后直接回到宿主目录5cd..回到上一层目录cp用于复制(copy)格式:cp复制的文件名目录/被复制的文件名No命令/参数作用1cpinstall.logDesktop/表示将当前文件夹下的install.log文件复制到Desktop目录下不改名2cpinstall.logDesktop/new_install.log表示将当前文件夹下的install.log文件复制到Desktop目录下改名为:new_install.log3cpanaconda-ks.cfginstall.loginstall.log.syslogDesktop/将当前目录下的三个文件复制到Desltop中,复制多个文件不能改名4cp-R/binDesktop/将bin目录复制到Desktop5[root@localhost~]#cpinstall.logDesktop/cp:是否覆盖“Desktop/install.log”?y[root@localhost~]#如果被复制的文件已经存在则会提示是否覆盖,输入y就覆盖了6cpinstall*Desktop/install*表示以install开头的文件都会被复制7cp-linstall.loghardlink.install.log给install.log创建硬链接,install.log和hardlink.install.log的索引号是相同的,代表文件的内容是一样的8cp-sinstall.logsymlink.install.log给install.log创建符号链接symlink.install.log-install.logmv文件的移动或改名No命令/参数作用1mvinstall.logDesktop/将install.log移动到Desktop目录下2mvDesktop/install.log.将Desktop目录下的install.log移动到当前目录3mvinstall.logmy.log将install.log改名为my.logpwd显示当前工作目录的绝对路径No命令/参数作用1pwd显示当前工作目录的绝对路径rm删除文件或目录No命令/参数作用1[root@localhost~]#rmsymlink.install.logrm:是否删除符号链接“symlink.install.log”?y删除symlink.install.log输入y表示删除2rm–fsymlink.install.log-f表示不带提示删除该文件3[root@localhost~]#rmtest/rm:无法删除目录“test/”:是一个目录如果是目录会提示是否删除,rmtest/没有带参数无法删除目录3[root@localhost~]#rm-rtest/rm:是否进入目录“test/”?yrm:是否删除一般文件“test//install.log.syslog”?nrm:是否删除一般文件“test//install.log”?nrm:是否删除一般空文件“test//123”?n删除test文件夹rm-rtest/,会提示是否进入文件夹。然后然后在循环的提示每个文件是否删除,y表示删除,n表示不删除[root@localhost~]#4rm-r-ftest/直接删除test文件夹和rm-rftest/的作用一样rmdir删除空目录No命令/参数作用1rmdirmydir删除mydir目录,只有文件夹为空才能删除2[root@localhost~]#rmdirmydir/rmdir:mydir/:目录非空当文件夹不为空时不能删除3rmdir-pa/b/c/d/e/f删除多级空目录chgrp改变文件所属的工作组No命令/参数作用1chgrpshwezhmydir2改变mydir2的工作组原来所属的工作组:root改变后的工作组:shwezh2chgrp-Rshwezhmydir2/将mydir2文件夹下面的所有文件改变为shwezh工作组3chgrp-R0mydir2/将mydir2文件夹下面的所有文件改变为root工作组,数字“0”表示root工作组的id好4groupaddt1增加t1组5cat/etc/group查看系统的组信息6useradd-gt1user1添加user1用户,并把该用户放在t1组里面7cat/etc/passwd查看Linux系统中所有用户的信息组的概念chmod改变文件的权限No命令/参数作用1chmodu=rwx,g=rw,o=rwinstall.log改变install.log文件的权限2chmodu-xinstall.log3chmodu+xinstall.log4chmoda=rinstall.log让所有的用户都只有读的权限5chmod644install.logchmod777test.txt表示test.txt文件所有用户和组都有权限可读、可写、可执行小结如何通过chmod去修改某个文件的访问权限①chmod[0-7][0-7][0-7]文件名②chmodu=rwx,g=rw,o=rx文件名③chmodu-r,g+x,o-r文件名chown改变文件的所有者和所属的工作组No命令/参数作用1chownshwezhinstall.log改变install.log文件的所有者为shwezh用户2chownshwezh:shwezhinstall.log同时改变install.log文件的所有者和所属的工作组为shwezh,冒号“:”也可以用点“.”来表示find在指定目录下查找文件No命令/参数作用1find/-namepasswd从根目录开始查找以“passwd”命名的文件2find/root-namemylinux-execrm-f{}\;从root目录开始查找文件名为mylinux文件,找到并删除。ln为文件创建链接No命令/参数作用1lninstall.loghardlink.install.log创建硬链接2ln-sinstall.logsys.install.log创建软链接mkdir创建目录No命令/参数作用1mkdirtest创建test目录2mkdir-pa/b/c/d/e/f创建多级目录whereis定位相关文件的路径whereis作用定位指令的二进制程序、源代码文件、手册页及相关文件的路径No命令/参数作用1whereisls显示ls指令的路径which查找显示给定指令的绝对路径No命令/参数作用1whichls查找ls指令的绝对路径file查看给定文件的类型No命令/参数作用1fileinstall.log查看install.log文件的类型touch改变文件的时间属性、创建新的空文件No命令/参数作用1touchinstall.log将install.log文件的时间改为当前时间2touchnulltext创建新的空文件3touchfile{1,2,3,4}批量创建文件locate查找文件的保存路径No命令/参数作用1locatepasswd查询passwd文件的保存路径,locate指令比find的效率高2updatedb要保证locate的执行效率,就要不定期的更新locate数据库dd复制文件并对格式进行转化updatedb和locate指令结合使用No命令/参数作用1updatedb用于更新locate执行是用的数据库,第一次执行的时候比较缓慢,要遍历整个文件的目录结构然后保存在数据库中去。要保证locate指令查询的准确就要更新数据库。dirname显示文件的路径No命令/参数作用1[root@localhost~]#dirname/etc/httpd/conf/httpd.conf/etc/httpd/conf[root@localhost~]#在命令行使用的频率不高,主要在shell编程中要用到pathchk检查文件的路径是否具有可移植性没有任何提示表名文件路径可用unlink删除指定的普通文件basename去文件名称的路径和后缀信息在shell编程中经常使用rename批量重命名文件第2章vi编辑器的使用No命令/参数作用1vi进入vi有欢迎界面2按Esc键输入“:q”回车就可以退出3videmo.txt如果存在则打开,不存在就会创建4i进入编辑状态,输入的内容插入到当前光标之前5按Esc键进入命令状态6I在行首插入新的文本7a在当前光标后边,追加新的文本(append)8A在当前行尾追加文本9o小写“o”在当前行下面插入一个空行10O在当前行的上面插入一个空行11:q!强制退出不保存12:q退出,如果文件修改会提示要保存13:w保存14:wq保存并退出15:x保存并退出16按住Shift键,按两次Z键保存并退出17H、J、K、L在命令状态可以控制光标的移动18上下左右键在命令状态可以控制光标的移动19:30切换到第30行20:$在最后一行21yy复制当前光标所在的行22p在当前光标所在的行复制粘贴的内容emacs文本编辑器ed行文本编辑器ed在编辑超大规模的文件的时候比较有用,如果文件很大使用vi很不方便,可以以行的方式把文件调入内存操作。No命令/参数作用1edtest.txt输入1会显示第一行的内容,输入行号就显示第几行的内容2i进入输入模式3.“.”小点表示进入命令模式4w保存对文件的修改5q退出第3章cat查看文本的内容一般显示比较短的文本文件No命令/参数作用1cattest.txt查看test.txt的内容2cat-stest.txt在test.txt中如果有多个空行,则合并为一个空行more分屏查看文本的内容一般显示比较短的文本文件No命令/参数作用1moredemo.txt分屏显示demo.txt的内容.回车键向下显示一行空格键向下显示一屏2/root搜索含有root内容的那一行3n查找下一个含有root的行4按q键退出5psaux|more结合管道命令使用,将系统信息分屏输出6ls/etc/-l|more分屏查看etc目录下的文件less分屏显示文本文件内容和more的用法类似,搜索功能和vi类似grep找出文本中与给定的模式匹配的行No命令/参数作用1greproot/etc/passwd搜索passwd文件中含有root的行2grep-n'fs$'/proc/filesystems找出以fs结尾的行,grep指令可以和正则表达式匹配使用head显示文件的头部内容No命令/参数作用1headdemo.txt默认会显示demo.txt的前10行内容2head-n15