zoukankan      html  css  js  c++  java
  • [CentOS] 指定命令别名:Alias & 软链接生成命令 ln -s

    参考:CentOS里alias命令详解

         每天一个linux命令(35):ln 命令

     

    1. Alias命令

    功能描述:我们在进行系统的管理工作一定会有一些我们经常固定使用,但又很长的命令。那我们可以给这些这一长串的命令起一个别名。之后还需要这一长串命令时就可以直接以别名来替代了。系统中已经有一些默认的命令别名。可以alias来查看。也可以查看家目录下的~/.bash_profile来查看,这个是属于用户个人的别名。如果要定义全局的别名,可以将定义写入/etc/bashrc档案中。通过alias去的别名,在系统重新启动过后会自动清除。修改后,要source一下才会生效。

    语法:alias [别名] = [指令名称]  

    取消别名:unalias [别名]

     

    使用实例:将 matlab 的版本号由 R2013a 更新为 R2015b

    (1)系统现有的别名

    [She@She ~]$ alias
    ...
    alias matlab='"/usr/local/MATLAB/R2013a/bin/matlab"'
    ...

    (2)编辑文件~/.bashrc。更改部分见彩色文字的标注。

    [She@She ~]$ vi ~/.bashr
    
    
    # .bashrc
    ...
    alias matlab='"/usr/local/MATLAB/R2013a/bin/matlab"'
    ...
    
    
    更改后:

    # .bashrc
    ...
    alias matlab='"/usr/local/MATLAB/R2015b/bin/matlab"'
    ...
    
    
    
    
    

    (3)用source命令更新环境变量,使更改生效。

    [She@She ~]$ source ~/.bashrc

     

    (4)查询系统现有的别名,以确认更新成功。

    [She@She ~]$ alias
    ...
    alias matlab='"/usr/local/MATLAB/R2015b/bin/matlab"'
    ...

    2. 用 ln 命令修复 shell 调用 matlab 时的 bug

    Bug描述:用 alias 命令指定的简写,可以在终端启动matlab,但不能在 shell 文件中运行matlab命令。

    Bug修复:用 ln -s 生成软链接,以搭配使用。

    (1)在终端可以正常启动 matlab

    [She@She ~]$  matlab -nodesktop -nojvm 
    
                                < M A T L A B (R) >
                      Copyright 1984-2015 The MathWorks, Inc.
                       R2015b (8.6.0.267246) 64-bit (glnxa64)
                                  August 20, 2015
    
     
    For online documentation, see http://www.mathworks.com/support
    For product information, visit www.mathworks.com.
     
    >> 

    (2)bug:在 shell 脚本中无法使用简写命令调用 matlab,只能使用含绝对路径的完整命令来调用 matlab:

        测试 m 文件 /home/She/tmp.m:

    pause(60);

       测试 shell 脚本 /home/She/test.sh:

    #!/bin/bash
    
    MatlabFile='/home/She/tmp.m'
    
    chmod +x ${MatlabFile}
    
    /usr/local/MATLAB/R2015b/bin/matlab  -nodesktop -nosplash -nojvm -r "run ${MatlabFile}; exit;"  # 可正常运行
    
    matlab  -nodesktop -nosplash -nojvm -r "run ${MatlabFile}; exit;"                               # 报错
    
    exit

       shell 报错如下:

    [She@She ~]$ ./test.sh
    ./test.sh: line 9: matlab: command not found
    [She@She ~]$ 

    (3)用 ln 命令修复 bug

    ln 命令的用法为: ln [参数] [源文件或目录] [目标文件或目录] 

                             注意:源文件和目标文件的顺序千万不要搞错了!

    使用 "ln" 命令生成软链接 /usr/bin/matlab,使它指向 matlab 的启动程序:

    [She@She ~]$ sudo ln -s /usr/local/MATLAB/R2015b/bin/matlab /usr/local/bin/matlab
    [sudo] password for She: 

    (4)再次测试 shell 脚本,一切正常

    [She@She ~]$ ./test.sh
    [She@She ~]$ 

     

  • 相关阅读:
    silverlight通过WCF访问SQLserver示例
    PRISM ‘VS100COMNTOOLS’ not set. Cannot set the build environment
    定义了重复的“system.web.extensions/scripting/scriptResourceHandler”节
    silverlight+WCF之Hello world
    Java基础——注释规范
    Java基础—JDK环境变量配置
    Java基础—异常
    Java基础—面向对象
    Java基础—基础语法与常用命令
    Eclipse添加Junit测试
  • 原文地址:https://www.cnblogs.com/snake553/p/5712507.html
Copyright © 2011-2022 走看看