我在Powershell 1.0中有一个奇怪的事情,我不明白为什么Powershell会以这种方式做出反应.
情况:我用字母e在驱动器上创建了几个zip文件:
现在我想删除它们.但是我的e:驱动器上有更多的zip文件.所以我想只删除这个特定文件夹及其子文件夹中的文件夹.
我想要用于此的命令是:
PS E:\> Get-ChildItem -Path E:\Webdev\icons\ -Include *.zip -Recurse -Name -Force | Remove-Item -Force
Run Code Online (Sandbox Code Playgroud)
然而,在执行时,我得到了一堆错误,所有人都这么说
找不到路径E:\ test.zip,因为它不存在.
实际上,e下没有test.zip这样的文件:它存在于我递给脚本的icons文件夹下.
解决方案是我将目录更改为icons文件夹并在那里执行命令.
但这不符合逻辑.我希望能够说出应该删除文件的目录,然后才能删除它们.为什么Powershell开始在当前目录中查找文件对我来说是一个谜.
请问有人向我解释一下吗?
对于那些不知道PHP6会发生什么的人,这里有一个很好的简短读物:http://jero.net/articles/php6
现在,如果您有依赖于ereg的函数,并且您无法控制托管脚本的服务器上的php.ini文件,那么您如何处理?
例如,这个函数在这里:
function currentDateTime() {
list($micro, $Unixtime) = explode(" ",microtime());
$sec= $micro + date("s", $Unixtime);
$sec = mb_ereg_replace(sprintf('%d', $sec), "", ($micro + date("s", $Unixtime)));
return date("Y-m-d H:i:s", $Unixtime).$sec;
}
Run Code Online (Sandbox Code Playgroud)
它似乎依赖于ereg,所以我该如何替换它呢?
基于我在这个问题中看到的答案:链接
我想知道,这是安全的事吗?
假设我实现了这个并且请求了一个页面,它有几个链接到它的JS和CSS文件.文本文件是简单发送还是服务器首先解析它们?没有服务器可以立即测试它.
另外,这是一种常用的工作方法吗?我在考虑设置你的文件,以便你总是根据用户输入获得正确的实现,这对于CSS和JavaScript来说非常困难.
当一个人在我的网站上注册或登录时,他们会被发送到"thanks.php".
页面检查是否已登录,如果是,则告诉您可以执行的操作,如果没有,则为您提供指向register.php页面的链接.
但是,任何人都可以制作自己的cookie并像这样欺骗脚本.
我如何保护自己免受这种伤害?
我想到的一件事是检查$_SESSION['session_id']数据库中是否存在.据我所知,你不能自己生成,即使你可以,你需要数据库访问才能找到一个.
我不太确定,有没有人对这种"谢谢"页面有一些建议或经验?
环境信息:
*Windows Vista
*PHP 5.2.9-2
我正在做一个项目.让我们说它的名字只是"项目".我的php文件意味着用户交互将在
项目/ file.php
现在,我有一个数据库和一些地图,一般包含类和配置文件.还有一个用户地图,我在其中存储他们可能上传的图像.例如:
项目/文件/用户/ 0/profilePic.jpg
该数字与数据库中的user_id相对应.
我的register.php文件包含以下代码行:
mkdir('/files/Users/'.$id)
Run Code Online (Sandbox Code Playgroud)
该$id变量是在数据库中最大的ID号,加1.
但它不会起作用.我检查了文件夹,我有读写权限(我是我的机器上的管理员).
我究竟做错了什么?
注意:有权告诉我有一个更好的方法来组织这个保留给那些能给我一个有用答案的人.:P
我是学习PHP的学生.我基本上使这些东西工作,但从来没有想过php.exe(在Windows上)是如何工作的.
它是否编译了它必须处理的东西?
我问的原因是因为有人告诉我,ASP.NET必须编译所有依赖于网站的数据才有/接收,就像通过表单上传的所有内容一样.他声称PHP在这个主题上更快,因为它不需要编译任何东西.
我找不到关于这两个主题的任何好的信息,所以我在这里问.
我对Windows PowerShell特别感兴趣,但这里有一个更普遍的抱怨:
在寻求新学习方面的帮助时,无论是PHP上的一个小主题,还是在Java中理解一个类,通常会发生的事情是人们将我引向文档页面.
我正在寻找的是一个课程.深入解释为什么某些东西的运作方式.
我知道我的基本编程,比如Java和C#.我从未见过C或C++,虽然我看过一些汇编程序.我知道堆栈和堆是什么,装箱和拆箱如何工作,为什么你必须深度复制数组而不是复制指针和其他一些东西.
另一方面,Windows PowerShell,我一无所知.我注意到,在阅读小文档或某些代码时,我通常会忘记它的作用或原因.
我正在寻找的是一个很好的教程,它可以解释起点,概念,并以稳定的速度处理更困难的事情.
文档可以做的唯一事情是解释函数的作用.这对我没有好处,因为我不知道自己想做什么.我可以阅读大约一千个函数,而忘记了大部分函数,因为我不需要在它之后实现它们.随意浏览文档对我没有任何帮助.
总结一下,什么是Windows Powershell的优秀教程?一个用清晰的语言解释发生了什么,一个建立在先前学到的东西之上.
我不认为谷歌搜索这是一个好主意.对此进行Google搜索会产生大量教程.经验告诉我,你必须看起来很长很难找到你正在寻找的宝石.这就是我在这里问的原因.因为在这里您可以找到更有经验的人.你们中的许多PowerShell人员已经知道好的,并且通过问你们,我避免浪费时间来学习.总结一下:我不会谷歌这个!
我已经使用这段代码将图像放入变量中.我想做的是在各个地方画点,然后保存结果.
我所做的是打开一个对话框来选择文件并检查它是否有效,我把它放在一个图片框中.使用winforms offcourse.使用Visual Studio 2008 Professional.
编辑:openImg你看到下面使用的变量作为我给我正在使用的openFileDialog实例的名称.
private string CurrentFile;
private Image img;
private void fileToolStripMenuItem_Click(object sender, EventArgs e)
{
openImg.Title = "Open Image File";
openImg.Filter = "JPEG Files|*.jpg" +
"|Enhanced Windows MetaFile|*.emf" +
"|Exchangeable Image File|*.exif" +
"|Gif Files|*.gif|Icons|*.ico" +
"|PNG Files|*.png|TIFF Files|*.tif|Windows MetaFile|*.wmf";
openImg.DefaultExt = "jpg";
openImg.FilterIndex = 1;
openImg.FileName = "";
openImg.ShowDialog();
if (openImg.FileName == "")
{
return;
}
CurrentFile = openImg.FileName.ToString();
img = Image.FromFile(openImg.FileName);
pictureBox1.Image = img;
}
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.
完成第一个阶段后,我想定义一个Color对象,我可以用它在以后的某些位置绘制.
我以前从未与他们合作过.
Color yellow = …Run Code Online (Sandbox Code Playgroud) 我正在使用visual studio来编写这个小型TcpServer.
这是非常具体的.服务器侦听端口1234并位于IP 127.0.0.1上.我们的老师给了我们一个程序,当您单击"连接"时,该程序尝试连接到该IP上的该端口.它适用于其他所有人,因此我必须是编码错误.
当我点击连接时,程序会在流上发送"GET"字样,我必须对所有已连接的IP地址列表进行响应,然后是仅包含a的换行符.
当我断开连接时,程序发送单词"REM",我只需要从我的列表中删除(这是一个通用列表)
我有一个类TCPServer(我们必须自己创建),它有这个作为主要代码:
this.tl = new TcpListener(IPAddress.Any, PORT);
tl.Start();
while(true)
{
TcpClient tcl = tl.AcceptTcpClient();//here the server will wait forever untill someone connects, meaning the "new Thread" statement is never reached untill someone connects.
TcpHelper th = new TcpHelper(tcl,conf);
new Thread(new ThreadStart(th.Start)).Start();//should be multi-threaded, not sure if it is.
//t.Start();
}
Run Code Online (Sandbox Code Playgroud)
TcpHelper看起来像这样(在使用中查找注释文本"这里是问题"):
public class TcpHelper
{
private TcpClient tc;
private IPEndPoint ipe;
private string get;
private Configuration conf;
public TcpHelper(TcpClient tc, Configuration conf)
{
this.tc = …Run Code Online (Sandbox Code Playgroud) 我在别处问过这个问题,但那里的人似乎不明白我在说什么。
当我访问 PECL 网站时,在那里找到的所有扩展名都在 TGZ 文件中。
这不是问题,任何现代归档程序都可以打开它。
里面总是一个 .tar 文件,里面是源文件。那么,我该怎么办?我对使用 pecl_http 扩展特别感兴趣,但我不知道该怎么做。
注意:.TAR 文件中没有 DLL 文件。一个都没有,一个都没有。你能找到的只是 C 代码和 C 头文件。
function trim(str,options){
var string = str.replace(/^\s\s*/, ''),
ws = /\s/,
i = str.length,
j = -1;
if(options==="begin"){while(ws.test(string.charAt(++j)));return string.slice(j,i);}
if(options==="end"){while(ws.test(string.charAt(--i)));return string.slice(j+1,i+1);}
while(ws.test(string.charAt(--i)));while(ws.test(string.charAt(++j)));
return string.slice(j, i + 1);
}
Run Code Online (Sandbox Code Playgroud)
此函数是您在C#中找到的Trim()方法的实现.
我添加了在开头和结尾都删除withspace的选项.问题是,我不能让它在演示中工作.
我做的是这样的:
var a = " zareaerar arzare ";
var b = "aezze azeze a ";
var c = "azrazza rzrzrzrp"
var d = " aezzaeazeazeaz azez ";
document.write('<p style="backround:#ff0000">',trim(a,"begin"),'</p>','<br />');
document.write('<p style="backround:#ff0000">',trim(b,"begin"),'</p>','<br />');
document.write('<p style="backround:#ff0000">',trim(c,"begin"),'</p>','<br />');
document.write('<p style="backround:#ff0000">',trim(d,"begin"),'</p>','<br />');
Run Code Online (Sandbox Code Playgroud)
首先,没有出现背景颜色,字符串也似乎松散了字符串中间的空格......
这仅适用于用户输入吗?这些天字符串会自动修剪吗?
我有一些文本文件,包含姓名,电话号码和地区代码.每行一个组合.
语法始终为"Name Region_code number"
,3个变量之间有任意数量的空格.
我想要做的是搜索特定的区域代码,例如23或493.问题是这些数字也可能出现在较长的数字中,这可能会导致不应该返回的返回.
我在想这种命令:
grep '04' numbers.txt
但是如果我这样做,那么在数字中包含04但不包含区域代码的行也将显示为结果......这是不正确的.