Linux的一些命令

来源:互联网 发布:java安全框架权限管理 编辑:程序博客网 时间:2024/06/05 11:27

一、管道符

命令格式:命令A|命令B,即命令1的正确输出作为命令B的操作对象。

管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。连续使用管道意味着第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。

二、输出重定向

>代表以覆盖的方式将命令的正确输出输出到指定的文件或设备当中。 
>>代表以追加方式输出。

常用的输出重定向:

  • 1.命令 >> 文件 2>&1 :以追加的方式,把正确输出和错误输出都保存在文件中。
  • 2.命令&>文件名:以覆盖的方式将正确和错误输出都保存在文件中。
  • 3.命令&>>文件名:以追加的方式将正确和错误输出都保存在文件中。
  • 4.命令>>文件A 2>>文件B:正确的输出到A文件中,错误的输出到B文件中。

    注意:只要涉及到错误输出,>或者>>两侧都不能有空格。

三、输入重定向
  • 命令<文件名:把文件作为命令的输入,例如wc命令时统计行,单词书和字符的。

四、多命令顺序执行
  • 1.命令1;命令2 :执行完1再执行2,命令之间没有任何逻辑联系

  • 2.命令1&&命令2:&&是一个“自私”符号,即命令1正确我命令2才执行,你错误了我2就不执行。

  • 3.命令1||命令2:是一个备胎符号,即1不行了2就上,1行的话我就不执行。
五、Bash中的其他特殊符号
  • 单引号‘’:引号内的所有字符都只是字符而已,没有特殊含义。
  • 双引号”“: 除了$`和\之外,均无特殊含义。
  • “:反引号,反引号内部的内容是系统命令,在Bash中会先执行他,例如aa=$(ls),那么ls执行的结果会赋给aa。
  • $(): 和反引号作用一样,推荐使用。
  • #:shell脚本中代表注释。
  • $:用于调用变量的值,相当于C语言的*。
  • :转义符。

六、grep命令

grep (global search regular expression_r(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

格式:grep[options]pattern[file]

[options]主要参数:
-c:只输出匹配行的计数。
-I:不区分大 小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\<:从匹配正则表达 式的行开始。
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
。:所有的单个字符。
* :有字符,长度可以为0。

七、find命令

格式:find [path...] [expression]

  • path:find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录
  • expression:expression可以分为——“-options [-print -exec -ok ...]”
  • -options,指定find命令的常用选项,下节详细介绍
  • -print,find命令将匹配的文件输出到标准输出
  • -exec,find命令对匹配的文件执行该参数所给出的shell命令。
  • -ok,和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

总结find命令的结构:

find start_directory test  options  criteria_to_match  action_to_perform_on_results

八、
1.zip
zip -r myfile.zip ./*
将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件.

直接压缩几个文件,使用命令 zip newfilename.zip filename1 filename2
压缩一个文件夹或者叫目录使用命令zip -r newfilename.zip file1 file2。
文件夹下面包含太多的文件:zip -q -r newfilename.zip file1 file2。
-q 安静模式,在压缩的时候不显示指令的执行过程 
-r 将指定的目录下的所有子目录以及文件一起处理
举例:
将/root/test文件夹下的test1文件夹和test2.txt压缩到 aaa.zip
在/root/test目录下,执行命令
zip -q -r aaa.zip test1 test2.txt 

2.unzip
unzip -o -d /home/sunny myfile.zip
把myfile.zip文件解压到 /home/sunny/
-o:不提示的情况下覆盖文件;
-d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下;
3.其他
zip -d myfile.zip smart.txt
删除压缩文件中smart.txt文件
zip -m myfile.zip ./rpm_info.txt
向压缩文件中myfile.zip中添加rpm_info.txt文件

9、kill命令
该命令用于向某个工作(%jobnumber)或者是某个PID(数字)传送一个信号,它通常与ps和jobs命令一起使用,它的基本语法如下
kill -signal PID 
signal常用参数如下:
1:SIGHUP,启动被终止的进程
2:SIGINT,相当于ctrl+c,中断一个进程的进行
9:SIGKILL,强制中断一个进程的进行:
15:SIGTERM,以正常的结束进程方式来终止进程
17:SIGSTOP,相当于ctrl+z,暂停一个进程的进行
注:最前面的数字为信号的代号,使用时可以用代号代替相应的信号。

10、killall命令
该命令用于向一个命令启动的进程发送一个信号,它的一般语法如下:
killall [-iIe] [command name] 
-i :交互式的意思,若需要删除时,会询问用户  
-e :表示后面接的command name要一致,但command name不能超过15个字符  
-I :命令名称忽略大小写  
# 例如:  
killall -SIGHUP syslogd # 重新启动syslogd 

11、file命令
该命令用于判断接在file命令后的文件的基本数据
基本语法:file filename
例如:file ./test
12、tar命令
用于对文件进行打包,默认不会压缩
压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称  
查询:tar -jtv -f filename.tar.bz2  
解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
常用参数:
-c :新建打包文件  
-t :查看打包文件的内容含有哪些文件名  
-x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中  
-j :通过bzip2的支持进行压缩/解压缩  
-z :通过gzip的支持进行压缩/解压缩  
-v :在压缩/解压缩过程中,将正在处理的文件名显示出来  
-f filename :filename为要处理的文件  
-C dir :指定压缩/解压缩的目录dir 
13、cat命令
该命令用于查看文本文件的内容,后接要查看的文件名,通常可用管道与more和less一起使用,从而可以一页页地查看数据。
14、chgrp命令
该命令用于改变文件所属用户组
格式:chgrp [-R] dirname/filename  
-R :进行递归的持续对所有文件和子目录更改  
# 例如:  
chgrp users -R ./dir # 递归地把dir目录下中的所有文件和子目录下所有文件的用户组修改为users 
15、chown命令
该命令用于改变文件的所有者,与chgrp命令的使用方法相同,只是修改的文件属性不同
16、chmod命令
该命令用于改变文件的权限
格式:chmod [-R] xyz 文件或目录  
-R:进行递归的持续更改,即连同子目录下的所有文件都会更改
17、time命令
该命令用于测算一个命令(即程序)的执行时间

0 0
原创粉丝点击