Questions tagged «bash»

有关为Bash命令外壳编写的脚本的问题。对于具有错误/语法错误的shell脚本,请在此处发布之前,使用shellcheck程序(或在Web shellcheck服务器中的https://shellcheck.net)进行检查。有关Bash交互使用的问题更可能是Super User而不是Stack Overflow上的话题。

8
检查Bash中的文件夹大小
我正在尝试编写一个脚本来计算目录大小,如果大小小于10GB,然后大于2GB,则执行一些操作。我在哪里需要提及我的文件夹名称? # 10GB SIZE="1074747474" # check the current size CHECK="`du /data/sflow_log/`" if [ "$CHECK" -gt "$SIZE" ]; then echo "DONE" fi
316 bash  shell  directory 

10
bash脚本中的回显制表符
如何使用bash脚本回显一个或多个制表符?当我运行这段代码 res=' 'x # res = "\t\tx" echo '['$res']' # expect [\t\tx] 我明白了 res=[ x] # that is [<space>x]
313 bash  tabs  echo  spaces 



10
使用xargs运行多个命令
cat a.txt | xargs -I % echo % 在上面的示例中,xargs echo %作为命令参数。但是在某些情况下,我需要多个命令而不是一个来处理参数。例如: cat a.txt | xargs -I % {command1; command2; ... } 但是xargs不接受这种形式。我知道的一个解决方案是,我可以定义一个包装命令的函数,但这不是管道,我不喜欢它。还有其他解决方案吗?
310 bash  xargs 

5
如何使“ cut”命令将顺序分隔符视为相同?
我正在尝试从基于列的“空间”调整后的文本流中提取某个(第四)字段。我试图以cut以下方式使用命令: cat text.txt | cut -d " " -f 4 不幸的是,cut没有将多个空格视为一个定界符。我本来可以通过awk awk '{ printf $4; }' 或sed sed -E "s/[[:space:]]+/ /g" 折叠空间,但是我想知道是否有任何方法可以处理,cut并且本机有几个定界符?
307 bash  unix  delimiter  cut 

8
如何在if语句中表示多个条件?
我想代表多个条件,例如: if [ ( $g -eq 1 -a "$c" = "123" ) -o ( $g -eq 2 -a "$c" = "456" ) ] then echo abc; else echo efg; fi 但是当我执行脚本时,它显示 syntax error at line 15: `[' unexpected, 第15行显示的是.... 这种情况怎么了?我猜这是有问题的()。
307 bash  shell  unix 

4
在Ubuntu上安装MySQL而没有密码提示
如何编写脚本在Ubuntu上安装MySQL服务器? sudo apt-get install mysql 将安装,但它还将要求在控制台中输入密码。 如何以非交互方式进行此操作?也就是说,写一个可以提供密码的脚本吗? #!/bin/bash sudo apt-get install mysql # To install MySQL server # How to write script for assigning password to MySQL root user # End
305 mysql  bash  ubuntu  apt 

11
在Bash中将多个文本文件串联为单个文件
将目录中的所有* .txt文件合并为一个大文本文件的最快,最实用的方法是什么? 目前,我与cygwin一起使用Windows,因此可以访问BASH。 Windows Shell命令也将很好,但是我怀疑是否有一个。
305 bash  shell 


19
有没有更好的方法可以在bash中运行N次命令?
我偶尔会像这样运行bash命令行: n=0; while [[ $n -lt 10 ]]; do some_command; n=$((n+1)); done some_command连续运行多次-在这种情况下为10次。 通常some_command,实际上实际上是命令链或管道。 有更简洁的方法吗?
304 bash  loops 

16
在目标计算机上获取ssh以在后台执行命令
这是“ 如何在shell脚本中使用ssh”的后续问题。题。如果要在在该计算机的后台运行的远程计算机上执行命令,如何获取ssh命令以返回?当我尝试在命令末尾仅包含&符号时,它就会挂起。该命令的确切形式如下所示: ssh user@target "cd /some/directory; program-to-execute &" 有任何想法吗?需要注意的一件事是,登录到目标计算机始终会生成文本横幅,并且我设置了SSH密钥,因此不需要密码。
304 bash  ssh  csh 


13
在Linux中自动重复命令
在Linux命令行中是否可以每n秒重复一次命令? 说,我正在运行导入,我正在做 ls -l 检查文件大小是否正在增加。我想要一个命令来自动重复此操作。
303 linux  bash  ubuntu 

11
带有-i选项的sed命令在Mac上失败,但在Linux上有效
我已成功使用以下sed命令在Linux中搜索/替换文本: sed -i 's/old_link/new_link/g' * 但是,当我在Mac OS X上尝试时,得到: “命令c期望\后跟文本” 我以为Mac运行的是普通的BASH shell。这是怎么回事? 编辑: 根据@High Performance,这是由于Mac sed具有不同的(BSD)风格,因此我的问题将是如何在BSD中复制此命令sed? 编辑: 这是导致此情况的一个实际示例: sed -i 's/hello/gbye/g' *
303 linux  macos  bash  sed 

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.