linux系统运维经常使用基本命令详解

 

一、lsnode

文件属性: 
-:普通文件 
d:目录文件 
b:块设备 
c:字符设备文件 
l:符号链接文件 
p:命令管道 
s:套接字文件 
 
文件权限: 
9位数字,每3位一组 
文件硬连接次数 
文件所属主(owner) 
文件的属组(group) 
文件大小(size),单位默认是字节 
 
ls经常使用选项: 
-l:显示文件属性,ls -l=ll 
-h:作相应的单位转换显示 
-a:显示全部文件 
-A:显示.和..觉得的全部文件 
-d:显示目录自身属性 
-i:显示文件的缩影接点号码(index node ,inode) 
-r:逆序显示文件列表 
-R:递归显示文件 

二、cdlinux

cd:change directory 
cd:回到用户的家目录 
cd ~username:进入指定用户的家目录 
cd - :在当前目录和前一次所在的目录来回切换 
cd ..:切换至其父目录 

三、printenv显示当前环境变量信息正则表达式

四、时间管理shell

date:显示系统时间 
clock:显示硬件时间 
hwclock -W:把系统时间同步到硬件时间 
hwclock -s:把硬件时间同步到系统时间 
cal:显示日历 

五、命令帮助数据库

内部命令帮助:help COMMAND 
外部命令帮助:man  COMMAND 
命令手册:manual 
whatis COMMAND:显示此命令在man帮助的哪一个章节内。 
============================================================
man的操做命令: 
空格:向后翻一屏 
b:向前翻一屏 
ENTER:向后翻一行 
k:向前翻一行 

============================================================vim


关键字查找 
/KEYWORD:向后查找关键字 
?KEYWORK:向前查找关键字 
n:下一个关键字位置 
N:前一个关键字 
q:退出man帮助 

 
六、file
file:用于查看普通文件和系统文件的类型
七、mkdirwindows

mkdir:建立目录 
rmdir:删除目录 
   -p:递归建立 
   -V:显示建立信息 

 
八、rm缓存

rm:删除文件 
-i:交互式删除 
-f:暴力删除 
-r:递归删除 
命令能够组合利用 

九、touch服务器

touch:建立文件 
-c:文件存在的时候不在建立 
-a:只改变文件的访问时间 
-m:只改变文件的修改时间 
-t:本身设定文件的时间戳(年月日时分.秒),与a、m配合使用 

十、cp网络

cp:文件复制,规则:只有最后一个为目标。复制一个文件到一个文件  或者 多个文件
到一个目录! 
  cp /etc/passwd /tmp/   复制到目录下并保存原文件名 
  cp /etc/passwd /tmp/test 看test是文件仍是目录,目录:负责到目录内,
文件则替换!
============================================================== 
  -r:递归复制目录 
  -i:交互式显示复制 
  -f:强制复制,覆盖 
  -p:保留源文件的属性,时间戳 
  -a:保留源文件的全部属性 
  -P:复制连接文件时保存为连接(默认是复制连接所指向的文件) 
  -d:复制时保持连接 
  -a:归档复制,经常使用与备份 

十一、mv

mv:移动或重命名文件 
mv SRC(源) DEST(目标) 
在统一目录下能够利用mv进行重命名: mv abc bcd 或者 mv -t 目标 源 

十二、cat

 
cat:链接并显示文件的信息,是所有显示文件内的信息 
  -n:在显示的时候能够显示行号,这个行号只是显示出来,跟文件内容没有  关系 
  -E:显示每一行的行结束符,因此linux中文本文件的行结束符是$符 
  -T:能够显示制表符 
  -v:显示其余的非打印字符 
  -A:显示全部的符号 

1三、more

 
more:more的做用同cat是相同的,只不过这时咱们能够经过手动来翻屏,更加方便
,more:只支持向后翻,翻到最后
就直接退出了 
less:显示文件信息,默认不退出显示,q便可退出 
  空格:向后翻一屏 
  b:向前翻一屏 
  ENTER:向后翻一行 
  k:向前翻一行 
关键字查找 
  /KEYWORD:查找关键字 

1四、head、tail

 
head:显示文件的前几行,默认是10行 
  -NUM:显示前多少行 
tail 
tail:显示文件的后几行,默认是10行 
  -NUM:显示后多少行 
  -f:查看文件尾部,并且不退出,等待显示后续追加的新内容; 

1五、cut

 
cut:用于剪切数据的内容 
  -d:指定字段分隔符,默认的是空格  cut -d: -f7 空格符 cut -d'' 
  -f:指定要剪切显示的字段 
  -f 1  表示显示第一个字段  cut  -f1 
  -f 1,3表示显示第一个和第3个字段 
  -f 1-3表示显示从1到3的字段 

1六、sort 、uniq、wc

 
sort:文本排序,仅仅是对显示文件的排序,而不影响源文件的顺序,是根据ASSII码
的字符升序来排列的。 
  -n:安装数值大小从小到大排列 
  -r:降序排列 
  -t:指定字段分隔符 
  -k:从哪一个字符开始,就是指定关键字排列 
  -u:相同的行只显示一次 
  -f:忽略字符大小写 
================================================================
uniq:报告或者忽悠重复行 
  -d:只显示重复行 
  -c:显示某一行的重复次数 
================================================================
wc:文本统计,能够统计文件中一共有多少行数,多少个单词数,多少个字节数 -l:只显示行数 -w:只显示单词数 -c:只显示字节数 -L:显示最长的一行包含多少个字符

1七、tr

tr:转换或删除字符 
 tr [OPTION]...SET1 [SET2] 
  例如# tr ab AB   把小写ab都换位大写AB 
  -d:能够实现删除出如今字符集中的全部字符 
 
1八、aliase 
  aliase:定义shell命令的别名 
  alias CMDALIAS=COMMAND 
  unalias CMDALIAS是撤销命令别名 
===========================================================================================
1九、权限 
  权限: r 、w 、x 
  文件: 
  r:可读,可利用相似 cat等命令查看文件内容 
  w:可写,能够编辑或删除此文件 
  x:可执行,能够再命令提示符下当作命令提交给内核运行。 
  目录: 
  r:能够对此目录执行LS以列出内部的全部文件 
  w:能够在此目录中建立文件 
  x:可使用cd切换进此目录,也可使用ls -l查看内部文件的的详细信息。
===========================================================================================
20、useradd 
  useradd NAME:增长用户 
    -u UID:指定用户所属主ID 
    -g GID:指定基本组ID或者组名(此组必须首先存在才能用) 
    -G GID:定额外组(附加组),能够指定多个,彼此之间用逗号隔开便可(此附加
组必须首先存在才能用) 
    -c "COMMENT"指定注释信息 
    -d /path/to/somedirectory指定用户的家目录,不用的时候默认在home下面
创建一个和用户同名的目录。 
    -s 指定shell,路径最后是etc/shells文件内规定的shell路径。 
    -M 不给用户建立家目录 
    -r 建立一个系统用户,共系统调用,并不创建家目录 
userdel USERNAME:删除用户 
            (不加参数时,默认不删除用户的家目录) 
    -r :删除用户的同时也删除家目录 
===========================================================================================
2一、id 
  id命令:查看当前用户的id信息 
    -g USERNAME:查看用户的gid 
    -u USERNAME:查看用户的uid 
    -G USERNAME:查看用户的全部组 
    -un:显示当前用户的用户名 
   -gn:显示当前用户的组名 
===========================================================================================
2二、finger 
  finger命令:查看用户帐户信息 
    finger USERNAME 
===========================================================================================
 
2四、用户帐户属性管理 
  usermod:修改帐户的属性 
  usermod [option] USERNAME 
    -u:修改UID 
    -g:修改GID 
    -G:修改附加组 
    -a -G:增长附加组,不覆盖以前的附加组 
    -c:修改用户的注释信息 
    -d:为用户知道新的家目录 
    -d -m :指定信家目录并移动此前家目录的文件至新的家目录内 
    -s:修改用户的默认shell 
    -l:修改用户名 
    -L:锁定用户帐户 
    -U:解锁帐户
==========================================================================================
 
2五、用户密码管理 
   passwd USERNAME 
     -l:锁定帐户 
     -U:解锁帐户 
     -d:删除用户密码 
     -n:用户密码最短期 
     -x:用户密码最长使用时间 
   pwck:检查用户帐户完整性 
==========================================================================================
 
2六、组管理 
 groupadd:新建组 
 groupadd [option] GROUPNAME 
    -g :GID指定GID 
    -r :添加为系统组 
 groupmod:组属性 
 groupmod [option] GROUPNAME 
   -g GID:修改gid 
   -n NAME:修改组名 
 gpasswd:修改组密码 
 gpasswd GROUPNAME 
===========================================================================================
2七、chage 
 chage:更改用户帐户信息 
   -d:最后一次修改时间 
   -E:过时时间 
   -I:非活动时间 
   -m:最短时间限 
   -M:最长期限 
   -W:警告时间 
===========================================================================================
2八、chown 
 chown:改变文件属主、属组,只有管理员是也此命令 
 chown USERNAME file....(只改变目录自己) 
    -R 递归修改(修改目录及其内部文件的属主) 
    --reference=/path/to/somefile file... 把file的属主设定为与
somefile的属主同样(不须要指定属主) 
   chown USERNAME:GRPNAME fiel... 同时改变属主和属组 
   chown USERNAME,GRPNAME fiel... 同时改变属主和属组 
   chown :GROUPNAME fiel....   修改属组 
===========================================================================================
2九、chgrp 
 chgrp:修改文件属组 
 chgrp GROUPNAME file....(只改变目录自己) 
    -R 递归修改(修改 目录及其内部文件的属组) 
     --reference=/path/to/somefile file... 把file的属主设定为与
somefile的属组同样(不须要指定属组)    
===========================================================================================
30、chmod 
 chmod:修改文件的用户权限 
 chmod MODE file... 
    -R:递归修改 
    --reference=/path/to/somefile file... 
    chmod 755 file... 
 修改某类用户的某些权限 
  u:属主 
  g:属组 
  o:其余 
  a:全部 
    chmod 用户类别=MODE fiel.. 
    chmod u=wr,g=w /fiel.. 
    chmod uo=wr /file.. 
 修改某类的用户某位或某些位权限 
    chmod 用户类别[-/+]MODE fiel.. 

 

3一、echo 
  echo:输出信息 
  echo "abc" 
  echo "字符串" | passwd --stdin USERNAME:利用管道修改用户密码 
 
3二、输入、输出重定向 
 
   输出重定向:> 覆盖输出(会覆盖原文件内的内容) 
    : >> 追加输出(不覆盖原文件的内容) 
    set -C :禁止对已经存在文件使用覆盖重定向 
    set +c :关闭上述功能 
    2>:重定向错误输出,不能输出正确信息 
    2>>:追加方式实现错误输出 
    &>:重定向标准输出或错误输出至同一个文件。 时覆盖方式 
    输入重定向:<  
    <<:此处生成文档 
    cat << END :输入信息,直至输入END时结束。(EOF或者END表明文档输入结束) 
    cat >> /tmp/myfile.txt << END 
===========================================================================================
3三、grep 
 
   grep:根据模式,搜索文本,并将符合模式的文本行显示出来 
   -i 忽略大小写 
   --colour(color)颜色显示 
   -v 反向查找,显示没有被模式匹配的行 
   -O 只显示被模式匹配的字符串 
===========================================================================================
3四、sed 
   sed:流编辑器,把文本中的某一行读取到内存中进行处理,此内存空间称为模式空间。
默认不编辑原文件,只对模式空间内的数据进行处理,处理结束后,将没模式空间打印至
屏幕 
   sed 'AddressCommand'  file... 
    -n :静默模式,不在显示模式空间中的内容 
    -i :直接修改原文件 
    -e :(-e SCRIPT -e SCRIPT) 能够同时执行多个脚本 
    -f /PATH/TO/SED_SCRIPT: sed -f /path/to/sed_script file 
:执行脚本文件 
    -r :使用扩展的正则表达式 
    d:删除符合条件的行 
     fg:/etc/inittab    删除1-2行 
     sed '/root/d' /etc/fastab 删除包含root的行 
    p:显示符合条件的行。 
     fg:sed '/^\//d' /etc/fastb 删除以/开头的行 
     sed '/^\//p' /etc/fastb 显示以/开通的行 
    a \string:在指定的行后追加新的行,内容为string 
    i \string:在指定的行前面添加新行,内容为string 
    r FILE :将指定的文件的内容添加至符合条件的行处 
    w FILE :将地址指定范围内的内容另存至指定的文件中 
    s/pattern/string/ :查找并替换(默认只替换每行中第一次被pattern匹配
到的字符串)  把pattern匹配的字符换为string 
    修饰符:g 全局替换   s/pattern/string/g 
    i 忽略字符大小写 s/pattern/string/i 
    s///=s###=s@@@ 在找/时就不用转意了。 
    &:后向引用,引用模式匹配的整个串 
===========================================================================================
    fg:sed练习: 
    一、删除/etc/grub.conf文件中行首的空白符; 
      sed -r 's/^[[:space:]]+//g' /etc/grub.conf 
    二、替换/etc/inittab文件中"id:3:initdefault:"一行中的数字为5; 
     sed 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab 
     sed 's@\(id:\)[0-9]\(:initedefault)@\15\2@g' /etc/inittab 
    三、删除/etc/inittab文件中的空白行; 
     sed '/^$/d' /etc/inittab 
    四、删除/etc/inittab文件中开头的#号;  
     sed 's/^#//g' /etc/inittab 
    五、删除某文件中开头的#号及后面的空白字符,但要求#号后面必须有空白字符; 
    sed 's/^#[[:space:]]\{1,\}//g' /etc/inittab 或者
sed  -r 's/^#[[:space:]]+//g' /etc/inittab 
    六、删除某文件中以空白字符后面跟#类的行中的开头的空白字符及# 
      sed -r 's/^[[:space:]]+#//' 1 
     七、取出一个文件路径的父目录名称; 
       echo "/etc/rc.d" | sed -r 's@^(/.*/)[^/]+/?@\1@g'  
以/.*/开头,[^\]指非斜杠,\1引用左边第一个括号内的内容一次。 
      echo "/etc/rc.d" | sed -r 's@^/.*/([^/]+)/?@\1@g' 
 提取本文件 

===========================================================================================
3五、vim 
    vim:文本编辑器,全屏、模式化的编辑器 
   vim模式: 
        编辑模式(命令模式):默认 
        输入模式 
        末行模式
------------------------------------------------------------------------------------------
    vim模式转换: 
    一、从编辑模式-->输入模式 
      i:在当前光标所在字符的前面,转为输入模式 
      a:在当前光标所在字符的后面,转为输入模式 
      o:在当前光标所在行的下方新建一行,并转为输入模式 
      I:在当前光标所在行的行首,转为输入模式 
      A:在当前光标所在行的行尾,转为输入模式 
      O:在当前光标所在行的上方新建一行,并转为输入模式 
---------------------------------------------------------------------------------------
     二、从输入模式-->编辑模式 
       键入esc键。 
     三、末行模式:必须从编辑模式进入末行模式 
       键入:便可。 
     四、末行模式-->编辑模式 
       敲esc键,一次或者屡次。

-------------------------------------------------------------


 vim退出文件: 
    一、末行模式下关闭文件 
       w:保存文件 
       q:退出 
       wq:保存并退出 
       q!:不保存并退出 
       w!:强制保存 
       wq=x 保存退出 
    二、编辑模式下退出 
      大写ZZ:保存退出 
------------------------------------------------------------------------------------------
 vim下移动光标(编辑模式):  
 一、逐字符移动: 
     h:向左 
     l:向右 
     j:向下 
     K:向上 
     #h:移动#(数字)个字符 
   二、以单词为单位移动 
     w:移动下一个单词的词首 
     e:移动到当前单词的词尾或者下一个单词的词尾 
     b:移动到当前单词的词首或者上一个单词的词首 
     #w:一次跳#个单词。 
   三、行内跳转 
     0:跳到行首(绝对行首) 
     ^:跳到第一个非空白字符的行首 
     $:绝对行尾 
    四、行间跳转 
     #G:直接跳转至第#行上。 
     G:直接跳转至最后一行 
 末行模式下跳转:直接给出行号,回车便可。 
-------------------------------------------------------------------------------------------
   vim翻屏: 
     ctrl+f:向下翻一屏 
     ctrl+b:向上翻一屏 
     ctrl+d:向下翻半屏 
     ctrl+u:向上翻半屏 
-------------------------------------------------------------------------------------------
   vim删除字符: 
     x:删除光标所在处的单个字符 
     #x:删除光标所在处及向后的共#个字符 
   vim删除命令:d 
     d命令与跳转命令结合使用 
     d$:删除到行尾。 
     #d跳转符:删除跳转符指定的#个字符 
     dd:删除当前光标所在行 
     #dd:删除包括光标所在行以内的#行 
   末行模式下可使用: 
      startADD,ednADDd 
      1,10d:删除第一行到第十行 
      .,100:删除当前行到100行。 
      .表示当前行 
       $:最后一行 
       +#:向下的#行 
       $-10:倒数第10行 
       vim删除的内容为保存在缓冲中,最后一次删除的内容能够粘贴。 
-------------------------------------------------------------------------------------------
   vim粘贴命令:p 
     p(小写):若是删除的或复制的为正行内容,则粘贴至光标所在含行的下方,若是
复制或删除的内容为非整行,则粘贴至光标所在字符的后面     
     P(大写):若是删除的或复制的为正行内容,则粘贴至光标所在含行的上方,若是
复制或删除的内容为非整行,则粘贴至光标所在字符的前面 
     vim复制命令:y 
      y的用法同d 
      yy:复制一行 
      vim先删除内容,再转换为输入模式:c 
    c的用法同d命令 
      cc:删除一行,并进入输入模式。 
      c$:删除到行尾,并进入输入模式 
-------------------------------------------------------------------------------------------
    vim下撤销编辑操做命令:u 
        u:撤销上一次操做,连续u命令能够撤销此前的n次操做 
        #u:直接撤销最近#次编辑操做 
-------------------------------------------------------------------------------------------
    vim超找替换 
      /PATTERN:从行首向下查找PATTERN匹配的选项 
      ?PATTERN:从行尾向上查找PATTERN匹配的选项 
    vim查找并替换:s 
     在末行模式下使用s命令 
     用法与sed同样 
     ADDR1,ADDR2s@PATTERN@string@gi 
     g:全局 i:忽略大小写 
     .,$-1 :当前行到倒数第一行 
     1,$表示全文 
    vim下shell交互 
     :!COMMAND 回车查看,查看完之后再回车,进入vim编辑模式。 
-------------------------------------------------------------------------------------------
 vim高级话题 
     一、显示或取消显示行号 
        :set nu 
        :set nonu 
     二、设定忽略或区分大小写 
       :set ignorecase  
       :set ic 忽略 
       :set noic 
     三、设定自动缩进 
       :set autoindent 
       :set ai 缩进 
       :set noai 
     四、查找到的文本高亮显示或取消高亮显示 
       :set hlsearch 高亮显示 
       :set nohlserch 取消 
    五、语法高亮 
       :syntax on 开启 
       :syntax off 关闭 
 
3六、let 
    
let:至关于一个小的计算器 
     let SUM+=$I ;sum等于sum+I 
     let I+=1:让I等于I加1 
     let I++:让I等于I加1 
     let I-=至关于let I--:I等于I减1 
 
3七、locate 
    
 locate:查找文件,非实时的、模糊匹配,全系统文件数据库的查找命令 
     updatedb:手动生成文件数据库,新安装的系统没有数据库的,速度快 
 
3八、find 
   
 find:实时查找、精确、遍历指定目录中的全部文件完成查找,速度慢、支持众多
查找标准 
    格式:find 查找路径 查找标准 查找到之后的处理运做 
    查找路径:默认为当前目录 
    查找标准:默认为指定路径下的全部文件 
    处理运做:默认为显示到屏幕 
-------------------------------------------------------------------------------------------
匹配标准 
    -name 'FILENAME':对文件名进行精确匹配 
          还支持文件名通配符:*:任意长度的任意字符 
    -iname 'FILENAME':文件名匹配不区分大小写 
    -regex PATTERN:基于正则表达式进行文件名匹配 
    -user USERNAME:基于文件所属主进行匹配查找 
    -group GROUPNAME:基于文件的属组进行查找 
    -uid UID:基于文件的uid,用户被删了之后id号会保存下来 
    -gid GID:文件组 
    -nouser:查找没有属主的文件 
    -nogroup:查找没有属组的文件 
    -type :根据文件的类型来查找 
       f:普通文件 
       d:目录 
       p:管道 
       s:套接字 
       l:连接 
       -size:指定文件的大小 
      [+|-]#K:大于或者小于#k的文件 
-------------------------------------------------------------------------------------------
时间戳查找 
       单位为天 
       -mtime :修改时间 
       -atime :访问时间 
       -ctime:改变时间 
       支持[+|-]#: 
          5:五天那一天访问 
       -5:五天以内 
       +5:至少五  天以外 
      单位为分钟 
      -amin:访问时间 
      -cmin:修改时间 
      -tmin:改变时间 
       文件的权限查找 
         -perm mode(755):精确查找 
              fg:find 路径 -pern 755 
         -perm /mode : 三位匹配一位就能够              
      -perm -mode:文件权限能彻底包含此mode才能够显示 
       执行动做: 
     -print:默认的,显示 
     -ls:相似ls -l的形式显示匹配到的每一个文件的详细信息 
     -ok COMMAND {} \;每一个操做须要用户确认 执行命令,必须以\;结尾。
{}表明匹配到的文件。          
        -exec COMMAND {} \;不须要确认,执行命令,必须以\;结尾。{}表明
匹配到的文件。 


=========================================================================================
3九、SUID 
    
suid:运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者所属主 
       添加文件的SUID:chmod u+s FILE 
                   chmod u-s FILE 
     若是FILE原本原来就有执行权限,则SUID显示为s,不然为大S。 
    SGID:运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者所属
的基本组 
    chmod g+s  FILE 
    chmod g-s  FILE 
    fg:一个团队,三个用户:hadoop、hbase、hive,一个开发目录
/tmp/project,要求这三个用户能够同时修改同一个文件。查看、编辑、等权限 
     三个用户同属一个基本组,并要求基本组具备查看、编辑权限。。 
      groupadd devdeop 
      chown -R :develop /tmp/projest 
      usermod -a -G develop hadoop 
      chmod g+s /tmp/project 
      而后就能够进行建立、修改、删除同一个文件了。 
===========================================================================================
40、sticky 
    sticky:规定在一个公共目录,每一个人均可以建立文件、删除本身的文件,但不
能删除别人的文件。 
     chmod o+t DIR:对目录增长sticky权限 
     chmod o-t DIR:去掉目录的sticky权限 
     chmod 1755 /backup/test 表示文件具备sticky权限 
 
4一、facl 
    facl:利用文件扩展保持额外的访问权限 
    setfacl:设置某文件的控制权限 
         -m:增长facl 
         u:设定用户的时候,后面加上u:UID:perm  
         fg:setfact -m u:UID:rw file 
         g:设置组 
        -x:取消facl 
    getfacl:查看文件的facl权限 
 
4二、whoami 
    whoami:显示当前用户是谁,su半切换的时候显示的是切换以前的那个用户 
 
4三、who 
    
who:查看当前登陆系统的用户以及他所登陆的终端 
      -r:显示当前运行级别 
      -H:第一回列表显示各列名称 
    w:显示比who更详细的信息 
 
4四、last 
    last:显示当前系统上的登陆日志(/var/log/wtmp文件),包括系统用户和
重启信息 
   last -n 数字:只显示最近几回的登陆信息 
4五、lastb 
    
lastb:显示用户错误的登陆常识 
    lastb -n 数字:只显示最近几回错误的登陆信息。 
 
4六、lastlog 
    lastlog:显示每一个用户最近一次成功登陆的信息 
    lastlog -u USERNAME:显示指定用户最近一次的登陆信息 
4七、basename 
   
 basename:显示一个目录的基名 
      basename /etc/abc/me 直接显示me 
      $0:命令名称或者脚本自己的路径。 
      basename $0:直接调用脚本自己路径 
==========================================================================================
4八、mail 
    mail:邮件查看,能够查看邮件,查看之后就会放到用户的家目录内mbox文件夹内。 
     -s主题 
     mail -s "How are you " root   
     cat /etc/fast | mail   -s "How are you "   root 
 
4九、hostname 
    hostname:显示当前主机的名称 
    hostname 主机名:更改主机名 
       fg:如当前主机的名字为空,或者(none)或者为(localhost),就将其
改成www 
      [ -z` hostname` -o `hostname` == "(null)" -o `hostname` 
== "localhost" ] && host www. 
       -z:表示是否为空
 
50、RANDOM 
    
RANDOM:0-32768直接的随机数 
    echo $RANDOM:生成随机数 
  ln:建立连接文件 
  ln SRC DEST:建立硬连接 
    -s:建立软链接 
    -i:显示文件的inode号 
    -v:显示执行结果 
   硬件链接: 
   一、只能对文件建立,不能应用于目录,文件的硬连接次数为2 
   二、不能夸文件系统 
   三、建立硬连接会增长文件被链接的次数 
   符号链接: 
   一、可应用于目录 
   二、能够跨文件系统 
   三、不会增长被链接文件的链接次数 
   四、其大小为指定的路径所包含的字符个数 
===========================================================================================
5二、du 
    
du:显示目录下的全部文件的大小 
       -s:显示目录大小 
       -sh:单位换算后显示
================================================================ 
5三、df 
    
df:显示整个磁盘分区的使用状况 
        -h:显示空间大小 
===========================================================================================
5四、fdisk 
    fdisk:磁盘分区 
    fdisk /dev/sda 
    p:显示当前磁盘上的分区 
    n:建立一个新的分区 
        e:扩展分区 
        p:主分区 
    d:删除一个分区 
    w:保存退出 
    q:不保存退出 
    t:修改分区类型 
    l:显示全部支出的分区类型 
===========================================================================================
5五、partprobe:把新的分区同步到内核上去。
 
5六、mkfs 
    mmkfs:建立文件系统 
    mkfs -t FSTYPE 指定分区 
    -t能够实现多种系统的格式化    如mkfs -t ext2 /dev/sda5  
 
5七、mke2fs  
    mke2fs:专门管理ext系列的文件的命令,不跟任何参数,指的是建立ext2 
       -j:指的是建立ext3类型文件系统 
       -b BLOCK_SIZE:指定块大小,默认为4096;可用取值为1024,2048或
4096 
       -L LABEL: 指定分区卷标;例如 mke2fs -L MYYY /etc/sda5 
       -m #:明确指定预留给超级管理员用的快熟百分比 mke2fs -m 3 
/dev/sda5
 
       -i #:指定为多少个字节的空间建立一个inode , 默认为8192;这里给出的
数值应该为块大小的2^n被  mke2fs -i 4096  表示4096个字节建立一个inode 
      -F:强行建立文件系统; 
      -E:用于指定额外的文件系统属性; 
      -N#:指定inode个数; 
5八、blkid 
    blikd:查询或查看块设备的属性,其中有包含文件系统的信息 
 
5九、e2lable 
   
 e2lable:专门用于查看或定义卷标 
    查看卷标  e2label /dev/sda5  
    设定卷标  e2label 设备文件 卷标   :即实现设定卷标   e2label 
/dev/sad6 YYY 
           (这里的设备文件即/dev/sda5) 


60、tune2fs  
    tune2fs:调整文件系统的相关属性 
        -j:不损坏原有数据,将ext2升级为ext3,可是不能降级 
        -L LABLE:设定或修改卷标 
     -m #:调整预留百分比 
        -r #:预留块数 
        -o:设置默认挂载选项,其中有一个是acl,acl是一个功能,但须要挂载才能
使用,不然是不能用的  
 -c #:指定挂在次数达到#次以后进行自检,指定0或-1表示关闭此功能,不自
检; 
       -i #:能够指定每挂载使用多少天后进行自检:0或-1表示关闭此功能; 
       -l:显示超级块内容 
===========================================================================================
6一、dumpe2fs 
    dumpe2fs:以显示文件系统中超级块信息或文件的属性信息,同上面的tun2fs -l
选项相似,都是很重要的命令,其中也显示超级块的信息,FREE是空闲的意思 
    -h:表示只显示超级块中的信息 
6二、fsck 
    fsck:检查并修复Linux文件系统 
       -t TYPE:指定文件系统类型 
       -a:自动修复 
6三、e2fsck 
    e2fsck:专门用来检查修复ext2或ext3的命令 
         -a或-p:自动修复; 
         -f :强行修复; 
6四、mount  
    mount:挂载文件系统 
    mount 设备 挂载点 
    设备 
设备文件:/dev/** 
卷标:LABLE=""
UUID:UUID="" 
    挂载点:挂载点就是个目录 
       1,此目录没有被其余进程使用; 
       2,目录的首先存在; 
       3,目录中原有的文件将会暂时隐藏;
---------------------------------------------------------------- 
    mount相关参数 
        -a:表示挂载/etc/fstab文件中指定的全部的文件系统 
        -n:默认状况下,mount每挂载一个设备,都会把挂载的设备信息保存至
/etc/mtab文件;使用-n选项意味着挂载设备时,不把信息写入此文件; 
        -t FSTYPE:指定正在挂载设备上的文件系统的类型;不使用此选项时,
mount会调用blkid命令获取对应文件系统的类型; 
        -r:只读挂载,挂载光盘时经常使用此选项 
        -w:读写挂载 
        -o:指定而外的文件系统挂载选项,即指定文件系统启用的属性 
            async:表示异步写入 
            atime:表示更新时间戳 
        noatime:关闭更新时间 
        auto:表示这个磁盘设备能被使用-a选项自动挂载 
        remount:从新挂载当前系统 
        dev:容许其余磁盘设备 
            ro:挂载为只读           
        rw:读写挂载 
        ower:容许普通用户挂载 
        sync:同步启用 
        loop:挂载本地回环设备 
 ==========================================================================================
6五、umount 
    umount:卸载 
    umount 设备 
    umount 挂载点 
        上面两个均可以,卸载时只要指定一个就能够了 
6六、free 
    free:查看系统上的物理内存和交换内存的使用状况,默认字节 
        -m:以M为单位显示 
        buffers是缓冲 cached是缓存:的目的是重复使用,避免过慢的设备遭
6七、mkswap 
    mkswap:建立交换分区 
    swapon /dev/sd*:启用交换分区 
        -a:表示启用/etc/fstab内的全部交换设备 
    swapoff /edv/** :关闭交换分区 
===========================================================================================
6八、dd 
    dd:转换和复制文件,复制的是最底层的数据流 
    格式:dd if=数据来源 of=数据存储目标 bs=#多大为一个单位 count=# 复制
这样的数据几回 
    例如dd if=/dev/sda of=/mnt/usb/mbr.backup bs=512 count=1
能够用来备份MBR   
    建立回环文件 
    dd if=/dev/zero of=/var/swapfile bs=1M count=1024这个命令就能
创造出一个大小为1G的镜像文件,而这个镜像文件可以直接mkswap而且启动起来都是
能够的 
    /dev/zero是泡泡设备,能一直向外吐零 
===========================================================================================
6九、fuser  
    fuser:验证进行正在使用的文件或套接字 
        -v:查看某文件上正在使用的进程 
        -k:把正在访问的进程给kill了 
        -km:把挂载点上的进程都关闭掉 
===========================================================================================
70、gzip    
 gzip:压缩,压缩完成后会删除源文件 
        -d:解压 
        -#:1-9个压缩级别,默认为6 
    gunzip:解压 
    zcat:不解压的状况,查看文本GZ文件的内容  
7一、bzip2 
    bzip2 /path/to/somefile 
        -d:解压 
        -K:压缩后不删除原文件 
    bzcat:不解压的状况,查看文本bz2文件的内容  
7二、zip 
    zip:压缩目录,即归档又压缩的工具 
    压缩后不删除原文件 
    unzip:解压 
7三、tar  
    tar:可以实现归档的工具,只归档,不压缩。 
        -c:建立归档文件 
        -f file.tar:操做的归档文件,因此-f后面必须跟参数,后跟.tar 
        -x:展开归档文件,原归档文件不删除 
        --xattrs:表示在归档的同时,保留文件的扩展属性信息 
        -t:不展开归档,查看归档了哪些文件 
        -zcf:归档并调用gzip压缩 
        -zxf:调用gzip解压缩并展开归档,-z选项能够省略 
        -jcf:调用bzip2并归档 
        -jxf:调用bzip2并展开归档 
        -Jcf:调用xz 
        -JXF:调用xz 
          tar zxvf libmcrypt-2.5.8.tar.gz
  tar xvf libvpx-v1.3.0.tar.bz2

-------------------------------------------------------------------------------------------
7四、cpio:制做归档或展开归档文件
7五、read
read:shell脚本内能够实现交互式的操做
read -p “提示” 
-t:时间限制
7六、mdadm
mdadm:制做RAID卷的命令
-C:建立RAID
-l:级别
-n:设备数
-a:自动为其建立设备文件,后跟yes|no
-c:指定chunk大小,默认64k
-x:指定空闲盘格式,提供冗余
-F:监控RAID
-G:增长RAID
-A:装配RAID
-D:显示RAID信息
-S:中止RAID
mdadm -D --scan > /etc/mdadm.conf,将当前RAID信息保存至配置
文件,一便之后进行装配 
7七、wathc 
      watch:周期性的执行指定命令,并以全屏方式显示结果
      格式: watch -n # 'COMMAND' 
      -n #:指定周期,单位为妙,默认2秒
7八、逻辑卷 LV
pvcreate:建立
pvmove:挪动数据
pvremove:擦除pv卷 
pvdisplay:显示物理卷 
pvscan:扫描系统上有几个pv
pvs:查看pv信息
------------------------------------------------------------------
卷组
vgcreate:建立
     -s #:指定pe大小,默认为4m 
vgreduce:删除vg 
vgmove:移除
vgextend:把一个物理卷加入此卷组
vgs:查看系统上的组卷信息
------------------------------------------------------------------
逻辑卷: 
lvcreate:建立
      -L #:指定大小 
      -n NAME:指定名字
lvreduce:模拟损坏
lvremove:移除lv,后加路径 
lvextend:扩展
lvdisplay:查看lv相关信息
lvs:查看lv信息
fg:lvcreate -L 50M -n testlv myvg 
-----------------------------------------------------------------------
LVM扩展:先扩展物理卷边界,再扩展逻辑卷 
lvextend -L [+]# /PATH/TO/LV :扩展物理边界
resize2fs:扩展逻辑边界
resize2fs /PATH/TO/LV 5G:扩展逻辑边界到5G
resize2fs -p /PATH/TO/LV:有多大扩展到多大
mount -a:挂载/etc/fstab文件内的全部设备 

 

-------------------------------------------------------------------------
LVM缩减:先缩减逻辑边界resize2fs /PV 3G,再缩减物理卷边界、  
一、不能在线缩减,得先卸载
二、确保缩减后的空间大小能储存原来全部文件
三、在缩减以前应该强行检查文件,以确保文件系统处于一致性状态
e2fsck -f:强行检查文件
df -lh:检查利用率
umount
e2fsck -f:强行检查文件
resize2fs /PATH/TO/lV  5G:缩减逻辑卷到5G
lvreduce -L [-]#G /PATH/TO/LV:缩减物理卷边界
================================================================
7八、lvcreate
lvcreate:建立快照卷
-s :指定类型为块照
-p r|w:表示指定权限
-n:名字
-L #:指定大小
7九、ping
ping IP
-c:次数
-w:超时时长,单位为秒
80、awk
awk:从文件中筛选符合条件的内容
格式:awk 'PATTERN{ACTION}' file
-F:指定分隔符
print $1:显示第一段
print $0:显示一行中的全部字段
print $NF:显示最后一行
awk '空格{print $1,$3}' 第一和第三字段
awk -F: '{print $1,$2}'
fdisk -l 2>/dev/null :把错误信息输入到null内不显示
===========================================================================================
8一、ifconfig
ifconfig:查看和配置系统的网络信息
[ethX]:显示某个网卡信息
-a:显示全部的网卡信息
ifconfig ethx IP/MASK :配置网卡地址(子网掩码必须指定)
ifconfig ethx [up|down]:开启或者禁用网卡
配置Ip地址是当即生效,但重启网络服务或重启主机,都失效
------------------------------------------------------------------------------------------
8二、route
route:查看本机的路由信息
-n:以数字的方式显示主机信息
route add:添加路由
-host:主机路由
-net:网络路由
格式:route add -net|host DEST gw NEXTHOP
route add  default gw NEXTHOP
route del:删除路由
-host
-net
route del -net 10.0.0.0/8
route del -net 0.0.0.0
route del default
以上所作的改动重启网络服务或重启主机,都失效。
-------------------------------------------------------------------------------------------
8三、ip
ip:功能比较强大的网络命令
ip link:配置网络接口属性
show:显示全部网络接口信息
ip -s link show:查看全部统计信息
ip link set ethx {up|down|arp {on|off}}:设定网络接口的工做属性
ip addr:协议地址
show:网络信息
ip addr add IP  dev eth1 添加ip,在ifconfig下看不到的,利用
ip addr show
ip addr add 192.168.0.1/24 dev eth1
ip addr add IP  dev eth1 label ethx:x 添加ip之后增长别名,
在ifconfig下能够查看到
ip addr add IP  dev eth1  
ip addr show dev ethx to 前缀:查看ethx 上的之前缀开头的信息
ip addr flush eth1 to 10/8 :删除eth1上全部的以10开头的ip地址。
ip route:路由
ip route change|replace :修改路由信息
ip route add to 目的网段 dev ethx via IP(下一跳IP)
=========================================================================================
8四、shutdown
shutdown [-akrhHPfnc] [-t secs] time [warning message]
shutdown:关机的命令
 -r now:当即重启
 -t sec:几秒以后
 -h now:当即关机
8五、uname
 uname -r:查看系统内核版本
 uname -a:系统版本信息
8六、lftp
 lftp IP:进入ftp服务器
 get 下载单个文件到本地
 mget 下载多个文件到本地
bye 退出ftp
===========================================================================================
8七、rpm
rpm:安装rpm包的工具
rpm安装命令
-i rpm:安装软件
-h:以#显示安装进度
-v:显示安装信息
-vv:显示更详细的安装信息
-ivh:组合使用,经常使用命令安装软件
--nodeps:忽略依赖关系
--replacepkgs:从新安装、替换原来安装。
-ivh --oldpackage:降级安装
-ivh --force:强制安装,能够实现重装或降级
--test:测试有没有依赖关系
-------------------------------------------------------------------------------------------
rpm查询命令
-q rpm:查询指定包是否安装
-qa:经安装的全部包
-qi:查询指定包的说明信息
-ql:查询指定包安装后生成的目录列表
-qc:查询指定包的配置文件
-qd:查询指定包的帮助文件
-q --scripts:查询指定包内包含的脚本
-qf:查询指定的文件是有哪一个rpm包安装
-------------------------------------------------------------------------------------------
rpm软件升级命令
-Uvh:若是装有老版本的,则升级;不然,则安装
-Fvh:若是装有老版本的,则升级;不然,则退出
-Uvh --oldpackage:降级
-------------------------------------------------------------------------------------------
rpm卸载命令
-e:卸载
-e --nodeps:忽略依赖关系卸载
-----------------------------------------------------------------------------------------
rpm校验命令:
-V:无输出信息就是正常
rpm数据库重建
rpm --rebuilddb:重建数据库,必定会从新创建。
rpm --initdb:初始化数据库,没有才创建,有就不用创建。
==========================================================================================
8八、yum
yum:安装软件命令,能够自动解决软件包直接的依赖关系。
list:显示yum仓库内的软件
list available:仓库中有但还没有安装的包
list installed:显示已经安装的
list updates :能够的升级
------------------------------------------------------------------------------------------
yum clean:清楚缓存
yum clean {packages | headers | metadata | dbcache | all}
yum repolist:显示repo列表及简要信息
yum repolist {all|enabled|disabled}
---------------------------------------------------------------
yum安装软件命令
install:安装软件包
-y install:自动安装
install --nogpgcheck:不作校验
------------------------------------------------------------------------------------------
yum升级软件命令
yum update :升级
yum   update_to:升级到指定版本、
-----------------------------------------------------------------------------------------
yum卸载软件命令
yum remove|erase PACKAGE_NAME
yum info PACEAGE_NAME:查看软件包信息
------------------------------------------------------------------------------------------
yum 开发组安装命令
groupinstall 组名:安装组中包含的包  
groupinfo 组名:显示组包含包信息(若是组名中间有空格,使用”“
grouplist 列出组    
groupupdate
-------------------------------------------------------------------------------------------
yum 安装本地RPM包命令
yum localinstall rpmfile1 :安装本地包并从yum库内解决依赖关系
yum --nogpgcheck localinstall rpmfile1:不校验安装
===================================================
8九、源码程序安装命令
tar xf ....:解压源码包
./configure;配置
make:编译
make install:安装

 

90、netstat
netstat:查看系统信息
  -r:显示路由信息
  -rn:以数字的方式显示
  -t:显示tcp连接
  -u:显示udp连接
  -l:显示端口监听状态
  -p:显示监听指定套接字的进行的进程号及进程名
  -tunlp:经常使用组合,数字显示tcp、udp的连接状况

9一、ps
ps:查看进程信息
 BSD风格经常使用选项:
  a:显示全部与终端有关的进程 ?:表示与终端无关
  x:显示全部与终端无关的进程
  u:显示进行信息
  aux:组合使用
SysV风格经常使用选项:
  -elF:查看全部进行信息(e:全部进程)
  -elf:没F详细
  -o PROPERTY:指定属性显示

ps -aux | grep bmgctl
ps aux | grep bmgctl
ps -ef | grep bmgctl    (推荐使用)


--------------------------------------------------------------------------------------------
9二、pstree
pstree:以树的形式显示ps信息。

9三、pgrep:以grep的风格查看符合某种特性的进程


9四、top
top:动态显示进程信息
支持交互,交互命令
  M:根据驻留内存大小进行排序
  P:根据CPU使用百分比进行排序
  T:根据累计时间进行排序
  l:是否显示平均负载和启动时间
  t:是否显示进行和CPU状态相关信息
  m:是否显示内存相关信息
  c:是否显示完整的命令行信息
  q:退出top
  k:终止某个进程
经常使用选项:
  -d 1 :几秒刷新一次
  -b:批模式显示  
  -n #:在批模式下,共显示多少批

9五、前台和后台做业
前台做业:占据了命令提示符
 后台做业:启动以后,释放了命令提示符,后续的操做在后台完成
 前台-->后台:
 ctrl+z键:正在前台的做业送到后台
 bg:让后台中止的做业继续运行
 bg [%JOBID]:%能够省
 fg:将前台的做业送到后台
 fg [%JOBID]:%能够省

9六、jobs
jobs:查看后天的全部做业

9七、chkconfig
 chkconfig:查看服务启动项
 --list:查看全部独立服务的启动设定
 --list SERVICE_NAME:某个服务的启动设定
 chkconfig --add SERVICE_NAME(脚本名称):增长S连接和K连接
 chkconfig --del SERVICE_NAME(脚本名称):删除S连接和K连接
 chkconfig --level 24 服务名 off|on:指定在级别24内为on或off。

9八、mktemp
mktemp:建立临时文件
 mktemp /tmp/file.XX(XX表明系统自动生成的文件)生成临时文件
 mktemp -d /tmp/file.xx :生成临时目录


9九、kill
kill -SIGNAL PID
经常使用SIGNAL:1:hup 2:INT 9:KILL 15:TERM ctrl+c:是信号2,结束


100、trap命令:能够实现捕捉信号
trap ‘COMMAND’ 信号列表
fg:trap 'echo "you cannot kill me"' INT


10一、at
at:指定在将来的某个时间点执行一次某任务
时间格式    
绝对时间:HH:MM DD::MM:YY MM/DD/YY
相对时间:now+#(minutes,hours,days,weeks)
模糊时间:noon,midnight,teatime
at -l:显示本身的做业列表
 at -d 做业号:删除做业


10二、batch
batch:和at用法类似,只是执行是在系统空闲的时候执行计划任务。


10三、cron
cron:不间断容许的服务
系统cron定义格式:
分钟 小时 天 月 周 用户 任务
用户cron任务定义格式
定义文件/var/spool/cron/USERNAME
格式:分钟 小时 天 月 周  任务


10四、ssh
ssh:远程链接命令
ssh 172.....:直接以当前客户端上登录的用户登录远程主机
ssh USERNAME@172....:以某个用户登录
ssh -l USERNAME 172....:以某个用户登录
ssh USERNAME@HOST`COMMAND`:以某个用户不登录远程主机执行COMMAND命令

10五、scp
scp:远程复制文件的命令
scp SRC DEST:复制文件(与cp命令用法类似)
 -r
 -a                      
fg: scp USERNAME@HOST:/PATH/TO/SOMEFILE /path/to/local
scp /path/to/local USERNAME@HOST:/PATH/TO/SOMEFILE


10六、dig
dig:测试域解析的命令
-t NS . :获取DNS根域信息
-t NS chris.com @IP:直接去某个IP查找DNS服务器。
-t A  chris.com:查看域的A记录
-t CNAME:查看别名记录
-X IP:根据IP查找主机名,反向解析信息


10七、nslookup
nslookup:交互式的查看主机域名信息,使用与linux和windows上。

10八、screen
screen:模拟多个窗口,窗口关闭后还能够调出来,经常使用于须要执行很长时间的时候,
如内核编译
screen -ls:显示已经创建的屏幕
screen:打开一个新的屏幕
exit:退出当前屏幕
screen -r ID:返回某个屏幕

相关文章
相关标签/搜索