python执行shell,报错:未找到命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python执行shell,报错:未找到命令相关的知识,希望对你有一定的参考价值。
参考技术A 我打算用python来执行shell命令,实现sqoop导数据功能脚本如下:
mysql_jdbc="jdbc:mysql://0:1/2?characterEncoding=utf8&autoReconnect=true"
sqoop import "-Dorg.apache.sqoop.splitter.allow_text_splitter=true" \
--connect $mysql_jdbc \
--username 3 \
--password 4 \
--table 5 \
--target-dir 7 \
--delete-target-dir \
--split-by clientid
然后报错:sqoop:未找到命令
然后我就测试:subprocess.run("java -version",shell=True)
也是报错:java:未找到命令
网上一顿百度,查了2天啊~~~~
1、检查/etc/profile环境变量设置没问题
2、linux机器上直接执行java -version也正常
3、linux机器上执行python3后,执行subprocess.run("java -version",shell=True)也正常
我就奇了怪了,还摆不平你这小娘子
后来突然想到之前项目里,先生效一下profile文件,试了一下,果然有效!!!
我的亲娘诶,绝望之际,解救了我~~~
至于为什么一定要这样,还是不解
正确脚本:
shell_str ="""
source /etc/profile;
java -version
"""
subprocess.run(shell_str, shell=True)
kali 报错 bash:pig.py:未找到的命令
root用户。安装了dhcpig,但是命令不能用,小白求解,谢谢!!
参考技术A 因为确实没有grub这个命令,有grub-install,grub-mkconfig,grub-mkrescue.grub是一个引导程序,安装系统时grub是安装到MBR的,也就是说你想在linux系统里运行grub得到grub shell(命令行界面)是不可能的。你可以在系统菜单选择界面 按C进入grub shell。
以上是关于python执行shell,报错:未找到命令的主要内容,如果未能解决你的问题,请参考以下文章
Windows编写shell脚本,Linux运行不起来,报错