Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 将文本管道化到bash脚本中_Linux_Bash_Oracle - Fatal编程技术网

Linux 将文本管道化到bash脚本中

Linux 将文本管道化到bash脚本中,linux,bash,oracle,Linux,Bash,Oracle,当我的用户登录时,我需要手动输入以下内容,以便尝试创建一个脚本来为我执行此操作 . oraenv 应用程序要求我输入,所以我输入“M40”(每次输入相同的文本) 然后我必须运行linux应用程序来启动我的工作环境 那么,我如何自动输入M40,然后输入回车键呢?我不确定这些操作中是否有人对您有所帮助 echo M40 | . oraenv 这一个使用echo管道 printf M40 | . oraenv 这一个使用管道的printf。在某些情况下,使用echo与使用printf不同,但我不

当我的用户登录时,我需要手动输入以下内容,以便尝试创建一个脚本来为我执行此操作

. oraenv
应用程序要求我输入,所以我输入“M40”(每次输入相同的文本)

然后我必须运行linux应用程序来启动我的工作环境


那么,我如何自动输入M40,然后输入回车键呢?我不确定这些操作中是否有人对您有所帮助

echo M40 | . oraenv
这一个使用
echo
管道

printf M40 | . oraenv
这一个使用管道的
printf
。在某些情况下,使用
echo
与使用
printf
不同,但我不知道它们的实际区别

. oraenv <<< M40

这一个用来做自动输入,它在许多情况下有更多的可扩展性。请注意,根据您的实际情况更改
预期的“nput\”
部分。

我不确定这些操作中是否有人对您有所帮助

echo M40 | . oraenv
这一个使用
echo
管道

printf M40 | . oraenv
这一个使用管道的
printf
。在某些情况下,使用
echo
与使用
printf
不同,但我不知道它们的实际区别

. oraenv <<< M40

这一个用来做自动输入,它在许多情况下有更多的可扩展性。请注意,根据您的实际情况更改
expect\'nput\
部分。
oraenv
脚本提示您输入
ORACLE\u SID
的值,因此您可以在
.profile
或其他地方自行设置该值

export ORACLE_SID=M40
它还具有一个可设置为非交互式的标志:

ORAENV_ASK=NO

特别是关于管道输入,必须编写脚本来处理它,例如使用
read
或不带文件名的命令,如
cat
。有关更多详细信息,请参阅。但是,这不是标准的
oraenv
的编码方式(假设这是您正在使用的脚本)。oraenv脚本提示输入
ORACLE\u SID
的值,因此您可以在
.profile
或其他地方自行设置该值

export ORACLE_SID=M40
它还具有一个可设置为非交互式的标志:

ORAENV_ASK=NO

特别是关于管道输入,必须编写脚本来处理它,例如使用
read
或不带文件名的命令,如
cat
。有关更多详细信息,请参阅。但是,这不是标准
oraenv
的编码方式(假设您使用的是脚本)。

这可能会起作用:
echo“M40”|。oraenv
这可能会起作用:
echo“M40”|。oraenv
expect
无法工作,因为
spawn
创建了一个新的进程,即使您可以执行
(expect将尝试执行当前目录),它也无法更改环境(脚本可能就是这样做的)
expect
无法工作,因为
spawn
创建了一个新进程,即使您可以执行
(expect将尝试执行您当前的目录),它也无法更改环境(脚本可能就是这样做的)