env printenv set declare export

 

env and printenv is not shell builtin, so they can only print environment variables.

env:       run a program in a modified environment

  1. --ignore-environment -i -          start with an empty environment

     

  2. -0 -null     end each output line with NUL, not newline

     

     

  3. --unset -u      remove variable from the environment

     

     

  4. --chdir        change working directory

     

     

  5. --split-string -S          allow specifying multiple parameters in a script

     

     

     

  6. sh -c 'env --block-signal=PIPE seq inf'
    
    kill -s SIGPIPE `pgrep seq`  # can't stop seq

     

  7. sh -c 'env --ignore-signal=PIPE seq inf'
    
    kill -s SIGPIPE `pidof seq`  # can't stop seq

     

  8. to be continue

printenv:

  1. printenv

  2. printenv variable

     

     

declare:

  1. -p     display the attributes and value of each NAME

     

      

  2. -n       name reference

     

     

  3. -x        make NAME export

     

     

  4. -i        make NAME have the integer attribute
    0) value is interpreted as 0
    1) value is interpreted as integer
    2) Error

    In addition to modifying the value assignment behavior, variables now behave defferently in arithmetic expressions!

     

     

  5. In bash variables may have case attributes on assignment 

     

     

  6. -r       make NAME readonly
    +r option does not work; that is stripping a variabl of its readonly attribute is not allowed in bash

  7. -a         make NAME indexed array
    -A         make NAME associative array

     

     

     

  8. -g        create global variables when used in a shell function, When used in function "declare" makes NAME local, as with th "local" command, The -g option suppress this behavior

     

     

export:

 

 

  1.  -f

     

    Let export the function name
    ! there is only one way to disable export a function

     export -nf function

    there are two ways to export a function

    declare -fx function  # use -f -x simultaneously
    export -f function

     

     

  2. -n       Remove the export property from NAME

     

     




     

     

     
posted @   ascertain  阅读(37)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2020-12-09 Linux: read
2020-12-09 Linux ":" 冒号 colon
点击右上角即可分享
微信分享提示