Questions tagged «bash»

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

1
如何在bash函数中使用Heredoc?
是否可以在bash函数中插入一个Heredoc? 下面的简单示例将导致错误: ./heredoc_in_function.sh: 10: Syntax error: end of file unexpected (expecting "}") #!/bin/sh my_function () { cat <<HEREDOC heredoc contents HEREDOC } my_function 环境: Ubuntu 11.04(GNU / Linux 2.6.38-8-服务器x86_64) GNU bash版本4.2.8(1)-发行版(x86_64-pc-linux-gnu)
12 ubuntu  bash 


5
Shell脚本可以等待文件更改并采取措施吗?
我想知道是否可以编写一个脚本来监视文件中的更改并在检测到更改时执行一些操作。 详细说明: OpenVPN每1分钟将其状态写入一个文件。 我需要解析此状态文件并采取措施。 OpenVPN在写入之前会截断状态文件。 我尝试写入命名管道,但是当应用程序无法截断管道时,我在应用程序中遇到了不想要的(但不是致命的)错误。

4
键盘快捷方式,用于存储键入的命令并清理行
您已经知道了这种情况:键入长命令(例如,提交消息)的过程已经中途了,并且意识到您忘记了执行一些不能添加的必备命令&&。通常,发生这种情况时,我选择用鼠标键入的内容,将其复制到剪贴板,按Ctrl-U清除该行,运行我的必备命令并粘贴到剪贴板。但是也许有更好的方法,最好不需要使用鼠标?我正在寻找bash和/或zsh的解决方案。

2
我如何收回被拒绝的流程?
与以前的许多问题类似,我发现自己正在做自己希望自己在屏幕上进行过的工作。由于需要断开连接,我被迫放弃该过程。现在,我已经重新连接,我看到该进程仍在运行。如何“收回”该过程,以便可以看到其输出并为其提供输入? 这个问题与仅将正在运行的进程移到屏幕上不同,它涉及重新打开丢失的stdin / out / err句柄。
12 bash  terminal 

8
在shell脚本中使用su
我正在自动化一个部署过程,我希望能够仅在计算机上调用一个.sh文件,让它进行构建并将.zip上载到服务器,然后在服务器上做很多工作。我需要做的一件事就是要求我扎根。所以,我要做的是: ssh user@172.1.1.101 <<END_SCRIPT su - #password... somehow... #stop jboss service server_instance stop #a bunch of stuff here #all done! exit END_SCRIPT 这有可能吗?
12 ssh  bash  sudo  su 

7
在* nix中,如何确定特定文件位于哪个文件系统上?
在通用的现代unix环境中(例如,GNU / Linux,GNU / Solaris或Mac OS X),是否有很好的方法来确定特定绝对文件路径位于哪个挂载点和文件系统类型上? 我想我可以执行mount命令并手动解析该命令的输出,并将其与文件路径进行字符串比较,但是在此之前,我想知道是否还有更优雅的方法。 我正在开发一个利用扩展属性的BASH脚本,并希望使其适用于各种文件系统和主机环境(在可能的范围内)。



9
复制大量文件时出现“参数列表过长”错误
我正在使用以下命令: \cp -uf /home/ftpuser1/public_html/ftparea/*.jpg /home/ftpuser2/public_html/ftparea/ 而且我得到了错误: -bash: /bin/cp: Argument list too long 我也尝试过: ls /home/ftpuser1/public_html/ftparea/*.jpg | xargs -I {} cp -uf {} /home/ftpuser2/public_html/ftparea/ -bash仍然存在:/ bin / ls:参数列表太长 有任何想法吗?
12 linux  bash  unix-shell 

2
如何通过标签过滤rsyslog消息
我有几个应用程序和脚本,我想将输出重定向到自定义文件。 我使用启动这些应用程序 command | logger -t TAG 我想根据它们的标签过滤这些消息,然后将它们重定向到其他文件。我不想使用bash重定向,因为那些应用程序主要是长时间运行的过程,并且需要适当的日志轮换。 我试图在/etc/rsyslog.d/60-myfilter.conf中添加自定义过滤器; if $syslogtag == 'giomanager' then /var/log/giomanager.log 我究竟做错了什么 ?根据标签进行过滤的正确方法是什么?是否有更好的选择可以得到相似的结果?
12 bash  logging  syslog  rsyslog 

5
您能向我解释一下#ln -s:“目标不是目录”吗?
我正在这样做: sudo ln –s /etc/apache2/sites-available/LoginProject /etc/apache2/sites-enabled/LoginProject 我得到: ln: target `/etc/apache2/sites-enabled/LoginProject' is not a directory / etc / apache2 / sites-available / LoginProject这是一个文件 编辑: 该命令: ls -l /etc/apache2/sites-enabled/LoginProject /etc/apache2/sites-available/LoginProject 输出: ls: cannot access /etc/apache2/sites-enabled/LoginProject: No such file or directory -rw-r--r-- 1 root root 526 2011-09-27 18:40 /etc/apache2/sites-available/LoginProject 编辑2: $ls /etc/apache2/sites-available/ default …
12 bash  linux 

5
在Linux中使用ip命令删除IP
如果我添加两个这样的IP: ip addr add 1.1.1.1/24 dev eth2 ip addr add 1.1.1.2/24 dev eth2 然后我尝试删除这样的一个: ip addr del 1.1.1.2/24 dev eth2 这两个IP都将被删除,我不知道如何处理。 有人知道如何解决吗?


4
使用sudo时找到但未找到linux命令
我试图像这样运行python3安装: pip3 install django 我得到错误: PermissionError:[Errno 13]权限被拒绝:'/usr/local/lib/python3.6/site-packages/pytz' 然后,我尝试: sudo pip3 install django 我得到错误: sudo:pip3:找不到命令 这是我的$ PATH的样子: /usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ec2-user/.local/bin:/home/ec2-user/bin 如何获得对pip3的sudo访问权限?
11 linux  centos  bash  sudo 

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.