linux常用命令

Posted yinqanne

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux常用命令相关的知识,希望对你有一定的参考价值。

参考:http://www.runoob.com/linux/linux-command-manual.html

一、awk 命令:依次对每一行进行处理,然后输出

(1)awk [选项参数] ‘script‘ var=value file(s)

$ awk -F ‘[ ]‘ ‘{print $4}‘ query.log 以tab为分隔符,打印每一行的第4个字段

特殊要点:

$0           表示整个当前行

$1           每行第一个字段

NF          字段数量变量

NR          每行的记录号,多文件记录递增

           制表符

          换行符

FS          BEGIN时定义分隔符

print & $0

print 是awk打印指定内容的主要命令

  • awk ‘{print}‘  /etc/passwd   ==   awk ‘{print $0}‘  /etc/passwd  

  • awk ‘{print " "}‘ /etc/passwd                                           //不输出passwd的内容,而是输出相同个数的空行,进一步解释了awk是一行一行处理文本

  • awk ‘{print "a"}‘   /etc/passwd                                        //输出相同个数的a行,一行只有一个a字母

  • awk -F":" ‘{print $1}‘  /etc/passwd 

  • awk -F: ‘{print $1; print $2}‘   /etc/passwd                   //将每一行的前二个字段,分行输出,进一步理解一行一行处理文本

  • awk  -F: ‘{print $1,$3,$6}‘ OFS=" " /etc/passwd        //输出字段1,3,6,以制表符作为分隔符

 

二、grep 更适合单纯的查找或匹配文本

能使用正则表达式搜索文本,并把匹配的行打印出来

选项(常用):

-E 将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。

-i 忽略字符大小写的差别。

-n 在显示符合范本样式的那一列之前,标示出该列的编号。

-v 反转查找。

-w 只显示全字符合的列。

-o 只输出文件中匹配到的部分

例 :$ grep -oE "prefix(.*)" autocomplete.log 匹配prefix(keyword,)

 

三、sed 更适合编辑匹配到的文本

能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件输入到屏幕,可以把只匹配到模式的内容输入到屏幕上。还可以对原文件改动,但是不会再屏幕上返回结果。

语法:sed [-hnV][-e<script>][-f<script文件>][文本文件]

sed -i ‘s/^/"/g‘ yinqin_new_query.log

(1)参数说明

  • -n :只打印模式匹配的行

  • -e :直接在命令行模式上进行sed动作编辑,此为默认选项

  • -f :将sed的动作写在一个文件内,用–f filename 执行filename内的sed动作

  • -r :支持扩展表达式

  • -i :直接修改文件内容

(2)动作说明

  • a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~

  • c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!

  • d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;

  • i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);

  • p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~

  • s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

注意:直接修改文件内容(危险动作)。sed 可以直接修改文件的内容,不必使用管道命令或数据流重导向!

 

四、scp

Linux scp命令用于Linux之间复制文件和目录。

scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。

http://www.runoob.com/linux/linux-comm-scp.html

(1)从本地复制到远程

scp local_file [email protected]_ip:remote_folder

或者 scp local_file [email protected]_ip:remote_file

或者 scp local_file remote_ip:remote_folder

或者 scp local_file remote_ip:remote_file

复制目录时,要加上-r选项

注意:在我们实际拷贝是,要通过跳板机来拷贝,即

  • 从本地拷贝到跳板机

    scp -r -P 58422 /search-it-automation [email protected]:/tmp/

  • 再从跳板机拷贝到指定远程机器

scp -r -P 58422 [email protected]:/tmp/ /tmp/testnew

密码是:user4beta

(2)从远程拷贝到本地

scp [email protected]:/home/root/others/music /home/space/music/1.mp3

scp -r www.runoob.com:/home/root/others/ /home/space/music/

注意:在我们实际拷贝是,要通过跳板机来拷贝,即

  • 从远程机器拷贝到跳板机

    scp -r -P 58422 /tmp/testnew/report/ [email protected]:/tmp/

  • 从跳板机拷贝到本地

scp -r -P 58422 [email protected]:/tmp/ /User/yinqin/downloads

 

sudo

wc

ps

kill

head

以上是关于linux常用命令的主要内容,如果未能解决你的问题,请参考以下文章

linux常用命令多少个

Linux第二章-Linux常用命令

Linux文本操作常用命令

:常用工具命令第23节:常用命令 - Linux命令

Linux常用命令

Linux部署项目常用命令