小编gab*_*tzi的帖子

如何在bash脚本中的流水线命令之间插入延迟.例如猫文件| telnet mail.domain.com 25

我有一个创建文件的bash脚本,我想通过telnet发送电子邮件.然而,有时它会执行,有时它不会执行.

最后的命令是

cat tempfile | telnet mail.domain.com 25
Run Code Online (Sandbox Code Playgroud)

在接收服务器上,我在mail.log中看到失败时出现以下错误:

improper command pipelining after EHLO from domain.com ....etc
Run Code Online (Sandbox Code Playgroud)

如果不是mail.domain.com,那么相同的脚本可以正常工作.我在localhost中启动telnet会话,所以我很确定文件格式是否正常,其余的bash脚本也正常工作.

我也尝试过使用标准重定向而不是管道

telnet mail.domain.com 25 < tempfile
Run Code Online (Sandbox Code Playgroud)

但有时候结果有时是好的.我认为重定向和telnet会话命令之间需要有一个小的延迟,以便在建立telnet会话并给出响应后给出输入,但我不知道如何做到这一点.我尝试在管道和重定向之间使用sleep命令,它可能无法工作,因为这时输入被重定向到sleep命令.

e.g. cat tempfile | telnet mail.domain.com 25 & sleep 1
Run Code Online (Sandbox Code Playgroud)

限制是我必须在bash脚本中执行此操作.可能吗?此外,我不知道它是否有任何重要性,但脚本用于在debian挤压服务器之间工作与后缀/快递设置,现在接收端设置与debian wheezy和postfix/dovecot.

在此先感谢您的帮助

linux email bash telnet

14
推荐指数
1
解决办法
1万
查看次数

Prestashop在数据库中更改后重定向到旧域

我正在尝试从domain.com到dev.domain.com创建一个prestashop 1.6电子商店的副本用于开发目的

我遵循的过程是

  1. 禁用缓存和编译
  2. 将文件从domain.com复制到dev.domain.com
  3. 从dump.com中的domain.com转储mysql数据库
  4. 在vi上打开dump.sql并使用:%s/domain.com/dev.domain.com/g进行搜索和替换
  5. 在devdb中导入dump.sql
  6. 打开prestashop cpanel并验证所有商店网址配置是否已更改.
  7. 打开phpmyadmin并检查所有domain.com条目是否已更改为dev.domain.com
  8. 从/ cache/smarty/compile/cache/cachefs中删除文件
  9. 从prestashop重建.htaccess文件.
  10. 更改了devdb中的登录凭据,以便网站加载该凭据

现在的问题是,当我打开dev.domain.com时,我仍然被重定向到domain.com,我不知道接下来要尝试什么.

在devdb中搜索phpmyadmin中的domain.com不会产生结果grep -ri'domain.com'*不会在文件中产生结果

有什么建议我接下来可以尝试吗?

PS:domain.com和dev.domain.com是两个不同的域名.反正不相似

php mysql .htaccess phpmyadmin prestashop-1.6

6
推荐指数
2
解决办法
8958
查看次数

标签 统计

.htaccess ×1

bash ×1

email ×1

linux ×1

mysql ×1

php ×1

phpmyadmin ×1

prestashop-1.6 ×1

telnet ×1