我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Shell的参数有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Shell的参数有哪些

这篇文章主要为大家展示了“Shell的参数有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Shell的参数有哪些”这篇文章吧。

Shell 参数


   传递参数:可以将外部的值传递到脚本的内部函数中,提高脚本的灵活性;可以添加脚本的使用选项,增加脚本的可定制性。

     Shell的参数有哪些

     上图显示了 Shell 中函数的参数传递:定义函数 testfunc();函数输出两个引用参数,$# 表示传入函数的参数个数,$@ 表示所有参数的内容。

Shell的参数有哪些

     值得注意的是,如果拥有的参数多余 9 个,则不能使用 $10 来引用第十个参数,必须先处理或者保存第一个参数($1),然后使用 shift 命令删除第一个参数,并将剩下的参数上移一位,则 $10 就变成了 $9,以此类推,而 $# 的值将被更新以反映剩余参数的个数。实际情况中,一般使用迭代的方法完成这个约束。
     许多 UNIX 程序遵循以下原则:从标准输入(standard input)读入,经过处理,从标准输出(standard output)输出,将异常及错误报告到标准错误(standard error)。这样的程序被称为过滤器(filter)。
    重定向符号 command>filename 会将 command 的标准输出重定向到 filename 中而不是打印在控制台,如果有同名 filename,则覆盖它,如果没有,则新建;command>>filename 会将 command 的标准输出以追加的形式重定向到 filename,不会覆盖同名文件;command<filename 将command="" 的标准输入重定向为="" filename;管道符号="" command1|command2="" 将="" command1="" 的标准输出与="" command2="" 标准输入相连。     理论上讲,管道功能可以通过创建临时文件,使用重定向符号实现。但是管道符号可以直接连接程序的输入输出,并且没有程序使用个数限制,只要尚未获得最终处理结果,就可以继续添加管道。管道的数据共享在 Linux 内核中是通过内存拷贝实现的,相较于 CPU 的计算,数据的移动往往更消耗时间,因此在设计管道的时候,尽量把能够减少数据量的操作置于管道的前端,一来数据拷贝速度快,二来程序运算量少。
    内核(kernel)利用文件描述符(file descriptor)来访问文件。文件描述符为非负整数。打开现存文件或新建文件时,内核会返回一个文件描述符。读写文件也需要使用文件描述符指定待读写的文件。
   文件描述符表:用户区的一部分,除非通过使用文件描述符的函数,否则程序无法对其进行访问。对进程中每个打开的文件,它都包含一个条目。
    系统文件表:为系统中所有的进程共享。对每个活动的 open 都包含一个条目。每个系统文件表的条目都包含文件偏移量、访问模式(读、写、读写),以及指向它的文件描述符表的条目计数。每个进程的文件表在系统文件表中的区域都不重合,这样使每个进程都有它自己对该文件的当前偏移量。
   内存索引节点表:对系统中的每个活动的文件(被某个进程打开了),内存中的索引节点表都包含一个条目。几个系统文件表条目可能对应于同一个内存索引节点表(不同进程打开同一文件)。
    每个进程维护自己的文件描述符表,当进程调用文件描述符相关的函数或命令时,会对其进行修改操作;文件描述符表中的每一项指向系统文件表;系统文件表被所有进程共享,处于内核区,与内存中的索引节点表对应。因此,进程通过对文件描述符表的操作,访问被内存中的索引节点表控制的文件。
    标准输入的文件描述符是 0,标准输出的文件描述符是 1,标准错误的习惯描述符是 2。1> 表示重定向标准输出,2> 表示重定向标准错误,0< 表示重定向标准输入,&> 表示重定向标准输出和标准错误。文件描述符是由无符号整数表示的句柄,进程使用它来标识打开的文件,它与包括相关信息(如文件的打开模式、文件的位置类型、文件的初始类型等)的文件对象相关联,这些信息被称为文件的上下文。
    特殊文件:/dev/null 非常接近于一个只写文件,所有写入它的内容都会永远丢失,而且读取它的结果是空值,一般用于重定向标准输出或标准错误,或者清空某个文件的内容并且不改变文件权限。/dev/zero 会产生一个 null 流(二进制的 0 流,而不是 ASCII 类型),主要用来创建一个指定长度、并且初始化为空的文件,一般用作临时交换文件。
    
   常见 Linux 文件类型
    普通文件:用 ls -lh 查看某个文件的属性,第一个字符为 - 的文件。一般是用一些相关的应用程序创建,用 rm 命令删除。
    目录:第一个字符为 d 的文件。创建目录可以使用 mkdir 或 cp 命令,删除用 rm 或 rmdir。
    字符设备或块设备文件:第一个字符为 c 表示字符设备文件,b 表示块设备。用 mknode 创建,用 rm 删除。但是一般不自主创建,它们跟内核相关联的。
    套接口文件:第一个字符为 s 的文件。
    符号链接文件:第一个字符为 l 的文件。通过命令 “ln -s 源文件名 新文件名”创建。类似于 windows 系统中的快捷方式。

以上是“Shell的参数有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Shell的参数有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Shell的参数有哪些

这篇文章主要为大家展示了“Shell的参数有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Shell的参数有哪些”这篇文章吧。Shell 参数 传递参数:可以将外部的值传递到脚本的内部函
2023-06-06

linux shell命令行参数有哪些

Linux shell命令行参数有以下几种常见类型:选项参数:以"-“或”–"开头的参数,用于控制命令的行为。例如,“ls -l"中的”-l"表示以长格式输出文件列表。位置参数:指定命令操作的目标对象或文件。例如,"cp file1 fi
linux shell命令行参数有哪些
2024-02-29

shell脚本命令行参数有哪些

本篇内容主要讲解“shell脚本命令行参数有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“shell脚本命令行参数有哪些”吧!之所以用到命令行参数,关键在于shell脚本需要与运行脚本的人员
2023-06-09

shell中脚本参数传递的方法有哪些

这篇文章主要介绍了shell中脚本参数传递的方法有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方式一:$0,$1,$2..采用$0,$1,$2..等方式获取脚本命令行传
2023-06-09

Vim的参数有哪些

今天小编给大家分享一下Vim的参数有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。语法vim [参数] [文件 ..]
2023-06-28

C#参数有哪些

这篇文章主要讲解了“C#参数有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#参数有哪些”吧!简单类型(比如int,double,char),enum类型,struct类型都是值类型。
2023-06-17

Rsync参数有哪些

这篇文章主要为大家展示了“Rsync参数有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Rsync参数有哪些”这篇文章吧。Rsync 参数选项说明-v, --verbose 详细模式输出 -
2023-06-16

float有哪些参数

float的参数有整数、字符串、浮点数、科学计数法字符串、布尔值、None、其他类型等。详细介绍:1、整数,可以直接将整数转换为浮点数;2、字符串,可以将表示浮点数的字符串转换为浮点数;3、浮点数,如果参数已经是浮点数,直接返回该值;4、科
2023-10-22

oracle decode的参数有哪些

Oracle的DECODE函数有以下参数:expression:需要比较的表达式或列。search_value1:第一个要比较的值。result1:如果表达式等于search_value1,则返回的结果。search_value2:第
oracle decode的参数有哪些
2024-04-09

C#参数数列有哪些

这篇文章主要介绍“C#参数数列有哪些”,在日常操作中,相信很多人在C#参数数列有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#参数数列有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!C#种的四
2023-06-17

Python有哪些函数参数

本篇内容介绍了“Python有哪些函数参数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、函数参数匹配表语法位置解释func(value)
2023-06-02

c++ main函数的参数有哪些

C++的main函数通常有两个参数,它们是:1. argc(argument count):表示命令行参数的个数,包括执行文件本身。2. argv(argument vector):是一个指向指针数组的指针,其中每个指针指向一个命令行参数的
2023-09-05

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录