php 生成shell脚本_shell脚本生成文件 - CSDN
精华内容
参与话题
  • 首先php可以写linux的shell脚本,是非常快捷方便的,也展现了php的强大。 (1)讲解头部的一些开头文件代表什么意思。 eg #!/usr/bin/env php #!/usr/bin/php 哎,看了网上的一些说法,说只要平常写#!/usr/...

    首先php可以写linux的shell脚本,是非常快捷方便的,也展现了php的强大。

    (1)讲解头部的一些开头文件代表什么意思。

    eg

    #!/usr/bin/env php

    #!/usr/bin/php

    哎,看了网上的一些说法,说只要平常写#!/usr/bin/env php就可以了,我也尝试了好多次,不成功,不得其原因,于是自己去琢磨了一下。

    大概的意思是指的php的编译路径,但是也不要说#!/usr/bin/env php就可以了,毕竟大家安装的php路径是不一样的,容易把人带到沟里面,也别说什么有通用的写法。

    简单,想要知道自己php的编译路径只需要执行一下linux命令:whereis php即可。


    OK,下面就开始写一个简单的shell脚本:my_php_shell.sh

    #!/usr/local/bin/php
    <?php
    
    
    date_default_timezone_set('Asia/shanghai');
    
    try{
    
         echo "ok--".date('Y-m-d H:i:s')."\n";
    
    
    }catch(Exception $e){
    
        echo "ok--".$e->getMessage()."\n";
    }
    ?>
    直接输出一个日期字符串。

    下面接着配置crontab,其中有一些要注意的地方。

    (1)执行crontab -e如果是第一次的话,会让你选择编辑crontab的方式


    我比较习惯vim,我选择了 3。

    有的人会说我选错了怎么办,能重新选择吗,可以的执行select-editor命令就能重新设置编辑器了。


    选择完毕之后执行:crontab -e就可以编辑crontab了。

    */1 * * * * /usr/local/nginx/html/my_php_shell.sh >> /usr/local/nginx/html/shell_log.txt
    

    这是我的一个crontab,:wq保存退出,然后sudo service cron restart重启。定时任务就开始执行了。

    执行结果,每分钟执行一次脚本:


    可能遇到的问题,crontab没有正常运行,如何查看日志,OK这个是必须的。

    首先要打开crontab的日志:

    sudo vim /etc/rsyslog.d/50-default.conf 

    cron.* /var/log/cron.log #将cron前面的注释符去掉 

    sudo service rsyslog restart //重启日志服务

    tail -f /var/log/cron.log //查看日志

    这样就开启了crontab的日志,如果出现crontab运行不正常的状态,就可以去查看日志信息了。

    日志内容:


    展开全文
  • shell脚本生成文本文件

    万次阅读 2016-10-08 17:08:43
    shell脚本生成文本文件 17 December 2014 在Linux上写shell脚本的一个很重要的意图是自动化。假如我们希望自动生成一个具有特定内容的文本文件,应该怎么实现呢? 我用过两个方法,下面分别举例说明。为了更...
    
    

    在Linux上写shell脚本的一个很重要的意图是自动化。假如我们希望自动生成一个具有特定内容的文本文件,应该怎么实现呢?

    我用过两个方法,下面分别举例说明。为了更通用,这两个例子中的文本内容都是多行的。

    使用echo命令

    echo "Hello, World!
    My name is Shengbin." > readme.txt
    

    这种方法其实就是把echo的输出重定向到了文件。echo会原样保留换行符,所以多行也是支持的。

    使用cat命令

    cat > readme.txt << END_TEXT
    Hello, World!
    My name is Shengbin.
    END_TEXT
    

    上面的END_TEXT是一个自定义的标识符,二者之间的文本将被认为是一个文件的内容,这个文件作为cat > readme.txt的输入参数。 这是一种被称为here document的技术。

    这种方法有一点优势就是在脚本里写的文本内容的格式与想要呈现在文本文件中的一模一样。上一种方法则要求内容的第一行必须在echo的同一行。

    区分单引号与双引号

    Shell中双引号之间的内容会被进行变量展开和命令执行,如果想原样保留文本字符串,应该使用单引号(这种单双引号的区分在别的语言里也有,如PHP、Perl之类的脚本语言)。

    例如:

    echo "Your working directory can be read from the variable $PWD." >> readme.txt
    

    cat > readme.txt << END_TEXT
    Your working directory can be read from the variable $PWD.
    END_TEXT
    

    产生的readme.txt内容都是类似这样的:

    Your working directory can be read from the variable /Users/shengbin/Desktop.
    

    但实际希望的内容是:

    Your working directory can be read from the variable $PWD.
    

    所以正确的脚本应该这么写:

    echo 'Your working directory can be read from the variable $PWD.' >> readme.txt
    

    cat > readme.txt << 'END_TEXT'
    Your working directory can be read from the variable $PWD.
    END_TEXT
    

    没错,把起始标识符用单引号包起来,就会使其中的文本被认为是在单引号之间。

    展开全文
  • Shell在线工具--在线写shell

    千次阅读 2018-08-19 14:52:47
    http://www.runoob.com/try/runcode.php?filename=helloworld&amp;type=bash
    展开全文
  • 现象:我本地编写了shell脚本,拷贝到某台SUSE11服务器上执行正常,到suse10机器上就报错了 通常情况下这个个错误的原因有以下几个 1、可能是没有执行权限; 2、可能是32位机器跑了64位写的程序; 3、可能用了ARM...

    现象:我本地编写了shell脚本,拷贝到某台SUSE11服务器上执行正常,到suse10机器上就报错了

    通常情况下这个错误的原因有以下几个

    1、可能是没有执行权限;

    2、可能是32位机器跑了64位写的程序;

    3、可能用了ARM机器跑X86生成的代码。

    然而我这个就是个shell文件,不至于啊,一Google也没有类似案例,用file命令一查,清楚了

    # file newMemEnv.sh 
    newMemEnv.sh: UTF-8 Unicode text
    正常机器上

    # file newMemEnv.sh 
    newMemEnv.sh: UTF-8 Unicode (with BOM) text
    问题清楚了,我在windows下编辑的文件虽然是UTF-8的,但是windows加上了隐藏字符,导致linux下执行时解析shell文件报错,不认为是可执行文件

    使用notepadd++修改编码为UTF 无BOM后,问题解决
    为什么拷贝过去到suse11上没问题,suse10上有问题呢?正好suse11的bash兼容了bom字符处理了呗

    展开全文
  • 将Vim编辑器打造成Bash Shell脚本IDE

    千次阅读 2017-05-02 19:59:31
    brew install vim --with-lua --with-override-system-vi安装 Bash-support 插件下载bash-support插件,http://www.vim.org/scripts/script.php?script_id=365,此页面上选择一个最新的。解压缩后copy到~/.vim下面。
  • shell脚本输出1-1000内的偶数

    千次阅读 2016-06-02 21:13:38
    我们可以通过for循环结合seq来进行使用。 start=0; total=0; for i in $(seq $start 2 1000); do total=$(($total+$i)); done; echo $total;...seq [OPTION]......seq [OPTION]......seq [OPTION]..
  • Windows 定时执行shell脚本

    千次阅读 2018-12-16 12:27:44
    编写shell脚本 以下shell命令,保存到桌面文件w.sh中 #!/bin/sh touch /d/test.txt sleep 10 echo "ShinChen"&gt;&gt; /d/test.txt 找到任务计划程序 创建任务         ....
  • 现在我们使用的操作系统(Windows、Mac OS、Android、iOS 等)都是带图形界面的,简单直观,容易上手,对专业用户(程序员、网管等)和普通用户(家庭主妇、老年人等)都非常适用;计算机的普及离不开图形界面。...
  • 生成msf常用payload

    千次阅读 2018-06-04 10:49:29
    msf作为一款强大的漏洞检测工具,如何生成适用于msf的payload以及如何利用是使用msf的关键,今天就主要记录一下常用的payload以及如何使用。生成payload使用的工具是MSFVenom,下面看看他的帮助信息。在kali下可以...
  • 客户的服务器有cron运行。在旧的系统中正常。...将shell 脚本的错误输出重定向到一个文件。 /root/test.sh 2> /home/admin/test.txt 将test.sh脚本的错误输出重定向到/home/admi/test.txt文件。
  • 1.为运行shell脚本的本地用户生成密钥对 2.将其中的公钥分发到sftp欲登录的远程服务器上 3.编写并以上面的本地用户运行shell脚本 一.生成密钥对 在shell脚本中使用sftp时必须用到密钥对(公钥和私钥).可使用...
  • 基于linux下的shell脚本的编写

    万次阅读 2018-06-14 04:34:55
    (sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用phpshell 脚c脚本练习:[root@localhost ~]# yum install gcc -y 安装gcc编译[root@localhost ~]# vim hello.c 编辑c语言文[root@localhos...
  • hexo搭建个人博客心得

    万次阅读 2019-02-20 22:17:46
    hexo是基于node.js做的一个静态文件生成工具。通过hexo可以将我们写好的markdown文件,生成可视化的html页面。对于程序员来说,写技术博客不需要花里胡哨的排版,简洁大方。详情可以查看github: ...
  • 脚本批量执行redis命令

    千次阅读 2015-12-06 20:24:40
    如果将命令写到txt文件中,形式为每行一个命令:set key value  然后用cat example.txt | redis-cli --pipe 会提示All data transferred. Waiting for the last reply... ERR syntax error Last reply received ...
  • shell脚本telnet登录

    千次阅读 2011-08-27 15:43:34
    #!/bin/bash ( echo "user" sleep 2 echo "passwd" sleep 3 echo "do something in remote device" sleep 3 e
  • shell_exec("unoconv -f pdf test.odt"); ?> (1)在终端中执行php test.php,此时生成了test.pdf文件 (2)在web端输入链接访问test.php,发现此时test.pdf文件没有生成。这时可以有80%怀疑权限问题(且php并...
  • 一些简单的shell脚本实例

    千次阅读 多人点赞 2020-03-13 23:47:17
    # 脚本生成一个 100 以内的随机数,提示用户猜数字,根据用户的输入,提示用户猜对了, # 猜小了或猜大了,直至用户猜对脚本结束。 # RANDOM 为系统自带的系统变量,值为 0‐32767的随机数 # 使用取余算法将随机数变为 1...
  • 前面已经有了一些linux的基础知识,但是shell脚本这里我们还是缺失的,那么这个系列就来补上这一块。废话不多说,开始学习shell编程吧。 先来学shell脚本能干什么? shell scripts 的用处   这里面需要了解的...
  • shell脚本实现ipa一键安装(itms-services协议) Home About Guestbook Categories Tags Links Subscribe 简介 通过itms-services协议,可以通过safari浏览器直接在IOS设备上安装应用程序。具体效果可以...
  • 传统webshell上传方法小结

    万次阅读 2019-12-01 11:01:51
    上传木马拿webshell的几种方法汇总(不全) 普通权限下拿webshell 使用sql注入拿webshell 头像上传木马 文件上传漏洞 远程命令执行 ...上传其他脚本类型 %00截断 服务器解析漏洞 利用编辑器 网站配置 编辑...
1 2 3 4 5 ... 20
收藏数 27,589
精华内容 11,035
关键字:

php 生成shell脚本