要查看进程的环境变量,可以使用如下命令:**

    cat /proc/$PID/environ
    
    # pgrep 查看进程 ID
    kchou@home-x470:~$ pgrep machine
    888
    
    # 查看环境变量
    kchou@home-x470:~$ sudo cat /proc/888/environ
    LANG=en_US.UTF-8LC_ADDRESS=zh_CN.UTF-8LC_IDENTIFICATION=zh_CN.UTF-8LC_MEASUREMENT=zh_CN.UTF-8LC_MONETARY=zh_CN.UTF-8LC_NAME=zh_CN.UTF-8LC_NUMERIC=zh_CN.UTF-8LC_PAPER=zh_CN.UTF-8LC_TELEPHONE=zh_CN.UTF-8PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binNOTIFY_SOCKET=/run/systemd/notifyWATCHDOG_PID=888WATCHDOG_USEC=180000000INVOCATION_ID=517c33ea343c469087f2473352ac434eJOURNAL_STREAM=9:36930
    

    文件/proc/PID/environ是一个包含环境变量以及对应变量值的列表。每 一个变量以name=value的形式来描述,彼此之间由null字符(\0)分隔。

    可以将cat命令的输出通过管道传给tr,将其中的\0替换成\n,来生成一份易读的报表。

    kchou@home-x470:~sudo cat /proc/888/environ  | tr '\0' '\n'
    LANG=en_US.UTF-8
    LC_ADDRESS=zh_CN.UTF-8
    LC_IDENTIFICATION=zh_CN.UTF-8
    LC_MEASUREMENT=zh_CN.UTF-8
    LC_MONETARY=zh_CN.UTF-8
    LC_NAME=zh_CN.UTF-8
    LC_NUMERIC=zh_CN.UTF-8
    LC_PAPER=zh_CN.UTF-8
    LC_TELEPHONE=zh_CN.UTF-8
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    NOTIFY_SOCKET=/run/systemd/notify
    WATCHDOG_PID=888
    WATCHDOG_USEC=180000000
    INVOCATION_ID=517c33ea343c469087f2473352ac434e
    JOURNAL_STREAM=9:36930
    

    tr: Translate, squeeze, and/or delete characters from standard input, writing to standard output.