++_vte_ prompt_ command
+++ HISTTIMEFORMAT=
+++ history 1
+++ sed 's/^ *[0-9] \+ *//'
++ local ' command=ip netns list'
++ command=' ip netns list'
++ local ' pwd=~'
++ '[' /home/u '!= /root ] '
++ pwd=/ home/u
+++_vte_ osc7
++++_ vte_ urlencode /home/u
++++LC_ ALL=C
++++ str=/ home/u
++++ ' [' -n /home/u '] '
++++ safe=/ home/u
++++ printf %s /home/u
++++ str=
++++' [ '-n ' ' ' ] '
++++' [ '-n ' ' ' ] '
+++ printf 1 \033j 7; file: / /%s%s\007' 192.168.192.130 /home/u
++ printf ' \033] 777; notify; Command completed; %s \007\033] 0; %s@%s: %s\007%s' ' ip netns list' u 192 /home/u ' '

  如果你也一样出现上面这种情况,输入set +x指令即可,然后再输其他指令就不会出现这些了。

原因:

  • set -x  执行指令后,会先显示该指令及所下的参数。
  • set +<参数>  取消某个set曾启动的参数。

  更多关于set指令的使用以及其参数的介绍可以在终端使用指令man set进行查看,上网查找也可,这里不再过多说明。下面我主要解释一下执行set -x后为什么输出这些东西。

  事情的起因是前几天我一个同学做实验时他的终端莫名其妙多输出一些信息,看起来像是记录用户操作的(见文章开头)。当时在网上也没有查到太确切的内容,由于也不是我操作的,并不清楚为什么会出现这种情况。所以我自己动手试了试,发现了个很有趣的现象:

  我使用su root指令切换到root身份,执行set -x,会出现上述情况,截图如下:

  而使用su - 指令进行身份切换后,执行set -x,则是这种情况,截图如下:

  两种切换用户身份方式的区别请参考这篇博文:(总结)Linux下su与su -命令的本质区别

  大致来说区别就是前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。

  然后我上网查阅时看到大家经常提到环境变量,接着我就在普通用户的环境变量里找到这样一个变量,但是在root用户下没有找到:

  感觉这是问题的关键,我进行在文件夹里搜到了这个脚本:

  打开后内容如下:

  看完这个脚本,我想你大概已经知道为什么会输出哪些信息了。至于更具体的原因,我也在等一个大佬指点我一番(这对我这种这今年刚接触Linux的小白太难了)

  如果这些对你有帮助的话,不妨支持一下,也欢迎各位转载,记得注明出处就行,非常感谢

Linux 终端运行命令时出现多行带有加号的信息(详见文章内容)的更多相关文章

  1. Linux终端打印命令使用介绍

    常用linux打印命令 日常使用中或shell脚本中linux终端打印命令有echo和printf.  echo命令 功能说明:显示文字.语 法:echo [-ne][字符串]或 echo [--he ...

  2. 在Linux中输入命令时打错并按了enter

    今天在Linux中输入命令时,打错一个单词了,之后出现一串串的~,按ESC也没用, 并在底部出现:quit<enter> to exit vim 解决办法: 按几下 esc 确保 vim ...

  3. 解决Docker运行命令时提示"Got permission denied while trying to connect to the Docker daemon socket"类情况

    Docker安装命令: 解决Docker运行命令时提示"Got permission denied while trying to connect to the Docker daemon ...

  4. 在VSCODE的终端运行Python时汉字乱码问题处理

    问题描述 在VSCODE的终端运行Python时,打印输出中文时汉字出现乱码, 文件编码都是UTF-8 解决步骤 1.打开Settings配置窗口(Ctrl+,) 2.搜索:code-runner.e ...

  5. Linux后台运行命令 nohup command > myout.file 2>&1

    Linux命令后台运行 转自北国的雨,谢谢:http://www.cnblogs.com/lwm-1988/archive/2011/08/20/2147299.html 有两种方式:1. comma ...

  6. Linux程序员福利 - 追女友神奇(Linux终端运行炫酷程序)

    概述 作为IT人员,给同事的感觉呆板,不会会浪漫,不懂情趣.其实不然,我们可以用我们的技能创造出IT人员独有的浪漫.girlLove脚本就可以实现IT人员的浪漫.girlLove本质上是一个简易的问答 ...

  7. Linux 执行partprobe命令时遇到Unable to open /dev/sr0 read-write (Read-only file system)

    在使用fdisk创建分区时,我们会使用partprobe命令可以使kernel重新读取分区信息,从而避免重启系统,但是有时候会遇到下面错误信息"Warning: Unable to open ...

  8. linux后台运行命令:&和nohup

    常用后台运行命令包含:&和nohup 一.& 使用 当在前台运行某个作业时,终端被该作业占据:可以在命令后面加上& 实现后台运行.例如:sh test.sh & 适合在 ...

  9. Linux 后台运行命令:nohup 和 &

    [参开文章]:nohup 与 & 的区别 1. nohup 1.1 基本概念 将程序以忽略挂起信号的方式运行起来: 不可以免疫 Ctrl + C  的 SIGINT 中断信号: 可以免疫 SI ...

  10. 让Linux开机运行命令

    开机的时候需要linux 自动执行命令很简单 只需要把要执行的命令输入操作系统启动的时候要加载的文件里面就行了,一般写在 /etc/rc.local里面 #vim /etc/rc.local 按o键  ...

随机推荐

  1. VUE商城项目 -商品分类功能 - 手稿

  2. 自己理解的TCP三次握手

    ### TCP 三次握手过程是怎样的? TCP的建立连接是通过三次握手来进行的.三次握手的过程如下图: 说实话这个很好理解,我称之为N字型 首先我们理解到建立连接是一个虚的概念了对吧?那么我们来设计一 ...

  3. 记一次 CDN 流量被盗刷经历

    先说损失,被刷了 70 多RMB,还好止损相对即时了,亏得不算多,PCDN 真可恶啊. 600多G流量,100多万次请求. 怎么发现的 先是看到鱼皮大佬发了一篇推文突发,众多网站流量被盗刷!我特么也中 ...

  4. 解决方案 | 如何解决subprocess.Popen(cmd)代码中含有空格路径的问题?

    一.背景 因为在python中需要用到subprocess.Popen(cmd),其中cmd由一堆连接的字符串构成:譬如,xxx.exe inputdir outputdir -arg1 -arg2 ...

  5. 精品 IDEA 插件大汇总!值得收藏

    轻松提高 Java 开发效率 俗话说,工欲善其事,必先利其器.想要提升编程开发效率,必须选择一款顺手的开发工具. 对于 Java 开发者,JetBrains IDEA 无疑是目前最主流的开发工具,既简 ...

  6. 关联的巧妙用法limit_choices_to

    sa_no = models.ForeignKey(CU004HModel, verbose_name='销货单', on_delete=models.PROTECT, related_name='C ...

  7. Visual Studio中如何解决error C4996: 问题

    error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To di ...

  8. Django模型中的save方法 精讲

    两种方法定义在Django模型中的save方法有不同的参数处理方式. 第一种方法: def save(self, *args, **kwargs): super().save(*args, **kwa ...

  9. 15、SpringMVC之常用组件及执行流程

    15.1.常用组件 15.1.1. DispatcherServlet DispatcherServlet 是前端控制器,由框架提供,不需要工程师开发: 作用:统一处理请求和响应,整个流程控制的中心, ...

  10. 【Scala】07 集合

    分三大类: 序列 Seq 集 Set 映射 Map 所有集合类型都扩展自Iterable特质(可迭代的) 所有集合类型都提供[可变]和[不可变]的版本 归纳在下面两个包中 scala.collecti ...