美文网首页
交互式shell与非交互式shell

交互式shell与非交互式shell

作者: 剑雪封侯之 | 来源:发表于2020-03-18 00:56 被阅读0次

交互式shell会通过tty从tty上读取数据,一般脚本为非交互式(不需要从tty读取数据)。

非交互式的shell仍然可以访问它的tty.如下所示:

#将读取到的内容输出

#!/bin/bash
PROMPT='$ '
while :
do
    echo -n "$PROMPT"
    read line
    echo "$line"
done

测试一个脚本是否运行在交互式shell的方法如下:

#!/bin/bash

if [ -z $PS1 ]
then
    echo "运行在交互式shell"
else
    echo "运行在非交互式shell"
fi

使用#!/bin/bash -i可以强制脚本运行在交互模式下。慎用,可能会产生各种古怪行为。

相关文章

网友评论

      本文标题:交互式shell与非交互式shell

      本文链接:https://www.haomeiwen.com/subject/grufyhtx.html