set命令

阅读数:116 评论数:0

跳转到新版页面

分类

Linux

正文

一、概述

在 Linux 系统中,set 是一个 shell 内置命令,它用于设置和查看 shell 环境的参数和函数。set 命令的行为取决于所使用的 shell,比如 Bash、Zsh 或者其他兼容 POSIX 的 shell。

在 Bash 中,set 命令可以用于:

  • 查看所有的 shell 变量和函数(不带任何选项时)。
  • 改变 shell 选项和位置参数。
  • 启用或禁用 shell 特性和行为

1、设置shell选项

set 命令可以用来启用 (-) 或禁用 (+) shell 选项。例如:

  • 启用 shell 的调试模式,打印每个命令及其参数列表:
set -x
  • 禁用调试模式:
set +x

2、设置位置参数

set 命令还可以用来设置位置参数($1, $2, ...)。例如:

set -- arg1 arg2 arg3

这会设置 \$1 的值为 arg1\$2 的值为 arg2,依此类推。

二、常用参数

allexport -a 从设置开始标记所有新的和修改过的用于输出的变量

braceexpand -B 允许符号扩展,默认选项

emacs 在进行命令编辑的时候,使用内建的emacs编辑器, 默认选项

errexit -e 如果一个命令返回一个非0退出状态值(失败),就退出.

histexpand -H 在做临时替换的时候允许使用!和!! 默认选项

history 允许命令行历史,默认选项

ignoreeof 禁止coontrol-D的方式退出shell,必须输入exit。

interactive-comments 在交互式模式下, #用来表示注解

keyword -k 为命令把关键字参数放在环境中

monitor -m 允许作业控制

noclobber -C 保护文件在使用重新动向的时候不被覆盖

noexec -n 在脚本状态下读取命令但是不执行,主要为了检查语法结构。

noglob -d 禁止路径名扩展,即关闭通配符

notify -b 在后台作业以后通知客户

nounset -u 在扩展一个没有的设置的变量的时候, 显示错误的信息

onecmd -t 在读取并执行一个新的命令后退出

physical -P 如果被设置,则在使用pwd和cd命令时不使用符号连接的路径 而是物理路径

posix 改变shell行为以便符合POSIX要求

privileged 一旦被设置,shell不再读取.profile文件和env文件 shell函数也不继承任何环境

verbose -v 为调试打开verbose模式

vi 在命令行编辑的时候使用内置的vi编辑器

xtrace -x 打开调试回响模式




相关推荐

一、概述 在 Linux 内核中,__setup 宏和 early_param 宏是用于设置内核启动参数(也称为内核命令行参数)的处理函数的。这些参数在系统启动时由引导加载程序(比如 GRUB)传递给

一、概述 在Linux内核中,__setup宏用于定义内核启动时处理特定内核启动参数(也称为命令行参数)的函数。当内核启动时,它会解析传递给它的命令行参数,这些参数可以用来控制内核的行为和配置。 _

一、概述 在Linux内核中,smp_setup_processor_id 函数是在系统引导期间,特别是在多处理器系统中用于设置当前处理器ID的函数。这个函数在早期的系统初始化代码中调用,其目的是确定

一、概述 1、为什么Linus不使用GPLv3 在 PC 上,只要你得到了某个程序的源代码,就可以自行编译生成二进制程序,然后替换掉原有的二进制程序,你的程序自由很容易得到保证。然而 iPod、iPh

说明:这种方式只是用于方便阅读代码,因为可以在源代间快速索引跳跃。但是最后可能会有一些warning,可以不必关心,如果是强迫症,可以使用下面这种方式来去掉。

一、概述 在Linux系统中,/usr/bin和/usr/local/bin是两个常见的目录,用于存放可执行文件(二进制文件)。 很多应用都安装在/usr/local下面,先看一下automake工具

  一、概述 vmstat命令是最常见的Linux/Unix监控工具,可以监控给定时间间隔服务器的CPU使用率、内存使用、IO情况。相比top命令,可以查看到整个机器的CPU、内存、IO的使用情况,而

一、概述 sar,System Activity Reporter。是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁

一、简介 简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。 二、使用方法 1、基本语法  awk '条件类型1 {动作1} 条件类型2{动作2} ...

一、概述 列出目标目录中所有的子目录和文件。 二、 语法 ls [选项] [目录名] -a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件 -A 同-a,但不列出“.”(表示当前目录)