Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答

3
基于环境变量的条件分配
在bash脚本中,我要分配一个局部变量,以便该值取决于外部的全局环境变量($MYAPP_ENV)。 if [ "$MYAPP_ENV" == "PROD" ] then SERVER_LOGIN=foobar123@prod.example.com else SERVER_LOGIN=foobar987@test.example.com fi 有没有一种较短的(到目前为止还很干净)编写上述作业的方法?(大概使用某种条件运算符/内联if。)

3
替换文件时保持(或还原)文件权限
我有一个命令,该命令接受文件作为参数,修改文件,然后将其写入第二个参数中指定的文件名。我将调用该程序modifyfile。 我希望它可以“就地”运行,所以我编写了一个shell脚本(bash),将其修改为一个临时文件,然后将其移回: TMP=`mktemp` modifyfile "$original" "$TMP" mv -v "$TMP" "$original" 不幸的是,该文件的权限受到了破坏。使用默认权限重新创建该文件。 有没有办法告诉mv命令覆盖目标而不更改其权限?或者,是否有一种方法可以保存原始用户,组和权限并还原它们?



1
如何使Oracle Java 7与setcap cap_net_bind_service + ep一起使用
我正在尝试授予Java可执行文件在Linux上打开1024以下端口的权限。这是设置 /home/test/java 包含Oracle Server JRE 7.0.25 CentOS的6.4 这是getcap返回的内容 [test@centos6 java]$ pwd /home/test/java [test@centos6 java]$ getcap bin/java bin/java = cap_net_bind_service+ep [test@centos6 java]$ getcap jre/bin/java jre/bin/java = cap_net_bind_service+ep 尝试执行Java会出现以下错误。 [test@centos6 java]$ bin/java bin/java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory [test@centos6 java]$ jre/bin/java …

3
使用find删除除某个子目录中的所有文件以外的所有文件
我想递归地删除该文件夹中一段时间​​未访问的a所有文件,但子文件夹中的所有文件除外b。 find a \( -name b -prune \) -o -type f -delete 但是,我收到一条错误消息: 查找:-delete操作自动打开-depth,但是当-depth有效时,-prune不执行任何操作。如果仍要继续,则只需显式使用-depth选项。 添加-depth会导致b其中包含所有文件,这一定不会发生。 有人知道安全的方法来完成这项工作吗?
11 find  directory  rm 

5
Shell脚本,如果磁盘使用率超过90%,则发送警报邮件
我想在服务器上实现一个脚本,如果磁盘使用率超过90%,它将自动发送电子邮件警报;当磁盘使用率超过95%时,将自动发送第二电子邮件警报。我的文件系统是abc:/xyz/abc,挂载点是/pqr。 我已经试过了: ADMIN="someone@def.com" ALERT=90 df -H | grep -vE 'abc:/xyz/pqr | tmpfs |cdrom' | awk '{ print $5 " " $1 }' | while read output; do usep=$(echo $output | awk '{ print $1}' | cut -d'%' -f1 ) partition=$(echo $output | awk '{ print $2 }' ) if [ …

5
如何将pdf文件从灰度转换为黑白?
我的操作系统是Ubuntu 12.04。如何将pdf文件从灰度转换为黑白?灰度pdf文件来自具有灰度选项的扫描,而OCR要求使用黑白pdf文件。 更新: 根据Marco的回复,BW pdf不好,原始文件在这里。
11 command-line  pdf 

1
有没有模拟高延迟的方法?
这是关于如何限制带宽的很好的答案。 现在,带宽不是我主要关注的问题,而是延迟。 如果我在应用程序服务器与其数据库服务器之间放置数百公里,会发生什么情况? 我正在寻找一种可能性来模拟每个IP数据包的预期延迟。
11 networking 

1
如何在bash终端中输入/开始新行?
我注意到一些示例循环bash分散在示例中的多行中 for VARIABLE in file1 file2 file3 do command1 on $VARIABLE command2 commandN done (例如,这里 http://www.cyberciti.biz/faq/bash-for-loop/)如何在bash终端中输入换行符(我使用腻子)?当我在一行末尾按Enter键时,系统将执行它。
11 bash  line-editor 


1
网络管理员的调度程序脚本不再起作用
升级到networkmanager 0.9.8后不久,启动时收到以下消息, 调度程序失败:(32)单元dbus-org.freedesktop.nm-dispatcher.service无法加载:没有这样的文件或目录。有关详细信息,请参见系统日志和“ systemctl状态dbus-org.freedesktop.nm-dispatcher.service”。 而且我注意到我所有的调度程序脚本(位于中/etc/NetworkManager/dispatcher.d)都已消失。每个脚本的权限设置为700,由root拥有。 我已经用pkgfile和运行了名称locate,没有输出。 该文件实际上并不存在,那么在哪里可以找到它?

2
结束后如何在Linux上测量应用程序的峰值内存
如何测量在Linux上运行的应用程序的峰值内存? 我批量运行此应用程序,因此无法使用RSS,因为它会报告当前内存。我需要该应用程序过去曾被报告的峰值内存。 VmPeak也不是一种解决方案,因为它报告已分配的内存,并且也不从实际的Ram而是从硬盘进行计算。
11 linux  memory 

4
在Fedora安装中更新所有软件的首选方式是什么?
安装某些系统时,通常会寻找一种批量更新方法,该方法将更新我最近安装的软件。 例如,在Debian中,将更sources.list改为指向我想要的,然后执行# apt-get update && apt-get dist-upgrade。 Fedora(18)中有与此等效的东西吗?我缺少一个GUI升级管理器吗? 弹出Gnome消息,提示我的系统需要重要更新。我不予理it,因为它提供给我的唯一选择是“安装更新”,但我不确定这样做会怎样。 现在,该消息已消失,我找不到它,也可能没有连接任何软件。 我在这里想念什么?

1
真正的非“更好的触摸工具”解决方案,可在Mac OS X上进行选择复制
我最近搬到了Mac。我缺少X11复制粘贴样式。我找不到在Mac OS X上全局模拟X11行为“选择复制”,“单击中间键粘贴”的方法 。我知道这个问题已经存在很长时间了,但是我找不到任何真正的杀手级解决方案。 我发现最好的是在Mac OS X上可以通过突出显示进行复制并通过单击鼠标中键粘贴吗?。所有建议的解决方案都试图找到一种通过单击鼠标中键从剪贴板粘贴文本的方法。但是,没有人有自动复制突出显示的文本的真正解决方案。 我想知道是否可以自动复制突出显示的文本。即使我应该编写一个守护程序来执行此操作。任何从哪里开始思考的指针都会很棒。
11 x11  osx  mouse  copy-paste 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.