一、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. For,while,case,shell循环结构

                                                                For,while,case,shell循环结构 案例1:使用for循环结构 案 ...

  2. 将wxpy的登录二维码放到网页上登录

    from flask import Flask, Response from flask.views import MethodView from threading import Thread fr ...

  3. flask 入门之 logging

    如想看详细说明,请到: 1.https://www.cnblogs.com/yyds/p/6901864.html 2.https://docs.python.org/2/library/loggin ...

  4. webstorm 永久激活方法

    打开终端,执行: cd /etc/ sudo vim hosts 在最后一行加上: 0.0.0.0 account.jetbrains.com 打开webstorm,选择Activation Code ...

  5. Struts2-学习笔记系列(15)-ajax支持和JSON

    7.1stream类型的result 使用stream就无需jsp页面,直接在action想浏览者生成指定的响应 @Override public java.lang.String execute() ...

  6. 钩子函数 Function类

    Function 为 com.google.common.base包下接口类: public interface Function<F, T> { @Nullable T apply(@N ...

  7. 【FreeMarker】【程序开发】数据模型,对象包装

    [FreeMarker][程序开发]数据模型,对象包装 分类: Java.FreeMarker2014-10-25 18:49 413人阅读 评论(0) 收藏 举报 FreeMarker   目录(? ...

  8. Mybatis对象关系映射 one2one,one2many,many2many

    MyBatis中的高级映射一般要借助select元素中的resultMap属性进行实现,通过此属性配置实现一对一,一对多等关系映射的实现 一对一映射:association 一对多映射:collect ...

  9. PLSQL Developer 中文乱码踩坑记

    环境 操作系统版本: Windows 7 PL/SQL 版本: 12.0.1.1814 原因 由于 Oracle 服务器端和客户端字符集编码不一致引起的. 注意点 写在最前面,减少踩坑!!! 网上教程 ...

  10. Web三维编程入门总结之一:WebGL与Threejs入门知识

    /*在这里对这段时间学习的3D编程知识做个总结,以备再次出发.计划分成“webgl与three.js基础介绍”.“面向对象的基础3D场景框架编写”.“模型导入与简单3D游戏编写”三个部分,其他零散知识 ...