开发者社区> 余二五> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

linux基础命令的整理(部分,会及时更新整理)

简介:
+关注继续查看

                          linux命令的大概总结
         
# command  [-options]  parameter1 parameter2...
  命令      选项       参数1      参数2
  []表示可执行或者可以忽略 ,使用时带-
 
 命令太长的时候,可以使用反斜杠(\)来转义[enter]符号,使命令延续到下一行。
 注意:反斜杠后立刻接特殊字符,才能转义
 
------简单命令的操作:
#date:显示日期和事件
      date 系统时间
      clock  硬件时间 hwclock 硬件时间

#cal:显示日历
     #cal [[month]year]

#bc:计算器

------最重要的热键[tab],[ctrl]-c,[ctrl]-d
           [tab]接在一串命令的第一个命令的后面,则为“命令补全”;
     [tab]接在一串命令的第二个命令以后时,则为“文件补齐”。
 [ctrl]-c:按着[ctrl]不放然后按下c,中断目前程序执行的命令;
 [ctrl]-d:相当于输入exit.
 
-------man命令与info命令

#man
 分的章节:

1:用户命令
2:系统调用
3:库调用
4:特殊文件(设备文件)
5:文件格式(配置文件的语法)
6:游戏
7:杂项(miscelllaneous)
8:管理命令

man 命令出来的意思详解。

    NAME:命令的名称及功能简要说明
    SYNOPSIS: 用法说明,包括可用的选项。
    DESCRIPTION:命令功能的详尽说明,可能包括每一个选项的意义。
    OPTIONS:说明每一个选项的意义
    FILES: 此命令相关的配置文件
    BUGS:
    EXAMPLES:使用示例
    SEE ALSO:另外参照
 
<>必须给出的  []可省略的  ...可以出现多次  |多选1   {}分组

解释太多要翻屏: 
   向后翻一屏:SPACE
     前      :b
     后    行:enter
     前      :k
 
查找
/KEYWORD:向后
n:下一个
N:前一个
?KEYWORD:向前
n:下一个
N:前一个

q:退出


#info
   在线文档:
  info command   也就是解释命令的历史。如发生过神马大BUG之类的。
  
  
#nano
   文本编辑器
   
   
-------------------------------------文件权限与目录配置-----------------------------------------
linux文件属性:
    比如 #ls -all  出来的文件属性(单一取一个)
 drwxr-x--- 4 root root 4096 sep 8 14:06 .
  [1]     [2] [3]     [4]  [5]  [6]   [7]
  [权限]    [连接][所有者][用户组][文件容量][修改日期][文件名]
  
  [1] :
  其中第一行:
   d :表示目录
   - :表示文件
   l :表示连接文件 linkfile
   b :表示设备文件里面的可提供存储的接口设备。--块设备
   c :表示设备文件里面的串行端口设备,例如键盘鼠标(一次性读取设备)
   
  其中后9行 rwx
   r:可读read
   w:可写write
   x:可执行execute
  其中后9行三个为一组,
   第一组表示:文件所有者的权限
   第二组表示:文件所属用户组的权限
   第三组表示:其他非本用户的权限
   
改变文件的属性与权限:

#chgrp  #chown  #chmod

#chgrp:改变文件的用户组
     #chgrp [-R] GRPNAME  DIRNAME/FILENAME      -R为递归的意思,既下层目录and文件同时改变
   -R:修改目录及其内部文件的属组
   --reference=/path/to/somefile  file,...    改为跟哪个文件一样

#chown:改变文件的所有者
 #chgrp [-R] 账号名称:组名  文件或目录(同chgrp)
  -R:修改目录及其内部文件的属组
  --reference=/path/to/somefile  file,...    改为跟哪个文件一样

#cp
 #cp 源文件 目标文件  (同样也复制其属性与权限)
 
#chmod:改变文件的权限
 #chmod [-R] MODE DIRNAME/FILENAME,...

 #chmod u(own),g(group),o(others),a(all)  +(加入) -(除去) =(相同)
   例子:#chmod u=rwx,go=rx .bashrc
   
 数字类型改变文件的权限:
  r:4 w:2 x:1
  
  
  
  
  
  
  
  
  
  
  
  
  
------------------------------------linux文件及目录管理--------------------------------------------

相对路径与绝对路径:理解即可。

 

目录的相关操作

.代表此层目录
..代表上一层目录
- 代表前一个工作目录
~ 代表“目前用户身份”所在的主文件夹
~account 代表account 这个用户的主文件夹(account是个账号名称)

#cd 切换目录

#pwd 显示当前目录
     -P:显示连接路径

#mkdir 新建一个新的目录
    -p:创建比如/x/y/z,没有y,直接先创建y然后z
    -v: verbose  详细信息
#rmdir 删除一个空的目录
   删除的只是空目录
 删除文件   :rm
   -f
   -r
    rm -rf  /    切记此删除全部。!!

 

#ls :查看目录与文件
    -h:做单位转换,作为ls里面字节大小的改动  如可以写作 ls -l -h
    -a:显示以.开头的隐藏文件。
        .表示当期目录   ..表示当前目录的上级目录
    -A:显示所有隐藏文件但是不包括.和..
    -d:显示目录自身属性
    -i:显示文件的代码 比如 5645***文件     index node,inode
    -r:逆序显示
    -R:递归(recursive)显示
 -l:列出长数据串,包含文件的属性与权限等数据

复制,删除,移动:cp、rm、mv

#cp:
   -i 是否复制(小红帽特加的)
   -f 强制
   -L 复制的是文件不是路径
   -P复制的是路径  -d同样也是保持连接自己
   -R -r递归复制
   -a备份

#rm:
   -f 强制
   -r 递归
    rm -rf  /    切记此删除全部。!!

#mv:
  -i 是否复制(小红帽特加的)
  -f 强制
  -t (mv -t 目标  元)
  
 
 
-------------文件内容查阅

#cat 
 -A:相当于-vET的整合参数,可列出一些特殊字符,而不是空白而已;
 -b:列出行号,仅针对非空白行做行号显示,空白行不标行号;
 -E:将结尾的断行字符$显示出来;
 -n:打印出行号,联通空白行也会有行号,与-b不同;
 -T:将[tab]按键以^I显示出来
 -v:列出一些看不出来的特殊字符

#tac(反向列示)


------------数据选取

#head(取出前边几行)(默认显示前10行)
     -n:后面接数字,代表显示几行的意思
  
#tail(取出后面几行)

--------------修改文件时间或创建新文件:touch
#touch 修改文件的时间戳。不存在文件的时候添加文件
       三个时间戳----3个。

      -c  仅修改文件的时间,没有文件的时候不创建空文件
      -a  修改访问时间  如  touch -a   a  第二个a为文件
      -m  修改修改时间
      -t  指定的         如 touch -m -t 201577***
   -d:后面可以接欲修改的日期而不用目前的日期,也可以使用  --date="日期或时间";


----------------文件默认权限umask
#umask


-----------------查看文件的类型:file

#file
 file  ~/.bashrc
 
---------------目录的容量查看#du

#du:
 -a:列出所有的文件与目录的容量,因为默认仅统计目录下面的文件容量而已;
 -h:以人们教易读的容量格式(G/M)显示;
 -s:列出总量而已,而不列出每个个别 的目录占用容量;
 -S:不包括子目录下的总计,与-s有点差别;
 -k:以KB列出容量显示;
 -m:以MB列出容量显示。

 
 ---------------------------------------bash----------------------------------------------

bash shell 的内置命令:type

#type:不加任何参数的时候,type会显示出name是外部命令还是内置命令
    -t:当加入-t参数时,type会将name以下面这些字眼显示出它的意义:
     file:表示为外部命令;
  alias:表示该命令为命令别名所设置的名称;
  builtin:表示该命令为bash内置的命令功能。
 -p:如果后面接的name为外部命令时,才会显示完整文件名;
 -a:会由PATH变量定义的路径中,将所有含name的命令都列出来,包含alias
 
变量的显示:echo
变量的读取:read
#read 
 -p:后面可以接提示符
 -t:后面可以接等待的秒数,不会一直等用户;
      so......#read atext
        this is a text.    <==此时光标会等待你输入。
        #echo atext
        this is a text.
  so.......#read “Please keyin your name:” -t 30 named
  
  
命令别名设置:alias
    #alias cls='clear'
 
------------命令历史history
 #history
  -n:数字,是要列出最常使用的n条命令行的意思。
  -c:是将目前shell中所有的history内容全部消除
  -a:将目前新增的history命令新增如histfiles中,若没有加histfiles,则默认写入~/.bash_history
  -r:将histfiles的内容读到目前这个shell的history记忆中
  -w:将目前的history记忆内容写入history中。
 命令历史的使用技巧:
         !n:执行命令历史中的第n条命令;
         !-n:执行命令历史中的倒数第n条命令;
         !!:执行上一条命令;
         !string(字符串):执行命令历史中的最近一个以指定字符串开头的命令
         !$:引用前一个命令的最后一个参数;
        ESC(键盘上的) .   :同上
        Alt+. 


--------------管道命令pipe

pipe表示为“|”
 管道:前一个命令输出,作为后一个命令的输入

 命令1|命令2|命令3|命令4|
 
选取命令:cut ,grep

#cut
 -d:后面接分割字符,与-f一起使用; -d ‘ ’
 -f:依据-d的分割字符将一段信息分割成数段,-f表示选取第几段的意思
 -c:以字符character的单位取出固定字符区间

#grep:
    Global Research 根据模式,搜索文本,并将符合模式的文本行显示出来。
    Pattern:文本字符和正则表达式的元字符组合而成匹配条件


grep
   -i :忽略大小写
   --color
   -v :显示没有被模式匹配到的行
   -o :只显示被模式匹配的字符串

   
排序命令:sort,wc,uniq

文本排序 sort

#sort:默认排序为升序
      -n:数值排序  #sort  -n  文件    不用-n按照acill码排序
      -r:降序排序
      -t:字段分隔符,指定
      -k:指定以哪个字段为关键字进行排序。
      -u:排序后相同内容只显示一个
      -f:排序时忽略字符大小写


#uniq    相邻的重复才显示
    -c:显示文件中行重复的次数
    -d:只显示重复的行

 

文本统计:
#wc (word count)
    -l:行数
    -w:单词数
    -c -m:字节数
    -L最长的一行包含多少个字符
 
双向重定义tee 
 
 


字符处理命令:tr   转换或删除字符

#tr 'ab'  'AB'

     -d:删除出现在字符集中的所有字符

 #grep:
    Global Research 根据模式,搜索文本,并将符合模式的文本行显示出来。
    Pattern:文本字符和正则表达式的元字符组合而成匹配条件


grep
   -i :忽略大小写
   --color
   -v :显示没有被模式匹配到的行
   -o :只显示被模式匹配的字符串

 *:任意长度的任意字符
 ?:任意单个字符
 []:以内
 [^]:以外

 正则表达式:REGular EXPression ,REGEXP
 元字符:
 . :任意单个字符
 []:匹配指定范围内的任意单个字符
 [^]:匹配指定范围外的任意单个字符
        字符集合[:digit:],[:lower:],.......

 匹配次数(贪婪模式):
 *  :匹配其前面的字符任意次 
 .* :任意长度的任意字符
 \?:匹配其前面的字符1次或0次
 \{m,n\}:匹配其前面的字符至少m次,至多n次
      


 位置锚定:

 ^ :锚定行首,此字符后边的任意内容必须出现在行首
 $:锚定行尾,此字符前边的任意内容必须出现在行尾

 ^$:空白行

 \<或\b :锚定词首,其后面的任意字符必须作为单词的首部出现
 \>或\b :锚定词尾,其前边的任意字符必须作为单词的尾部出现

 

 分组:

 \(\) 
    \(ab\)*  ab可以出现0次或任意次
     后向引用
      \1:引用第一个左括号以及与之对应的右括号所包括的所有内容
      \2:
      \3:










本文转自 陈延宗 51CTO博客,原文链接:http://blog.51cto.com/407711169/1144137,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Linux的10个最危险命令
Linux的10个最危险命令
122 0
11月29日云栖精选夜读 | Linux里10个最危险的命令
Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你不确定你自己在正在做什么时候。 这篇文章将会向你介绍十条命令,但你最好不要尝试着去使用。 当然,以下命令通常都是在root权限下才能将愚蠢发挥到无可救药;在普通用户身份下,破坏的只是自己的一亩三分地。
2599 0
一些极度危险的linux命令
在linux中有些命令可能功能强大,方便快捷,但是这些命令在测试环境中有些可以用,但别在生产上挑战。有些命令一敲,可能你的职业生涯由此转折。 关于rm -rf   对于这个命令真没什么好说的,最好的挽救措施就是备份,可能在有些环境中这类命令都是禁用的,但是不管怎么样,注意备份。
650 0
[linux]永远不要在 Linux 执行的 10 个最危险的命令
Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你不确定你自己在正 在做什么时候。这篇文章并不打算引来你对Linux或linux 命令行的愤怒。
1180 0
Linux RPM包管理-rpm命令
Linux RPM包管理-rpm命令
26 0
Linux RPM包管理-yum命令
Linux RPM包管理-yum命令
33 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
从 Linux 系统内核层面来解决实际问题的实战经验
立即下载
冬季实战营第二期:Linux操作系统实战入门
立即下载
ECS系统指南之Linux系统诊断
立即下载