22
|
bstpierre Edgar Aviles · 技术社区 · 14 年前 |
1
26
您可以在运行新程序时通过
|
2
9
我有机会浏览一下bash的源代码,它看起来不支持写入argv[0]。 |
3
9
只是为了记录,尽管它不能准确回答原始海报的问题,但这与
|
4
6
|
5
6
我假设您有一个shell脚本希望执行,这样脚本进程本身就有了一个新的
输出如下:
所以
汪汪,还在显示
多亏了
this answer
,我首先测试环境变量
现在的输出是:
就快到了。这个
bash 5.0的更新 看起来bash 5.0增加了对特殊变量的写入支持 BASH_ARGV0 因此,这应该变得简单得多。 (见 release announcement ) |
6
0
我只想补充一点,至少在某些环境中,这在运行时是可能的。在Linux上的Perl中分配$0确实改变了在ps中显示的内容,但是我不知道如何实现。如果我能找到答案,我会更新这个。 <编辑>: 基于Perl的工作方式,这是非常重要的。我怀疑运行时是否有任何bask内置的方式,但不确定。您可以看到perl如何在运行时设置进程名。 D出,我会更新这个。
编辑: 基于Perl的工作方式,这是非常重要的。我怀疑运行时是否有任何bask内置的方式,但不确定。你可以看到 Perl如何在运行时设置进程名 . |
7
-1
将bash可执行文件复制到其他名称。 您可以在脚本本身中执行此操作…
如果您试图假装自己不是shell脚本,则可以将脚本本身重命名为酷的内容,甚至可以将其重命名为“”(单个空间),因此
将执行bash脚本并显示在ps列表中
好吧,所以调用脚本“”是一个非常糟糕的主意:) 基本上,更改名称
重命名bash并重命名脚本。 如果你担心的话,就像麦克唐纳先生。显然,关于将二进制文件复制到新名称(这是完全安全的),您还可以创建一个符号链接
这样,符号链接就出现在ps列表中。(再次使用path=$path:。如果你不想要。/) |
Pukanium · 分割argv参数并写入数组 7 年前 |
Jin · C中命令行参数“argv”的类型是什么? 8 年前 |
JasonBorne · 当没有给定ARGV时,设置标志并运行默认值 8 年前 |
Austin · 如何在C中通过argv[1]进行索引? 8 年前 |
Sinux1 · 使用argv在Python 2脚本中创建要写入的文件 9 年前 |
J A · 如何将raw_input与argv一起使用? 10 年前 |
Hook · 对argv中的参数使用条件 10 年前 |
user1561108 · 在C语言中,如何向字符串数组动态添加命令行参数? 10 年前 |