脚本如下:斗逗睁
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)
if[ -f "$file" ]//if和[之间要有空格,如果没有空格的话 就会将if[解析成一个命令,而不是我们所希望的 if [
Linux常用命令
安装和登陆命令
1,进入图形界面 startx 2,进入图形界面 init 5 3,进入字符界面 init 3 4,登陆 login 5,关机 poweroff
-p 关闭机器的时候关闭电源 -n 在关闭机器时不同步数据
-w 不做关机的 *** 作,只是把这个 *** 作记录到日志里 -d 不把关机的信息记录到日志文件里 -f 不调用
6,关机重启 shutdown
命令格式: shutdown [选项] 时间 [信息] 时间--是必要参数,一定要加,可以用
now,也可以用+5 信息--在关机的时候给用户的信息
-t 这个参数后面需要加数字,比如 5,表示在发出关机信号 5 秒后开始关机 -k 不做真正的关机,只是通知一下所有的用户. -r 重启计算机
-h 关机后关闭电源
-f 在重新携粗雀启动的时候跳过 fsck(磁盘检查程序) -F 重启时,忽略 fsck 程序(同-f 一样)
-c 取消已在执行的关机动作 例: #shutdown -k now just kid #shutdown -h now system shut down now
7,关机 halt 选项同 poweroff 一样 8,重启计算机reboot 9,mount 挂载文件系统,
umount 卸载文件系统 挂载光盘 #mount -t iso9660 /dev/cdrom /mnt/cdrom 或者#mount /mnt/cdrom 卸载光盘 #umount /mnt/cdrom 退辩早出光盘 #eject 送入光盘 #eject -t 挂载软盘 #mount /mnt/floppy 卸载软盘 #umount /mnt/floppy 挂载本地 FAT32 分区,并使挂载后显示中文 #mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/win 卸载 #/umount /mnt/win 挂载 U 盘或者移动硬盘 #mount -o iocharset=utf8 /dev/sda1 /mnt/usb 卸载 #umount /mnt/usb 如果本地语言环境不是 utf8,而是 gb18030,需使用下面的命令挂载 #mount -o iocharset=gb2312 /dev/sda1 /mnt/usb 挂载一个光盘镜像至本地/mnt/cdrom 目录,
用下凳亏面的命令 #mount -t iso9660 -o loop /tmp/cd.iso /mnt/cdrom 10,字符界面下安装 *** 作系统的命令linux text
11,选择不同方法安装 *** 作系统的命令linux askmethod
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)