我是编程/开发的新手,我在安装开发工具时遇到了麻烦。安装时最大的问题之一就是了解shell或终端(它们是同一个东西吗?)以及它与安装工具的关系比如unrustify例如。我需要阅读什么才能理解shell / terminal和$ PATH?
答案 0 :(得分:2)
你试过Google吗?
答案 1 :(得分:1)
(我认为你到目前为止在PATH上得到了很好的建议)
shell的最通用描述是一个促进程序交互的程序。程序便于与OS进行“通信”,以便通过硬件执行工作。
您通常会使用两种模式与 shell 进行交互。
一个命令行处理器,在这里你可以逐个字母地输入命令,直到你按下回车键。然后shell将读取您输入的内容,验证它是否理解您所要求的一般形式,然后开始运行您键入的内容中指定的1个(或更多)程序。
批处理脚本处理器。在这种情况下,您已将要执行的所有命令组合到一个文件中,然后通过几个机制中的一个,您安排批处理脚本运行,以便它依次运行您指定的命令并且计算机执行您的操作为你工作。你做过Windows .Bat文件吗?同样的想法,但更强大。
所以,终端寡妇是一个负责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.
我希望这会有所帮助。