Questions tagged «bash»

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

3
make的DESTDIR和PREFIX
我正在尝试将软件安装到特定目录。我发现了几种方法,但不确定它们之间有什么区别。 ./configure --prefix=*** make install DESTDIR=*** make install prefix=*** 我对这三个功能感到困惑。他们是否达到了相同的目标?
118 c  linux  bash  makefile  configure 

7
检查bash中当前分区的可用磁盘空间
我正在用bash编写安装程序。用户将转到目标目录并运行安装脚本,因此第一个操作应该是检查是否有足够的空间。我知道df将报告所有文件系统,但是我想知道是否有一种方法可以仅针对目标目录所在的分区获取可用空间。 编辑-我想出的答案 df $PWD | awk '/[0-9]%/{print $(NF-2)}' 有点奇怪,因为df似乎会格式化其输出以适合终端,因此对于长安装点名称,输出将下移一行
118 linux  bash 



10
Bash脚本来计算经过的时间
我正在用bash编写脚本来计算执行命令所花费的时间,请考虑: STARTTIME=$(date +%s) #command block that takes time to complete... #........ ENDTIME=$(date +%s) echo "It takes $($ENDTIME - $STARTTIME) seconds to complete this task..." 我想我的逻辑是正确的,但是我最终得到了以下打印输出: “完成此任务需要几秒钟的时间...” 我的字符串评估有什么问题吗? 我相信bash变量是无类型的,但是如果bash中有“从字符串到整数”的方法,我还是很乐意的。
118 linux  bash  shell 

7
如何在Windows的Git Bash中设置别名?
如何从git-scm.com下载的Windows Git Bash中使用别名命令? 我的意思是Bash命令不是Git。 (Windows 7的) 编辑: 在.bashrc文件中写别名(如@gturri所建议),不要在控制台中添加它。(系统重新启动后)(我从未为ls命令写过别名,因此它应该是一些默认别名。)
118 git  bash 

11
测试字符串是否为有效整数
我正在尝试做一些足够普通的事情:在shell脚本中解析用户输入。如果用户提供了一个有效的整数,则脚本将执行一件事,如果无效,则脚本将执行其他操作。麻烦的是,我还没有找到一种简便(且相当优雅)的方法-我不想将它逐个字符地分开。 我知道这一定很容易,但我不知道如何。我可以用十几种语言来做,但是不能用BASH! 在我的研究中,我发现: 用于测试字符串是否以10为底的有效实数组成的正则表达式 在其中有一个讨论正则表达式的答案,但据我所知,这是C语言中可用的功能(以及其他功能)。尽管如此,它看起来还是一个不错的答案,所以我尝试使用grep进行尝试,但是grep不知道该怎么做。我尝试了-P,这意味着将其视为PERL regexp-nada。破折号E(-E)也不起作用。而且-F也没有。 为了清楚起见,我正在尝试类似的事情,寻找任何输出-从那里,我会整理脚本以利用我得到的一切。(IOW,我期望在重复有效行时,不合格的输入不返回任何内容。) snafu=$(echo "$2" | grep -E "/^[-+]?(?:\.[0-9]+|(?:0|[1-9][0-9]*)(?:\.[0-9]*)?)$/") if [ -z "$snafu" ] ; then echo "Not an integer - nothing back from the grep" else echo "Integer." fi 请问有人说明这是最容易做到的吗? 坦率地说,我认为这是TEST的缺点。它应该有这样的标志 if [ -I "string" ] ; then echo "String is a valid integer." else …


8
如何解决“您需要在PATH中安装Ruby和Sass才能使此任务正常工作”警告?
我正在设置要使用的新Mac。我已经在全球范围内安装了Grunt&Grunt CLI。然后,我npm install在项目文件夹中进行了安装所有依赖项。 到目前为止,还没有问题,但是一旦我尝试运行sass:dist任务,就会收到以下警告: Warning: You need to have Ruby and Sass installed and in your PATH for this task to work. More info: https://github.com/gruntjs/grunt-contrib-sass Use --force to continue. 我了解的是,我需要在更全局的级别上安装Ruby和Sass才能运行此任务。由于我对使用该终端还很陌生,因此我进行了快速搜索以找出是什么PATH-似乎是存储重要数据的某些系统路径(可以更改)。 这是否意味着我可以简单地通过a sudo grunt install contrib-sass -g来解决此问题?那么Ruby –我一直以为它已经安装在OS X上了?
117 ruby  macos  bash  terminal  sass 

6
用换行符将内容归档到Unix变量中
我有一个文本文件test.txt,内容如下: text1 text2 我想将文件的内容分配给UNIX变量,但是当我这样做时: testvar=$(cat test.txt) echo $testvar 结果是: text1 text2 代替 text1 text2 有人可以建议我解决这个问题吗?
117 bash  unix 

3
在$ 0和BASH_SOURCE之间选择
如何在"$0"和之间选择"${BASH_SOURCE[0]}" 来自GNU的描述对我没有多大帮助。 BASH_SOURCE An array variable whose members are the source filenames where the corresponding shell function names in the FUNCNAME array variable are defined. The shell function ${FUNCNAME[$i]} is defined in the file ${BASH_SOURCE[$i]} and called from ${BASH_SOURCE[$i+1]}
117 bash 

2
/ bin / sh:apt-get:找不到
我正在尝试更改dockerFile以使用aspell。我有一个bash脚本,我想将其包装在扩展坞中 Step 4: Wrap the script in a Docker container. The sample SDK we downloaded earlier contains an example of an action wrapped in a Docker container. In particular, the sample SDK includes a Dockerfile that builds the C program in client/example.c and installs the binary as /blackbox/client/action . The …


10
如何检查本地是否存在带有特定标签的Docker映像?
我想找出本地是否存在带有特定标签的Docker映像。如果Docker客户端无法本地执行此操作,那么我可以使用bash脚本。 仅为了提供一些可能的bash脚本提示,运行docker images命令的结果将返回以下内容: REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE rabbitmq latest e8e654c05c91 5 weeks ago 143.5 MB busybox latest 8c2e06607696 6 weeks ago 2.433 MB rabbitmq 3.4.4 a4fbaad9f996 11 weeks ago 131.5 MB
116 bash  docker 

26
从Shell脚本检查目录是否包含文件
从Shell脚本中,如何检查目录是否包含文件? 与此类似 if [ -e /some/dir/* ]; then echo "huzzah"; fi; 但是如果目录包含一个或多个文件,则该方法有效(以上一个仅适用于0或1个文件)。
116 bash  unix  shell 

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.