我自动为我的应用程序的开发环境设置,当我从命令行手动运行这两个命令,我必须等待约10秒后运行第一个运行第二个。 # command one (run the mysql docker container) docker run -p 3306:3306 –name mysql-container-name -e MYSQL_ROOT_PASSWORD=secret -e MYSQL_DATABASE=mydbname -d mysql:latest # command two (import data into created db) docker exec -i mysql-container-name mysql mydbname < ./dev-db.sql –password=secret 我试图将这两个命令自动化成一个bash别名,所以我可以做db-setup但是即使当我用&&分隔命令时,第二个命令执行得太快(在mysql容器完全安装之前)显然是因为我会得到这个错误: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 任何想法如何才能得到第二个命令只有当第一个完全完成它所需的一切?
在SELinux运行强制的情况下,将系统从CentOS6迁移到RHEL7。 一个php脚本调用/usr/bin/processdata.sh来在后台生成一些数据。 这与旧的系统工作正常,但PHP调用与SELinux设置为启用扼stream圈。 这是sh许可 -rwxrwx–x. root root unconfined_u:object_r:bin_t:s0 /usr/bin/process_data.sh 这个审计错误是在调用php页面的同时看到的: ausearch -l -i | grep httpd type = SYSCALL msg = audit(02/27/2016 14:07:52.662:23480):arch = x86_64 syscall = socket success = no exit = -97(协议不支持地址族)a0 = inet6 a1 = SOCK_DGRAM a2 = ip a3 = 0x672e76656473626e items = 0 ppid = 15686 pid = 3852 auid […]
我可以通过su -在根控制台上打印获得root权限的用户名吗? user1$ su – password: obtained root via user1 #
我首先下载一个文件到/root/TRY1/ : #!/usr/bin/expect cd /root/TRY1/ exec wget –http-user $user –http-password $password $url 然后我想提取文件: cd /root/TRY1/ exec bash -c "tar -xzvf /root/TRY1/BigDataProtector*.tgz" 但是,这只是在该位置下载文件,然后停止。 该文件不被提取。 但是,当我评论wget部分并运行提取命令时,它会被提取出来。 我如何连续执行这两个命令?
我需要一些脚本/命令/ cronjob帮助.. 我需要将tcpdump命令的输出redirect到日志文件,并且每天保留1个日志文件。 我知道我可以使用tcpdump日志语法,但我也使用awk -F来过滤输出。 我的命令看起来像这样,运行本身的作品美丽。 tcpdump -ieth0 -p "tcp[tcpflags] & (tcp-syn) !=0" | awk -F 'Flags' '{print $1}' > /var/log/tcpdump.log 我怎样才能使它每天旋转文件? 有没有办法与shell脚本(我的shell脚本知识是非常有限的)。
我正在运行Debian 8和Zabbix 3.2。 我做了一个自定义警报脚本,运行在terminal时运行良好: /bin/sh /usr/lib/zabbix/alertscripts/send_sms.sh 4483222740 Hello 这通过Twilio发送短信,工作正常。 在我的zabbix_server.conf中有: AlertScriptsPath=/usr/lib/zabbix/alertscripts 我已经按照https://www.zabbix.com/documentation/3.2/manual/config/notifications/media/script创build了自定义媒体types 但脚本没有被调用。 我有一个正常触发的电子邮件的一般媒体types。 我对脚本的权限是: ls -alh total 12K drwxr-xr-x 2 root root 4.0K Mar 9 09:04 . drwxr-xr-x 4 root root 4.0K Feb 3 13:36 .. -rwxr–r– 1 root root 165 Mar 9 09:12 send_sms.sh 我试着在/ var / log /目录下grep for“send_sms”来查看是否有错误发生。 没有。 我正在结束我的脚本 exit […]
有没有办法知道当前运行的configuration是否过时? 有没有办法查看当前正在运行的configuration并将其与文件进行比较? 在运行重装之前,知道运行configuration是什么是非常有用的。 如果该命令会告诉我它是否实际更新了configuration,这也很有价值。
我不认为这违反了配料原则。 那么,如果我想在一个脚本中在Windows中启动两个应用程序,我有什么select。
有没有办法运行VMSTAT命令(或类似的东西),并在行中包含时间戳? 我知道我可以输出命令并操纵结果,但如果我这样做,我会得到垃圾信息; 我被告知,VMSTAT的第一行包含假数据,我基本上会得到第一行的重复列表。 有没有办法获得这种types的数据,无论是与VMSTAT或类似的: 20090826.134908 0 0 0 241832 120064 3023856 0 0 0 1 0 0 0 0 100 0 谢谢! IVR复仇者
我想通过SSH远程运行一个shell脚本,当脚本结束时,ssh shell应该结束。 脚本本身运行另一个脚本,其输出被传送到一个日志文件。 例如:我运行脚本run1.sh: #!/bin/sh function logpipe() { while read line;do echo $line >> $1 done } ./bin/run2.sh $JBOSS_HOSTNAME | logpipe $JBOSS_DIST/log/server.log 2>&1 & run2.sh: #!/bin/sh exec "$JAVA" -DJBOSS_PID=_$$_ $JAVA_OPTS \ -Djava.endorsed.dirs="$JBOSS_ENDORSED_DIRS" \ -classpath "$JBOSS_CLASSPATH" \ org.jboss.Main "$@" 现在的问题是当我跑步 ssh myhost "bin/run1.sh" shell被“卡住”到脚本中,我只能通过Crtl + Cclosures它。 我猜这个诀窍是nohup和另一个pipe道技巧之间的事情,但现在我还没有办法。