小编eph*_*ith的帖子

/usr/lib64 到哪里去了,什么是 /usr/lib/x86_64-linux-gnu?

我有两个 Ubuntu-x86_64 系统。一个是 10.04 版,另一个是 12.04 版,lib 目录的结构有所不同。这并不让我感到惊讶,但我很好奇是否有人知道为什么。有什么好的理由吗?

10.04

2.6.32-38-server #83-Ubuntu SMP Wed Jan 4 11:26:59 UTC 2012 x86_64 GNU/Linux

/usr/lib
/usr/lib32
/usr/lib64
Run Code Online (Sandbox Code Playgroud)

12.04

3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 GNU/Linux

/usr/lib
/usr/lib/x86_64-linux-gnu
Run Code Online (Sandbox Code Playgroud)

linux 64bit ubuntu libraries

22
推荐指数
1
解决办法
3万
查看次数

几个与算术相关的命令,Dash、POSIX shell、sh、Increment

在 POSIX Shell 中对变量进行 pre/post 递增时,这两个示例之间有什么区别。它们看起来会产生相同的结果,但它们的使用方式会不同吗?你什么时候更喜欢一个?

X=$((X+1))

: $((X=X+1))
Run Code Online (Sandbox Code Playgroud)

shell dash shell-script posix

20
推荐指数
1
解决办法
1万
查看次数

我如何指示 BSD sed 解释像 \n 和 \t 这样的转义序列?

我有一个 sed 替换命令,我希望它与 BSDsed和 GNU兼容sed。扩展正则表达式不是问题,因为在这种情况下我不需要它们。我的主要问题是两个seds 解释替换字符串中的字符转义序列的方式不同。我的替换字符串包含制表符和换行符,为了便于维护,我希望它们在命令字符串中可见,但是,BSDsed不解释转义序列,而 GNUsed 可以。指示sed在 BSD 上解释这些转义序列的适当方法是什么?以下两个片段概括了我的问题:

GNU sed

echo ABC | sed 's/B/\n\tB\n'
Run Code Online (Sandbox Code Playgroud)

收益率

A
    B
C
Run Code Online (Sandbox Code Playgroud)

BSD sed

echo ABC | sed 's/B\n\tB\n'
Run Code Online (Sandbox Code Playgroud)

产量

AntBnC
Run Code Online (Sandbox Code Playgroud)

显然,\n并且\t不会被 BSD 解释为转义序列sed

现在,我的问题。根据 BSDsed联机帮助页:

要在替换字符串中指定换行符,请在其前面加上反斜杠。

这是否意味着我需要在文字换行符之前加上反斜杠?指示sed解释\n替换文本中的转义序列的适当方法是什么?

bsd sed

14
推荐指数
2
解决办法
6808
查看次数

如何为目录设置权限,以便在其下创建的文件和目录保持组写权限?

可能的重复:
使目录中的所有新文件可供组访问

我有一个目录,其中存储了协作文件/目录。假设目录abc归所有者所有,root组是project-abc. 我希望此目录具有以下内容:

  1. project-abc允许组内成员更改此目录的内容。
  2. 添加到的文件abc必须为成员或组设置读写权限abc
  3. 添加的目录必须对组具有读、写和执行权限abc

这对于静态目录来说很简单,但是该目录的内容预计会经常更改。我产生预期结果的最佳方法是什么?

linux permissions group

8
推荐指数
1
解决办法
1万
查看次数

Linux下如何获取共享库文件名列表?

是否有内置的 GNU Linux 来获取共享库的文件名列表?我考虑过解析ldconfig -p. 但是,我不确定从系统到系统的输出的一致性。

我已经知道我可以使用,find但鉴于链接器/加载器具有库和位置的缓存,以某种方式使用它似乎更有效。此外,链接器/加载器搜索的路径是我唯一关心的路径——即由ldconfig.

linux libraries

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

用 tee 包装一个 shell 脚本

有一个 bash 脚本可以打印一些日志并允许一些参数。该脚本将日志打印到 STDOUT。假设脚本的名称是AAA.sh

我也想使脚本日志打印到STDOUTfile。这可以通过tee.

$ AAA.sh -a -b --c=d | tee 2012-07-03-080000.log
Run Code Online (Sandbox Code Playgroud)

但是我的团队经常忘记将输出通过管道传输到tee. 我们应该将日志保存到文件中。所以我想用tee.

我想做的是

$ WrapAAAwithTee.sh -a -b --c=d
Run Code Online (Sandbox Code Playgroud)

然后 AAAwithTee.sh 应该将日志打印到 STDOUT 和日志文件。
我怎样才能包装 AAA.sh?

bash io-redirection tee stdout

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

标签 统计

linux ×3

libraries ×2

64bit ×1

bash ×1

bsd ×1

dash ×1

group ×1

io-redirection ×1

permissions ×1

posix ×1

sed ×1

shell ×1

shell-script ×1

stdout ×1

tee ×1

ubuntu ×1