zoukankan      html  css  js  c++  java
  • NO6 alias-unalias命令,递归创建目录,如何取消覆盖提示

    ·如果需要更新补丁则执行:
    ·yum update
    ·yum install lrzsz telnet tree nmap nc -y
    ·alias #查看系统现有的别名。
            一、设置别名eg:alias rm='echo this comand dose not allow to use.'
            二、别名的作用:
                1 通过给危险命令加一些保护参数,防止人为误操作。
                2 把很多复杂的字符串或命令变成一个简单的字符串或命令。
            三、定义别名永久生效:
                /etc/profile 全局生效
                ~/.bashrc   当前用户生效 (eg:只要rm别名还在~/.bashrc文件夹里,通过source ~/.bashrc可以找回来。)
    ·unalias #取消某一个,已经设置好的别名。


    ·问题九:请用一条命令完成创建目录/oldboy/test,即创建/oldboy目录及/oldboy/test目录。
    ·解答:
    mkdir -p /oldboy/test  #递归创建目录,一般第一级目录不存在时使用-p。否则报错。
    tree /oldboy/  #查看目录树结果。
    [root@localhost ~]# pwd
    /root
    [root@localhost ~]# mkdir -p /oldboy/test 
    [root@localhost ~]# tree /oldboy/
    bash: tree: command not found...   (没安装tree软件包,用yum install tree -y安装。)
    [root@localhost ~]# cd /oldboy
    [root@localhost oldboy]# ls       (其实已经创建好了)
    test
    [root@localhost oldboy]# tree /oldboy/ 
    /oldboy/
    └── test

    1 directory, 0 files
    ·其他的方法:mkdir /oldboy /oldboy/test
    ·如果tree命令不存在,可以使用yum install tree -y安装。

    ·问题十:已知/tmp目录下已经存在了test.txt文件,如何执行命令才能把mnt/test.txt拷贝到/tmp下覆盖掉/tmp/test.txt,而让linux系统不提示是否覆盖(root权限下)?
    ·解答:
    [root@localhost oldboy]# touch /tmp/test.txt
    [root@localhost oldboy]# touch /mnt/test.txt
    [root@localhost oldboy]# cp /mnt/test.txt /tmp/
    cp: overwrite ‘/tmp/test.txt’? y^H^C
    要让它不提示:( #反斜杠屏蔽别名功能)
    方法一:[root@localhost oldboy]# cp /mnt/test.txt /tmp/
    方法二:[root@localhost oldboy]# /bin/cp /mnt/test.txt /tmp/

    ·简要解释
    此题的思路就是屏蔽掉系统默认的对应命令别名,默认执行cp的操作时调用了别名的。所以会提示是否覆盖。
    系统为了保护文件,防止误操作,就给一些命令自动加一个参数来起到保护作用:
    [root@localhost oldboy]# alias  (alias #别名功能)这就是查看系统当前设定的别名。
    alias cp='cp -i'
    alias egrep='egrep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias grep='grep --color=auto'
    alias l.='ls -d .* --color=auto'
    alias ll='ls -l --color=auto'
    alias ls='ls --color=auto'
    alias mv='mv -i'
    alias rm='rm -i'
    alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
    方法三:取消别名功能,不推荐使用
            提示:命令行处理别名仅在当时生效,重启系统后就失效了。
    [root@localhost oldboy]# unalias cp (删除cp这个命令的别名)
    [root@localhost oldboy]# alias     (再查)就没有cp那一项了。
    alias egrep='egrep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias grep='grep --color=auto'
    alias l.='ls -d .* --color=auto'
    alias ll='ls -l --color=auto'
    alias ls='ls --color=auto'
    alias mv='mv -i'
    alias rm='rm -i'
    alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

    此时不加/bin或者,cp命令也不会再提示了:
    [root@localhost oldboy]# cp /mnt/test.txt /tmp/
    [root@localhost oldboy]# cp /mnt/test.txt /tmp/


    ·unalias #取消某一个,已经设置好的别名。
    ·alias #查看系统现有的别名。
     、设置别名eg:
      [root@localhost oldboy]#alias rm='echo this comand dose not allow to use.' (设置rm命令不在能使用)
      [root@localhost oldboy]#alias|grep rm
      alias rm='echo this comand dose not allow to use.'
      [root@localhost oldboy]#rm
      this comand dose not allow to use.
      [root@localhost oldboy]#alias net='cat /etc/sysconfig/network-scripts/ifcfg-eth0'
      [root@localhost oldboy]#net (以后敲net就行了,直接出现网卡信息)
      、别名的作用:
      1 通过给危险命令加一些保护参数,防止人为误操作。
      2 把很多复杂的字符串或命令变成一个简单的字符串或命令。、
      三、定义别名永久生效:
      /etc/profile 全局生效
      ~/.bashrc   当前用户生效
      ·只要别名还存在~/.bashrc里,可通过source命令把删除的别名找回来。
      [root@localhost oldboy]# 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
            [root@localhost oldboy]# source ~/.bashrc
            [root@localhost oldboy]# alias
            alias cp='cp -i'
            alias egrep='egrep --color=auto'
            alias fgrep='fgrep --color=auto'
            alias grep='grep --color=auto'
            alias l.='ls -d .* --color=auto'
            alias ll='ls -l --color=auto'
            alias ls='ls --color=auto'
            alias mv='mv -i'   (如果前面删除rm命令的别名,只要rm别名还在~/.bashrc文件夹里,通过source ~/.bashrc可以找回来。)
            alias rm='rm -i'
            alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
          
      如何取消alias的命令:


         

  • 相关阅读:
    PHP foreach 循环
    C#导出Excel时间格式问题
    vs2015 key
    C# 的Chart
    线程暂停与继续实现
    CCNA网络工程师学习进程(2)基本的网络设备
    CCNA网络工程师学习进程(1)网络的基本概述
    安卓学习进程(3)安卓开发工具的简介
    安卓学习进程(2)Android开发环境的搭建
    安卓学习进程(1)移动平台开发的简介
  • 原文地址:https://www.cnblogs.com/sinsenliu/p/8931350.html
Copyright © 2011-2022 走看看