部分内容参考自
http://tieba.baidu.com/f?z=595442653&ct=335544320&lm=0&sc=0&rn=30&tn=baiduPostBrowser&word=%D6%B1%CF%DF%B5%C4%C3%D8%C3%DC&pn=30
这段时间想学一下有关于shell的编程,因为我觉得这样很酷的。但是,觉得那个linux下的shell用了实在是看着不顺眼,那语法感觉相当不合常理。于是到网上找资料,看到有人用php写shell的,自己最近也在集中精力搞php,又不想再去学另外一门语言了。就先试着用用,使用过程如下。
现确保你的usr/bin下有php这个可执行文件,因为我始apt-get安装的php,所以这个目录下本来就有这个文件的。
然后随便在哪个地方新建一个文件,名叫test.php,内容如下
#!/usr/bin/php
<?php
print("hello world\n");
?>
第一句话,貌似就是指定用什么解释起解释的,默认的话会用bash来解释,但是我们指定php来解释,怎么样,合情合理。
打开终端,进入test.php所在的目录,然后./test.php,就会看见hello world了,怎么样,很酷吧!
但是我们经常会传一些参数进去,那么这个时候可以用php本身就有的$argv数组来得到,这里的机制和c语言的一样,比如
#!/usr/bin/php
<?php
foreach($argv as $a)
{
print("$a\n");
}
?>
我在终端输入./test.php 1 2 3 4 5 6,结果就是
./test.php
1
2
3
4
5
6
我还看到有人写了一个关于c里面的scanf和c++的cin的等待用户输入的函数
function read() {
$fp = fopen('/dev/stdin', 'r');
$input = fgets($fp, 255);
fclose($fp);
return chop($input);
}
这里需要加上chop也就是java里面String的trim函数。因为你按回车得到的字符会带上换行符的。
生搬下来就是
print("What is your first name? ");
$first_name = read();
print("What is your last name? ");
$last_name = read();
print("\nHello, $first_name $last_name! Nice to meet you!\n");
分享到:
相关推荐
项目一 初识Linux Shell 20 [学习目标] 20 任务1.1 构建开发环境 22 任务1.2 vi/vim编辑器 33 1.2.1 vim使用实例 34 1.2.2 vim按键说明 36 任务1.3 Shell常用命令 41 1.3.1 基础命令 41 1.3.2 文件、目录操作命令 42...
在linux系统下安装好的php运行环境,使用shell调用php脚本,附送工具
shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。shell即使一种命令语言,又 是一种程序设计语言。 shell脚本 是一种shell编写的脚本程序。 shell编程跟Java、PHP 编程一样,只要有一个能编写代码的文本...
LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora、Debian/Ubuntu/Raspbian VPS(VDS)或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的...
shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。shell即使一种命令语言,又 是一种程序设计语言。 shell脚本 是一种shell编写的脚本程序。 shell编程跟Java、PHP 编程一样,只要有一个能编写代码的文本...
linux 程序设计 实验 shell 编程 学生成绩管理系统
4、Linux shell编程:输出Hello World、获取系统信息、获取网卡信息、监控CPU负载 5、Linux内核编译与运行:Busybox准备、环境配置、编译最小文件系统、编译内核、运行QEMU 6、Linux内核模块编程:内核模块编程、...
LNMP一键安装包是一个用Linux Shell编写的可以为CentOS / RHEL / Fedora / Aliyun / Amazon,Debian / Ubuntu / Raspbian / Deepin / Mint Linux VPS或独立主机安装LNMP(Nginx / MySQL / PHP),LNMPA( Nginx / ...
一、编写Shell脚本crontab.sh #!/bin/bash step=1 #间隔的秒数,不能大于60 for (( i = 0; i < 60; i=(i+step) )); do $(php '/home/www/php/crontab/crontab.php') sleep $step done exit 0 二、crontab -e ...
DebianLNMP是一个用Linux Shell编写的可以为Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、MySQL、PHP、phpMyAdmin)生产环境的Shell程序。DebianLNMP 是以 Debian + Linux + Nginx + MySQL + PHP 的安装顺序命名...
ltnmp一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat、Debian/Ubuntu VPS(VDS)或独立主机安装ltnmp(Linux、Tengine/Nginx、PHP、MariaDB/Mysql、phpMyAdmin)生产环境的Shell程序。ltnmp一键安装包是基于...
第1篇 Linux下C语言基础 第1章 Linux简介 1.1 GNU简介 1.2 Linux简介 1.2.1 Linux发展史 1.2.2 Linux发行版 1.2.3 Linux内核版本 1.2.4 Linux与UNIX的关系 1.2.5 Linux在服务器方面的发展 1.2.6 Linux在嵌入式系统...
LTMP是用Linux Shell编写的可以为CentOS/RadHat、Debian/Ubuntu VPS(VDS)或独立主机安装LTMP(Nginx、Tengine、MySQL、PHP、phpMyAdmin)生产环境的Shell程序。 LTMP此版本是由Jimmy Li基于TengineRPM安装包基础上修改...
今天小编就为大家分享一篇关于shell脚本之nginx自动化脚本,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
5、参考书本98-99页crontab命令内容,使用root执行crontab -e,编写时程表,完成每隔5分钟把当前时间追加进/tmp/test.log中。 6、执行crontab -l,把输出内容追加进/tmp/test.log。 7、待完成2次时间记录追加后,...
脚本大部分是自己工作中编写使用(经过严格测试),还包含一些运维大鸟写的脚本修改而来。脚本列表更新内容描述最后更新时间dockerdockersshconfigure_ssh_without_pass 免秘钥处理2018.04.26win_bashwin批处理oracle...
rsh •••rsh是纯粹用Python 3编写的工具,可以轻松地为Linux和Windows生成反向外壳命令。产品特点使用此工具,您可以轻松地使用以下语言快速生成Linux和Windows支持的反向Shell命令: 重击Bash反向壳网猫网猫...
centos7;编写shell脚本,判断部署方式(直接在centos7下部署 OR docker容器部署),部署nginx和php,成功访问phpinfo
Linux后利用框架旨在帮助红色团队进行持久性,侦察,特权升级,并且一无所获。 有效载荷 用于在netcat,bash,python,php,ruby,perl中生成各种编码的反向shell的功能 SudoInject 带有wrapper功能的sudo命令...
DebianLNMP是一个用Linux Shell编写的可以为Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、MySQL、PHP、phpMyAdmin)生产环境的Shell程序。DebianLNMP 是以 Debian + Linux + Nginx + MySQL + PHP 的安装顺序命名...