zoukankan      html  css  js  c++  java
  • 终端打印

    shebang是一个文本行,其中#!位于解释器路径之前。/bin/bashBash的解释器命令路径。 有两种运行脚本的方式。一种是将脚本作为bash的命令行参数,另一种是授予脚本执行权

    限,将其变为可执行文件。 将脚本作为命令行参数时的运行方式如下(#号后面的文本是注释,不必输入到命令行中):

    $ bash script.sh #假设脚本位于当前目录下 或者

    $ bash /home/path/script.sh #使用script.sh的完整路径 如果将脚本作为bash的命令行参数来运行,那么就用不着脚本中的shebang了。

    要是有需要的话,可以利用shebang来实现脚本的独立运行。对此必须设置脚本的可执行权 限,这样它就可以使用位于#!之后的解释器路径来运行了。就像这样:

        $ chmod a+x script.sh
    

    该命令赋予所有用户script.sh文件的可执行权限。这个脚本能以下列方式执行: $ ./script.sh #./表示当前目录

    $ /home/path/script.sh #使用脚本的完整路径 内核会读取脚本的首行并注意到shebang#!/bin/bash。它识别出/bin/bash并在内部像这

    样执行该脚本:

        $ /bin/bash script.sh
    

    当启动shell时,它一开始会执行一组命令来定义诸如提示文本、颜色等各类设置。这组命令 来自位于用户主目录中的脚本文件~/.bashrc(对于登录shell则是~/.bash_profile)。Bash还维护了一 个历史记录文件~/.bash_history,用于保存用户运行过的命令。

    终端是交互式工具

    echo 234;

    echo '123';

    echo "123";

    前两种效果是一致的 直接打印原文

    使用双引号会识别里面的特殊字符 需要使用转义字符进行转义

     $ echo "cannot include exclamation - ! within double quotes"

    bash: !: event not found error
    

    每种方法的副作用如下所述。

    •   使用不带引号的echo时,没法在所要显示的文本中使用分号(;),因为分号在Bash shell 中被用作命令定界符。

    •   echo hello;hello为例,echo hello被视为一个命令,第二个hello则被视为另一 个命令。

    •   变量替换在单引号中无效,在下一则攻略中会详细讨论。

     $ printf "Hello world"

    printf使用引用文本或由空格分隔的参数。我们可以在printf中使用格式化字符串,还可以指 定字符串的宽度、左右对齐方式等。在默认情况下,printf并不像echo命令一样会自动添加换 行符,我们必须在需要的时候手动添加,比如在下面的脚本中:

    #!/bin/bash #文件名: printf.sh

    printf  "%-5s %-10s %-4s
    " No Name  Mark
    printf  "%-5s %-10s %-4.2f
    " 1 Sarath 80.3456
    printf  "%-5s %-10s %-4.2f
    " 2 James 90.9989
    printf  "%-5s %-10s %-4.2f
    " 3 Jeff 77.564
    
    我们会得到如下格式化的输出:
    No Name   Mark   
    1 Sarath  80.35  
    2 James   91.00  
    3 Jeff    77.56  

    %-5s  是 格式替换符

    思考 echo prinft 是不是可以 跟参数?


     

  • 相关阅读:
    FJNU 1151 Fat Brother And Geometry(胖哥与几何)
    FJNU 1157 Fat Brother’s ruozhi magic(胖哥的弱智术)
    FJNU 1159 Fat Brother’s new way(胖哥的新姿势)
    HDU 3549 Flow Problem(最大流)
    HDU 1005 Number Sequence(数列)
    Tickets(基础DP)
    免费馅饼(基础DP)
    Super Jumping! Jumping! Jumping!(基础DP)
    Ignatius and the Princess IV(基础DP)
    Keywords Search(AC自动机)
  • 原文地址:https://www.cnblogs.com/tianzhiyun/p/9457765.html
Copyright © 2011-2022 走看看