美文网首页
Linux命令基础知识

Linux命令基础知识

作者: 清风徐来_简 | 来源:发表于2019-05-21 16:35 被阅读0次

一、命令别名
二、历史命令
三、输出重定向
四、命令连接符
五、管道符
六、通配符
七、特殊符号

一、命令别名

  • 作用

    原命令太长,或者新命令代替了旧命令,但是习惯用旧命令。就可以将一条命令设置别名。

  • 查看系统当中的别名:alias

    当我们输入ls时,输出是有颜色的,可以查看别名:alias ls='ls --color=auto'
    如果想要不显示颜色区分,可以设置别名:alias ls='ls --color=never'

  • 设置别名

    alias 别名='原命令'(临时生效,重启消失)

  • 永久生效别名

    1,vi ~/.bashrc:写入环境变量配置文件(每一个用户都有自己单独的环境变量配置文件)

    [root@yonghui ~ 11:05:20]#cat ~/.bashrc
    # .bashrc
    
    # User specific aliases and functions
    
    alias rm='rm -i'  【已经有了几个别名】
    alias cp='cp -i' 
    alias mv='mv -i'
    【可以自己添加别名】
      
    # Source global definitions
    if [ -f /etc/bashrc ]; then
        . /etc/bashrc
    fi
    export WORKON_HOME=~/Envs
    VIRTUALENVWRAPPER_PYTHON=/opt/python347/bin/python3
    source /opt/python347/bin/virtualenvwrapper.sh
    

    2,source .bashrc:重新读取配置文件,不用重启计算机

  • 删除别名

    unalias 别名:临时删除,如果写进了文件,需要将设置的别名删除

  • 举个栗子

    alias rm="echo '禁止使用rm'":设置linux别名,给rm设置了别名就不能用rm命令了
    unalias rm:取消linux别名

别名的优先级高于系统内部或外来命令。

二、历史命令

  • 查看历史命令:history
  • 历史命令保存文件地址

    ~/.bash_history(用户家目录下的.bash_history中,每个用户都有自己的历史命令)。
    输入history和查看文件内容稍微有点儿差距,那是因为还有一些命令没有写入,当用户自动退出之后就会将本次登录的所有历史命令写入文件。

  • 清空历史命令:history -c

    建议不要清空历史命令:历史命令可以帮助我们查看之前的操作。如果系统出错,也可帮我们排错。
    历史命令默认保存1000条,超出部分不写入,可通过cat /etc/profile查看:HISTSIZE=1000,当然也可更改

  • 强制写入文件:history -w
  • 使用历史命令快捷方式

    上下箭头:可以调用以前的历史命令
    !n:可以重复执行第n条命令(先输入history查看对应的编号)
    !!:重复执行上一条命令
    !字符串:重复执行最后一条以该字符串开头的命令

三、输出重定向(输入重定向不常用)

  • 作用
    将原本输出到显示器的内容,输出至文件。如果命令直接回车,就是将内容输出到显示屏。
命令格式 说明
ifconfig >test.log 将内容输出到文件(文件不存在会创建,存在会覆盖)
ls >>test.log 将内容追加至文件,不是覆盖 (只写入正确命令)
ldd 2>>test.log 将错误的信息记录下来(只记录错误命令,正确命令会执行,不写入)
注意:错误输出时,符号左右两边没有空格,正确输出时无所谓。

必须知道是否是错误的命令才能写好格式,但是我们事前有可能不知道命令正确与否。所以就有了后者。

  • 无论正确错误,都会写进文件。
命令格式 说明
命令 > 文件 2&1 以覆盖的方式,把正确输出和错误输出都保存到同一个文件中
命令 &>文件 以覆盖的方式,把正确输出和错误输出都保存到同一个文件中
命令 >> 文件 2>&1 以追加的方式,把正确输出和错误输出都保存到同一个文件中
命令 &>>文件 以追加的方式,把正确输出和错误输出都保存到同一个文件中
命令>>文件1 2>>文件2 把正确输出追加到文件1,错误输出追加到文件2

ls &>/dev/null:将命令结果放进黑洞,不显示,也不写入文件

四、命令连接符

; :连接多条命令,无论能否正确执行,都按顺序执行
&& :(逻辑于)命令一正确执行,才能执行命令二
|| :(逻辑或)一正确执行,二不执行;一不正确执行,二才执行
命令 && echo yes || echo no:程序自动执行时,判断命令是否会正确执行。
可以通过命令结果中是否有yes/no来判断。

五、管道符

|: 多命令顺序执行,将一的正确输出结果作为命令二的输入(如果一执行错误,二不会执行)
ps -ef |grep python:查看正在运行的有关python的程序
netstat -an |grep ESTABLISHED |wc -l:查看服务器上链接了多少人
ls /tmp|grep '.txt':找到/tmp目录下所有txt文件
netstat -tunlp |grep nginx:检查nginx的端口是否存活
head -30 /tmp/test.txt |tail -21:显示文件10-30行
ls |grep -v wen.mp3 |xargs rm -f:删除当前目录除了wen.mp3之外的所有文件

六、通配符

ll test*:查看以test开头的文件
?:匹配一个任意字符
*:匹配任意字符,匹配任何内容
[]:匹配中括号里的任意一个内容
[a-z]:匹配a-z的任意一个字符
[^]:匹配除了组内的字符

七、特殊符号

a=123
$a             $ -->直接调用变量的值
echo '$a'     '' -->$a
echo "$a"     "" -->123
aa=$(ls)     $() -->将系统命令执行赋给变量,相当于反引号`ls`
               # -->注释
               \ -->转义符

相关文章

网友评论

      本文标题:Linux命令基础知识

      本文链接:https://www.haomeiwen.com/subject/wspjzqtx.html