小编Mic*_*rux的帖子

在.NET中,如何在NTFS中创建连接,而不是Symlink?

我正在尝试创建一个NTFS Junction.从cmd行我可以使用sysinternals中junction.exe工具执行此操作.结点的DIR cmd输出如下所示:

 Volume in drive C has no label.
 Volume Serial Number is C8BC-2EBD

 Directory of c:\users\cheeso\Documents

03/22/2009  09:45 PM    <JUNCTION>     My Music [\??\c:\users\cheeso\Music]
05/11/2007  05:42 PM    <DIR>          My Received Files
03/22/2009  09:46 PM    <JUNCTION>     my videos [\??\c:\users\cheeso\Videos]
Run Code Online (Sandbox Code Playgroud)

我在某地读过Junctions是Symbolic Links的子集.

所以我尝试使用CreateSymbolicLink创建一个Junction.当我这样做时,我实际上得到了一个符号链接,而不是一个连接点.

09/09/2009  11:50 AM    <SYMLINKD>     newLink [.\]
Run Code Online (Sandbox Code Playgroud)

还有CreateHardLink.那里的文档说交汇点(又名"重新分析点")是硬链接的子集.但我似乎无法接受这项工作.它完成但没有创建硬链接或联结.

我正在使用.NET/C#,导入如下所示:

    [Interop.DllImport("kernel32.dll", EntryPoint="CreateSymbolicLinkW", CharSet=Interop.CharSet.Unicode)]
    public static extern int CreateSymbolicLink(string lpSymlinkFileName, string lpTargetFileName, int dwFlags);

    [Interop.DllImport("kernel32.dll", EntryPoint="CreateHardLinkW", CharSet=Interop.CharSet.Unicode)]
    public static extern bool CreateHardLink(string lpFileName, …
Run Code Online (Sandbox Code Playgroud)

.net pinvoke winapi ntfs deviceiocontrol

15
推荐指数
1
解决办法
8130
查看次数

有没有办法将 bash shell 选项导出到 subshel​​l?

我在当前 shell 中设置了 bash 选项(例如 shopt -e autocd)并希望将此选项导出/复制到新创建的子 shell。有没有办法做到这一点?

Bash 版本是:GNU bash,版本 4.3.11(1)-release (x86_64-pc-linux-gnu)

例子:

$shopt -s autocd
$shopt autocd
autocd          on
$bash
$shopt autocd
autocd          off
Run Code Online (Sandbox Code Playgroud)

bash shell

5
推荐指数
1
解决办法
1327
查看次数

标签 统计

.net ×1

bash ×1

deviceiocontrol ×1

ntfs ×1

pinvoke ×1

shell ×1

winapi ×1