linux 命令及shell 知识小点汇集

一、  linux 命令中,经常会用到对一个命令进行编辑的情况,为了提高工作效率,利用一些快捷键可以达到事半功倍的效果,以前常用的快捷键,多时不用,有些生疏了,在这里简单小节,以备查用。

复现历史命令的快速方式

1、向上箭头“↑”,可以复现上一条执行的指令

2、! +abc,可以执行最近一条以abc开头的命令

3、Crtl +r 可以查找历史命令

4、history  N  |grep  abc ,查找历史最近N条命令里包含abc的命令列表

编辑命令的快捷键

5 、移动快捷键

      Ctrl+a 切换到命令行开始

      Ctrl+e 切换到命令行末尾

      Alt + f 光标向前(Forward)移动到下一个单词

      Alt + b 光标往回(Backward)移动到前一个单词

6、删除快捷键

      Ctrl+u 清除剪切光标之前的内容

      Ctrl+k 清除剪切光标及光标之后的内容

      Ctrl + w 删除从光标位置前到当前所处单词的开头

       Alt + d 删除从光标位置到当前所处单词的末尾

二、之前为了对日期命名的大量文档进行处理,要使用求某一指定日期的前N天的函数,当时用的急,就用了转换为到1970-01-01秒的方法,后来发现可以借助date 的--date 直接求解,在这列出这两种方法,并列出一些shell 中个人细节上出的问题。

1、针对shell中的return ,在有些linux环境下,使用source或者'.'来执行,才能返回,用sh 执行不会中断执行

2、while循环中,当读取文件使用 cat $FileName | while read Line

                                                       do

                                                        return

                                                       done

     结构时,中间的return是从管道返回,中断了while,但是,while后续的程序仍然会被执行,解决的方式是使用

     while read line

      do

      done <$FileName   由于该方式,没有使用管道,不会有上面的问题

3、获取某一日期的前或者后N天的方法

    (1)方法1,SECONDS=`date -d  "$DATE" +'%s'

                   DAYS=$(((86400*N)))

                   `SECONDS=$(((SECONDS-86400*N)))

                   echo 'date -d  @SECONDS'

   (2) 方法2,直接使用 `date  --date="$DATE  -N day" +'%Y%m%d' `或者 `date -d "N day ago $DATE" +'%Y%m%d'  `  

    

 

 

阅读更多
文章标签: shell linux
个人分类: 系统
上一篇Redis 设计与实现阅读笔记(一)
想对作者说点什么? 我来说一句

shell嵌入命令

2008年01月12日 127KB 下载

最牛B的 Linux Shell 命令

2018年06月03日 3.15MB 下载

最牛B的linuxBshell命令

2011年04月06日 7KB 下载

Linux 用户界面和shell命令

2014年07月16日 40KB 下载

linux shell 十三问

2011年07月13日 256KB 下载

LINUX_UNIX SHELL.rar

2009年12月12日 17.03MB 下载

linux命令大全

2014年11月04日 51KB 下载

没有更多推荐了,返回首页

关闭
关闭