小编Wes*_*Wes的帖子

在nautilus中隐藏安装的设备

我正在运行Ubuntu Precise.在我的/etc/init.d中我有一个bash脚本,在启动时执行以下操作:

  1. 循环在NTFS驱动器上安装映像.该映像包含一个ext2文件系统,其目录名为home

  2. 然后使用--rbind选项进行挂载,将图像文件中的主页挂载到/ home.

到目前为止工作得很好,虽然在/ home中打开文件并不能防止循环挂载被卸载.

不幸的是,Nautilus在可移动驱动器列表中显示了环路安装,其图标允许用户卸载环路安装.卸载安装/ home的驱动器不利于运行良好的系统.

如何让Nautilus不显示这个环路安装设备?

man udisk(7)说udev数据库中的'有影响力的设备属性'之一是:

UDISKS_PRESENTATION_HIDE

如果设置为1,则这是对演示级软件的提示,不应向用户显示该设备.

我假设在/ dev/loop上设置此属性会告诉Nautilus不要显示设备.

如何在bash脚本中设置UDISKS_PRESENTATION_HIDE?

linux bash nautilus

6
推荐指数
2
解决办法
3819
查看次数

忽略列表赋值中的元素的最佳方法是什么?

我使用列表分配将制表符分隔的值分配给不同的变量,如下所示:

perl -E '(my $first, my $second, my $third) = split(/\t/, qq[a\tb\tc]); say $first; say $second; say $third;'
a
b
c
Run Code Online (Sandbox Code Playgroud)

要忽略某个值,我可以将其分配给虚拟变量:

perl -E '(my $first, my $dummy, my $third) = split(/\t/, qq[a\tb\tc]); say $first; say $third;'
a
c
Run Code Online (Sandbox Code Playgroud)

我不喜欢有未使用的变量。还有其他方法吗?

perl

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

Perl Config :: Tiny-> read()不处理CRLF

我在Windows 10下使用Perl和Ubuntu.我想使用Perl Config :: Tiny模块来读取文件名和其他配置数据.当我在Linux中读取在Windows下创建的配置文件时,它将Carriage Returns保留在值的末尾.我目前通过在Linux下制作配置文件的临时副本来解决这个问题.

有没有办法告诉Config :: Tiny-> read()打开配置文件与行结束处理,做我想要的?

这是我当前代码的一个片段:

use Config::Tiny;
my $configfile = 'MyScript.ini';
# ; MyScript.ini file looks like:
# [MyScript]
# infilename=Dii.fwdata
# outfilename=Dii.1.fwdata
# logfilename=Dii.ReverseMerge.log
# someotherconfig=xyzzy

say STDERR "read config from:$configfile";
# Windows CRLF nonsense
if ( $^O =~ /linux/)  {
    `perl -pe 's/\r\n/\n/' < $configfile  >/tmp/$configfile `;
    }
my $config = Config::Tiny->read($configfile);
my $infilename = $config->{MyScript}->{infilename};
my $outfilename = $config->{MyScript}->{outfilename};
# ... etc,
Run Code Online (Sandbox Code Playgroud)

perl config perl-io

0
推荐指数
1
解决办法
84
查看次数

标签 统计

perl ×2

bash ×1

config ×1

linux ×1

nautilus ×1

perl-io ×1