一、shell 基础

shell是个命令解释器,提供用户和机器之间的交互

每个用户都可以拥有自己特定的shell

centos7默认Shell为bash(Bourne Agin shell)

除了bash,还有zsh.ksh等

二、命令历史

敲过的命令在/root/.bash_history里储存着,最多可以储存1000条。

可以用history命令查看

history -c 可以清除内存里,history里的命令历史,但是不能清除配置文件/root/.bash_history里的命令

echo $HISTSIZE                 查看环境变量,查看最多可以储存多少命令。

/etc/profile                   里面可以改变环境变量

source /etc/profile            刷新profile文件,使环境变量立即生效

HISTTIMEFORMAT="%Y%m%d %H:%M:%S"           使history临时显示历史命令的输入时间

若想一直生效,在/etc/profile中加入  HISTTIMEFORMAT="%Y%m%d %H:%M:%S"一行

source /etc/profile          刷新一个profile文件即可

永久保存/root/.bash_history      不想被别人破坏或删除

chattr + a /root/.bash_history   给这个用户加入a权限

如果不正常退出,用exit或者logout。则历史命令保存的不全

!!                执行最后一条命令

!n                 n表示数字。执行哪一条历史命令

!命令              执行最后一次输入的指定命令

三、命令补全即别名

tab键,如果只有一个开头,按一下自动补全。如果是两个以上,按两下则自动补全

yum install -y bash-completion         下载一个自动补齐参数的包(需要从新启动生效)

alisa别名

alisa                         查看系统内所有的alisa命令

alisa+别名='命令'             创建alisa别名

unalisa+别名                  取消自己创建的alisa别名

四、通配符

* 不分字符和个数

? 一个任意的字符

[] 里面可以写一个范围。例如0-3或者123,13只显示1和3.

{} 相当于方括号的13,但是中间要加 ,

五、输入输出重定向

>  把前面命令的输出直接出入到后面的文件中,覆盖后面文件原有的内容

cat 1.txt > 2.txt

>> 把前面命令的输出追加到后面的文件中

cat 1.txt >> 2.txt

2> 错误重定向

2>> 错误追加重定向

&> = > 和 2>

&>> = >> 和 2>>

写shell脚本时,可以把错误和正确的分开,以检查脚本











本文转自 小新锐 51CTO博客,原文链接:http://blog.51cto.com/13407306/1982609,如需转载请自行联系原作者

Linux笔记(shell基础,历史命令,命令补全/别名,通配符,输出重定向)的更多相关文章

  1. Linux之shell基础

    Shell基础 一.shell概述 1) shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动.挂起.停止甚至是编写一些程序 ...

  2. Linux 中 10 个有用的命令行补全例子

    在 Linux 系统中,当你输入一个命令,再按两次 TAB 键,就会列出所有以你输入字符开头的可用命令.这并不新鲜,可能你已经知道了.这个功能被称作命令行补全bash completion.默认情况下 ...

  3. centos命令自动补全增强

    CentOS默认没有像Ubuntu系统一样命令参数补全功能,例如yum install无法补全.通过安装bash-completion安装命令参数补全增强. CentOS6 默认情况下,CentOS6 ...

  4. kubectl命令自动补全

    kubectl这个命令行工具非常重要,与之相关的命令也很多,我们也记不住那么多的命令,而且也会经常写错,所以命令自动补全是非常有必要的,kubectl命令行工具本身就支持complication,只需 ...

  5. kubernetes系列(小知识):kubectl命令自动补全

    kubectl命令自动补全 linux系统 yum install -y bash-completion source /usr/share/bash-completion/completions/d ...

  6. kubectl 命令自动补全

    kubectl 命令自动补全 在linux上 # yum install -y bash-completion # source /usr/share/bash-completion/bash_com ...

  7. 解决centos7命令无法补全

    背景 偶然发现本地虚拟机centos 7.7配置firewalld-cmd命令行无法补全,手敲命令太多,着实麻烦 解决方案 安装linux命令行补全工具,还能够补全命令参数 yum install b ...

  8. Docker 命令自动补全?要的

    前言 不知道这个小伙伴有多久没用过 Docker 了, 突然对我说 Docker 命令怎么发生变化了 docker run ... #变成了 docker container run ... 他说,本 ...

  9. 命令自动补全模块rlcomplete

    rlcomplete定义了针对readline模块的命令自动补全函数.         当在unix平台下导入这个模块之后(前提是readline模块可用),一个Complete的实例会自动生成,并且 ...

  10. CentOS 6.5上安装python2.7、pip以及Python命令行补全和yum冲突解决

    目前CentOS6.5上自带的python版本为2.6,升级到python2.7会碰到很多问题.本文将介绍如何安装python2.7.pip以及python命令行补全. 一.如何安装python2.7 ...

随机推荐

  1. 并发——深入分析CountDownLatch的实现原理

    一.前言   最近在研究java.util.concurrent包下的一些的常用类,之前写了AQS.ReentrantLock.ArrayBlockingQueue以及LinkedBlockingQu ...

  2. mysql 聚集函数 count 使用详解

    mysql 聚集函数 count 使用详解 本文将探讨以下问题 1.count(*) . count(n).count(null)与count(fieldName) 2.distinct 与 coun ...

  3. Go gRPC教程-服务端流式RPC(三)

    前言 上一篇介绍了简单模式RPC,当数据量大或者需要不断传输数据时候,我们应该使用流式RPC,它允许我们边处理边传输数据.本篇先介绍服务端流式RPC. 服务端流式RPC:客户端发送请求到服务器,拿到一 ...

  4. lr 遇到的问题

    1.Abnormal termination, caused by mdrv process termination 解决方法:修改LR中的D:\Program Files\Mercury\LoadR ...

  5. Spring温习(1)--最基础的示例

    Spring温习(1)--最基础的示例 博客分类: 框架-Spring专栏 SpringXMLBeanWebDAO 从现在开始,我将从Spring为起点,逐步复习几大框架各方面的知识,以便今后查看使用 ...

  6. C - Max Sum Plus Plus HDU - 1024

    用二位数组dp[i][j]记录组数为i,前j个数字的最大子段和. 转移方程: dp[i][j],考虑第j个数,第j个数可以并到前面那一组,此时dp[i][j]=dp[i][j-1]+arr[j],第j ...

  7. 莫名的证书错误...ERROR ITMS-90035:"Invalid Signature.

    请删除 .DS_Store 这种类似的文件再尝试

  8. 详解 Collection集合

    (请关注 本人"集合总集篇"博文--<详解 集合框架>) 首先,本人来讲解下 Collection集合的继承体系: Collection集合 的继承体系: Collec ...

  9. Liunx常用操作(一)-删除命令

    在linux命令行模式下,如何一次性快速删除一行刚刚输入的命令? 经常在命令行输入命令的时候,一段文字都需要删除,一个字段一个字段,比较耗费时间 以下提供一些命令,配合在一起操作,可以一定程度提高工作 ...

  10. json:格式化数据

    formatData = JSON.Stringfy(data, null, 2)