Questions tagged «bash»

Bash是Bourne Again SHell,它是经典Unix sh(shell)的继承者。

8
可以改用awk吗?
我想从中获取数字rating作为输出 # nc localhost 9571 language: language:en_ZA.UTF-8 language:en_ZW.UTF-8 session-with-name:Ubuntu Classic (No effects):gnome-session --session=2d-gnome session-with-name:Ubuntu (Safe Mode):gnome-session -f --session=2d-gnome session-with-name:Ubuntu Classic:gnome-session --session=classic-gnome xsession:/etc/X11/Xsession rating:94 我可以这样 # nc localhost 9571 | grep rating | cut -d: -f2 94 但是可以awk用来代替一个更简单的解决方案吗?
17 linux  bash  grep  awk 

4
计算从一个进程流到另一个进程的字节数
我正在运行一个Shell脚本,该脚本将数据从一个进程传输到另一个进程 process_a | process_b 有谁知道一种方法来找出两个程序之间传递了多少字节?我目前唯一能想到的解决方案是编写一个小的c程序,该程序从stdin读取,写入stdout并对所有传输的数据进行计数,并将计数存储在环境变量中,例如: process_a | count_bytes | process_b 有人有更整洁的解决方案吗?
17 bash  shell  pipe 

4
如何使用find命令删除与模式匹配的文件?
我正在尝试编写bash命令,该命令将删除所有与特定模式匹配的文件-在这种情况下,这是所有已建立的旧vmware日志文件。 我已经尝试过以下命令: find . -name vmware-*.log | xargs rm 但是,当我运行该命令时,它会阻塞名称中带有空格的所有文件夹。有没有一种格式化文件路径的方法,以便xargs将其传递给rm引用或正确转义?


2
如何为RPM软件包卸载新安装的依赖项?
有没有简单的方法来列出新安装的RPM软件包将与之安装的依赖项列表yum? 示例:如果这样做,yum install ruby它还将安装一些rubygems。 但是,当我卸载ruby软件包时,我也想摆脱它所安装的依赖项。 所以我的第一个想法是列出这些新软件包,然后rpm -e在卸载时对它们进行处理ruby。 题 如何以自动方式制作此类清单? 还是有一种更简单的方法来管理带有rpm包名称的文本文件?
16 linux  centos  bash  fedora 

4
如何为RHEL 4修补CVE-2014-6271和CVE-2014-7169中的bash漏洞?
一种用于远程执行通过猛砸码机制,昨天和今天(9月24日,2014年)被广泛报道http://seclists.org/oss-sec/2014/q3/650报告为CVE-2014-7169和CVE-2014 -6271 由于我在公共场合无法解释的愚蠢原因,我负责运行RHEL 4并且没有更新订阅的服务器。我可以建立一个克隆来测试这一点,但我希望有人能直接回答。 Centos 4中的/ bin / bash是否已打补丁,或者会被打补丁? 我是否可以将一个(大概已打补丁的)Centos 4 / bin / bash放入我的RHEL系统中,作为一种变通办法,它将使我花费数周的时间?(我需要到12月10日)
16 centos  bash  exploit  rhel4 

2
有针对“哪个”的内置bash吗?
我一直在测试最小的Fedora安装。为了检查python或node之类的解释器的路径,我通常使用which。 我注意到which默认情况下未安装。我可以添加该程序包,但我想知道是否有一个内置的shell可用于执行此常见任务。 我正在使用bash 4.2。
16 bash 

3
将PostgreSQL完全重置为默认值?
题 有没有办法完全重置Linux上的PostgreSQL安装,使其与我安装时的状态相同? 理念 我考虑过 rm -rf /var/lib/pgsql/* rm -rf /var/lib/pgsql/backups/* rm -rf /var/lib/pgsql/data/* 但这也许不是推荐的方法。 目的 这将有助于摆脱以前使用它的程序的遗留问题。

2
在su期间将“无法设置终端进程组”作为另一个登录用户
注意:请阅读本文中途附近的以“ EDIT”开头的更新信息-此问题的环境和背景已更改 我在这里安装了标准的Debian 6.0沼泽,我决定将其降级到Debian Testing信息库。我这样做是通过在我的sources.list中换掉对Squeeze仓库的引用来代替使用Testing仓库。 软件包安装并重新启动后,尝试向其他用户输入su时出现以下错误: root@skaia:~# su joebloggs - bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell 如果我省略-,则不会发生。 请注意,用户可以正确地成为root用户,这似乎仅在从root用户切换到其他人并使用-获得该用户的环境时才会发生。 Google在这里几乎没有用。我唯一能找到的是2011年关于sux软件包的,该文献似乎在此期间已得到修复。 这看起来和闻起来很像是升级错误,可以通过以正确的方式调整正确的软件包来修复。我只是不知道从哪里开始-除此之外,我的系统完全可以正常运行,并且符合预期。 编辑 我现在在Debian马stable上发生这种情况如上所述机。这次无需升级或执行任何操作,只需稳定即可。 是的,一年后。仍然不知道问题到底在哪里。 现在是这样(没有太大变化): bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job …

1
无法在Amazon EC2(Amazon Linux)中键入小写字母e
在新的ec2版本上运行几天后,会发生以下情况: 我登录SSH,一切正常,我进行了编码 我第二天返回,并登录SSH 我再也无法输入小写字母e了-输入错误提示音 我尝试从另一台计算机上SSH,同样的问题 我重新启动服务器,同样的问题 我打开nano或vi与e工作正常,只是没有在bash或sh 我终止服务器,创建一个新服务器,从头开始安装,几天后再次发生 真是莫名其妙!我什至从哪里开始进行故障排除? 我的本地计算机设置: Windows XP或7 油灰(最新)或cygwin / openssh EC2设置 Amazon Linux(默认选项) node.js iptables将端口80转发到端口8003上的节点 emacs,npm和openssl-devel 没有其他mod 这是我的/ etc / profile 这是我的/ etc / inputrc 这是我的〜/ .bashrc和〜/ .bash_profile 环境的输出 stty -a我无法输入时的输出e sh-4.1$ stty -a speed 38400 baud; rows 30; columns 95; line = 0; intr …
16 ssh  amazon-ec2  bash  sh 

4
Rsync似乎与.bashrc不兼容(因为“您的外壳干净吗?”)
事实证明rsync无法与具有.bashrc文件的远程服务器一起使用? 在本地客户端上,当我运行rsync时: protocol version mismatch -- is your shell clean? (see the rsync man page for an explanation) rsync error: protocol incompatibility (code 2) at compat.c(180) [sender=3.0.7] 如此处建议的那样,在服务器上删除.bashrc可解决此问题。如何解决而不删除.bashrc文件的问题?
16 bash  rsync 

2
用p向/ etc / profile添加行?
我使用puppet安装当前的JDK和tomcat。 package { [ "openjdk-6-jdk", "openjdk-6-doc", "openjdk-6-jre", "tomcat6", "tomcat6-admin", "tomcat6-common", "tomcat6-docs", "tomcat6-user" ]: ensure => present, } 现在我想添加 JAVA_HOME="/usr/lib/java" export JAVA_HOME 到/etc/profile,只是为了避免这种情况。我还没有在文档中找到简单的答案。有推荐的方法吗? 通常,我如何告诉人偶将该文件放置在此处或修改该文件?我将puppet用于单个节点(处于独立模式)只是为了对其进行尝试并保留服务器设置的日志。
16 linux  bash  java  puppet 

4
cp命令即使覆盖-f也会提示覆盖
我正在尝试使用以下命令将所有较新的jpg从一个文件夹复制到另一个文件夹 cp -u --force /home/oldfolder/*.jpg /home/newfolder/ 我得到以下提示: cp: overwrite `/home/newfolder/4095-181.jpg'? 我知道的'-u'工作正常,因为它只是在更新的文件上提示我,但是我不想得到提示,我只希望它覆盖它们。我试过了--force和-f 有什么建议么? 提前致谢
16 centos  bash  copy 

5
使用bash中的主字符(〜)检查目录是否存在失败
为什么以下bash检查目录是否失败? if [ ! -d "~/Desktop" ]; then echo "DOES NOT EXIST" exit 1; fi ~/Desktop确实存在。顺便说一下,这是在Mac上。 问题是这种类型的脚本 read -p "Provide the destination directory: " DESTINATION if [ ! -d $DESTINATION ]; then echo "\t'$DESTINATION' does not exist." >&2; exit 1; fi
16 bash 


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.