Articles of shell

“参数列表太长”限制是否适用于shell buildins?

我浏览了很多关于StackOverflow的post以及一些相关的社区,关于argument list too long话题,我似乎没有清楚地指出长度限制是否适用于shell buildins。 比方说,我有一个很长的string,我想通过标准input传递给一个命令: string="a very log list …" 我能说……么: # not using double quotes around $string is deliberate printf '%s\n' $string | cmd … 要么 cmd <<< $string 甚至xargs到xargs : printf '%s\n' $string | xargs cmd … 有人可以澄清这一点?

我如何在Windows上添加一个自定义的URL处理程序。 像iTunes itms://

我想telnet://等等,打开腻子,而不是本地的Windows Telnet客户端。 我甚至不知道这个'function'在Windows下调用,所以我没有find任何有关它的信息。 在此先感谢,1月

Windows资源pipe理器右击文件和文件夹的上下文菜单

我的问题与此类似,但是这并没有给我所需要的所有信息,或者我不太了解。 我希望在文件上下文菜单中有选项来通知我的应用程序。 我添加了键: HKLM/SOFTWARE/Classes/*/shell/MyApp/command::"C:\\path\\test.exe" "%1" HKLM/SOFTWARE/Classes/Folder/shell/MyApp/command::"C:\\path\\test.exe" "%1" testing代码: #include <iostream> int main(int argc, char *argv[]) { for (int i = 1; i < argc; ++i) std::cout << argv[i] << "\r\n"; system("pause"); return 0; } 这工作正常,但是…如果我标记几个文件/文件夹,并右键单击并select我添加的选项,许多testing应用程序启动。 这不是我想要的行为,我希望所有的path将被传递到我的应用程序的单个实例作为argv的列表,有没有人知道如何做到这一点? BTW。 我用C++编码,但我认为这不是问题,因为它是Windowsshell的业务。 谢谢。

Windows,Emacs,Git Bash和shell命令

Windows 7. Emacs 24.3.1。 Git 1.8.1.msysgit.1。 我有我的等效.emacs文件中的以下内容: (if (equal system-type 'windows-nt) (progn (setq explicit-shell-file-name "C:/Program Files (x86)/Git/bin/sh.exe") (setq shell-file-name "bash") (setq explicit-sh.exe-args '("–login" "-i")) (setenv "SHELL" shell-file-name) (add-hook 'comint-output-filter-functions 'comint-strip-ctrl-m))) 当我想要做Mx shell的时候,这个效果很好:我可以popup一个shell并input“ls”。 但是, Mx shell命令失败。 当我尝试通过shell命令运行“ls”(它应该在* Shell Command Output *缓冲区中输出时,根据Ch shell命令 ),我得到一个错误信息: “search程序:权限被拒绝,bash” Google上关于调用过程有一些非常古老的build议,在StackOverflow上有很多关于让shell在Emacs中工作的问题。 请注意, Mx shell的工作很好,我想要的是shell命令。 (原因: https : //github.com/donkirkby/live-py-plugin#installing-the-emacs-mode )

是否有一个相当于Windows Shell的Ruby Shellwords模块?

我需要从Ruby中的数组构buildWindows shell命令行。 如果我使用Bash,我可以使用标准的Shellwords模块。 是否有相当于Windows Shell的Shellwords,它可以安全地将数组转换为命令行string?

CommonAppData在vb6中

基本上和这个问题一样 ,但是对于VB6 。 客户的应用程序“AppName”的configuration文件存储在CommonAppData中。 在Windows XP下是C:\ Documents and Settings \ All Users \ Application Data \ AppName 在Windows Vista中是C:\ ProgramData \ AppName 如何获得正确的文件名与VB6? ? 额外的笔记 ,我喜欢使用API​​调用,而不是添加到shell32.dll的引用

PowerShell 2.0 sudo的限制

很长时间的读者,但新的海报。 我一直在为这个问题摔跤了一整天,这让我疯狂。 淘了这个网站和谷歌后,我仍然卡住了。 基本上,我无法弄清楚如何在PowerShell中使用Copy-Item CmdLet来实现“sudo”。 这是我的代码: PROFILE.PS1: # Trigger UAC to elevate the supplied command function Elevate-Process() { if($args.Length -eq 0) { error ('USAGE: ' + $MyInvocation.InvocationName + ' <executable> [arg1 arg2 arg3 …]'); } else { try { if($args.Length -eq 1) { Start-Process $args[0] -Verb RunAs; } else { Start-Process $args[0] -ArgumentList $args[1..$args.Length] -Verb […]

In-Proc SxS在托pipe代码中打开shell扩展?

该build议曾经是“不要在托pipe代码中编写进程中的shell扩展”。 但是对于.NET Framework 4和并行进程,应该解决在托pipe代码中编写shell扩展的主要原因。 就这样说,我有三个问题。 现在可以在托pipe代码中编写shell扩展了吗? 如果在托pipe代码中编写shell扩展可能存在哪些问题? 在非托pipe代码中编写shell扩展的原因是什么?

使用C Shell脚本确定Microsoft Windows的版本?

我曾经在这里问过类似的问题,但那是使用perl。 现在我的老板告诉我必须使用C shell脚本(.csh)。 我是一个初学者,并试图从这里了解的东西。 所以我创build了这个脚本: set OS_NAME = (Win32::GetOSVersion()); set major = $OS_NAME[1]; set minor = $OS_NAME[2]; set build = $OS_NAME[3]; set id = $OS_NAME[4]; echo $major; echo $minor; echo $build; echo $id; 这是给我的输出: Win32::GetOSVersion ( ) #blank line 我如何获得脚本的工作? 谢谢。 更新: 在这里find一些东西。 根据现在不适用的评论。 那么这个更新的答案呢? 更新:在 这里 find解决scheme 。 但是它的打印信息就像echo一样。 如何将这些信息存储在variables中,以便我可以做一些比较和做我的工作?

如何使用自定义面板扩展Windows资源pipe理器

我想扩展Windows资源pipe理器的自定义底部或右侧面板(如下图)。 从我一直在阅读,我认为我应该开始实施IShellView。 它是否正确? 任何人都可以给我几个指针如何在.NET中做到这一点? 谢谢