我需要阅读什么来理解$ PATH

时间:2011-05-11 20:43:47

标签: shell terminal path-variables

我是编程/开发的新手,我在安装开发工具时遇到了麻烦。安装时最大的问题之一就是了解shell或终端(它们是同一个东西吗?)以及它与安装工具的关系比如unrustify例如。我需要阅读什么才能理解shell / terminal和$ PATH?

2 个答案:

答案 0 :(得分:2)

你试过Google吗?

答案 1 :(得分:1)

(我认为你到目前为止在PATH上得到了很好的建议)

shell的最通用描述是一个促进程序交互的程序。程序便于与OS进行“通信”,以便通过硬件执行工作。

您通常会使用两种模式与 shell 进行交互。

  1. 一个命令行处理器,在这里你可以逐个字母地输入命令,直到你按下回车键。然后shell将读取您输入的内容,验证它是否理解您所要求的一般形式,然后开始运行您键入的内容中指定的1个(或更多)程序。

  2. 批处理脚本处理器。在这种情况下,您已将要执行的所有命令组合到一个文件中,然后通过几个机制中的一个,您安排批处理脚本运行,以便它依次运行您指定的命令并且计算机执行您的操作为你工作。你做过Windows .Bat文件吗?同样的想法,但更强大。

  3. 所以,终端寡妇是一个负责a的程序。得到输入和b。,打印输出。当你进入Unix系统基础的c编程时,你所说的是OS设计的一个特性,叫做Standard In和Standard Out。正常的unix命令期望从StdIn读取指令并将输出打印到StdOut。

    当然,所有好的程序都可以从文件中获取输入并将输出写入文件,大多数程序将接管StdIn / Out和处理文件,而不是从键盘读取输入和/或写入屏幕。

    要返回shell,此程序允许您在终端窗口打开时键入。有许多版本的shell可能会遇到并且具有支持a的不同级别的功能。互动模式,b。批处理脚本模式。

    总结一下,这里是终端和shell

    所涉及的内容(非常基本)
    (run a) terminal-window (program) 
       shell-command-prompt (program) (automatically started as subprogram)
         1. enter commands one at a time, with input from
               a. typed at keyboard (std-in)
               b. infile
            and output to 
               a. screen (std-out)
               b. outFile
        program
           calls OS level functions for 
             a. computation
             b. I/O
     OR 2.
     (run the shell program without a terminal, usually from the cron sub-system)
       shell-batch-processor 
          shell program reads batch-script file, 1 'statement' at a time
          validate statements
          run program, relying on script or cfg to provide inFile data and 
            indicate where to put outfile data.
    

    我希望这会有所帮助。