news 2026/7/7 7:04:37

8、深入探索Shell:命令编写与变量使用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
8、深入探索Shell:命令编写与变量使用

深入探索Shell:命令编写与变量使用

1. 命令文件的编写与执行

在Shell中,当我们输入类似who | wc -l的命令时,实际上就是在进行编程。Shell会解释命令行,识别管道符号,将第一个命令的输出连接到第二个命令的输入,并启动两个命令的执行。

我们可以直接在终端输入Shell程序,也可以将命令写入文件,然后让Shell执行该文件。例如,若要多次查看登录用户的数量,可将who | wc -l写入一个名为nu的文件:

$ cat nu who | wc –l $

尝试执行该文件时,可能会遇到问题:

$ nu sh: nu: cannot execute $

这是因为在执行脚本前,需要使用chmod命令更改文件权限,使其可执行:

$ ls -l nu -rw-rw-r-- 1 steve steve 12 Jul 10 11:42 nu $ chmod +x nu $ ls -l nu -rwxrwxr-x 1 steve steve 12 Jul 10 11:42 nu $

再次尝试执行:

$ nu 8
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 18:07:04

5、符号表与索引生成器详解

符号表与索引生成器详解 1. 引言 在许多flex或bison程序中,符号表起着至关重要的作用,它用于跟踪输入中使用的名称。下面我们将从一个简单的索引生成程序开始,逐步深入探讨如何利用符号表来实现不同功能,最后还会介绍一个较为实用的C语言交叉引用程序。 2. 索引生成器 …

作者头像 李华
网站建设 2026/7/7 4:07:54

6、深入探索Flex与Bison:从简单程序到复杂语法解析

深入探索Flex与Bison:从简单程序到复杂语法解析 1. Flex程序基础与实践 在开始复杂的语法解析之前,先了解一个简单但实用的Flex程序。该程序会包含当前程序特定的同一目录下的文件,同时跳过其他目录中的库文件。主程序调用 newfile 函数,如果成功则对每个文件调用 yyl…

作者头像 李华
网站建设 2026/7/7 10:53:14

10、Shell编程中的参数传递与条件判断

Shell编程中的参数传递与条件判断 1. 参数传递基础 在Shell编程里,学会处理传递给程序的参数能让程序变得更实用。当执行一个Shell程序时,Shell会自动把第一个参数存到特殊变量 $1 里,第二个参数存到 $2 里,依此类推。这些特殊变量也被叫做位置参数,它们是在Shell完…

作者头像 李华
网站建设 2026/7/7 6:32:39

7、深入探索计算器编译器:从基础到高级应用

深入探索计算器编译器:从基础到高级应用 1. 代码基础与错误处理 首先来看一些基础代码片段,这里涉及到树节点的释放和错误处理函数。 /* no subtree */ case K:free(a);break; default: printf("internal error: free bad node %c\n", a->nodetype); }这段代…

作者头像 李华
网站建设 2026/7/7 1:28:50

终极自动点击工具:MouseClick如何快速解放你的双手?

终极自动点击工具:MouseClick如何快速解放你的双手? 【免费下载链接】MouseClick 🖱️ MouseClick 🖱️ 是一款功能强大的鼠标连点器和管理工具,采用 QT Widget 开发 ,具备跨平台兼容性 。软件界面美观 &am…

作者头像 李华
网站建设 2026/7/7 17:09:14

LaserGRBL激光雕刻软件:从零基础到高手的完整操作指南

LaserGRBL激光雕刻软件:从零基础到高手的完整操作指南 【免费下载链接】LaserGRBL Laser optimized GUI for GRBL 项目地址: https://gitcode.com/gh_mirrors/la/LaserGRBL 还在为复杂的激光雕刻软件而头疼吗?LaserGRBL让这一切变得简单直观。作为…

作者头像 李华