【Linux bash常用快捷键】教程文章相关的互联网学习教程文章

linux – Bash脚本进程替换语法错误:“(”意外【代码】

我想运行这个脚本:#!/bin/bash echo <(true)我把它当作:sh file.sh我得到“语法错误:”(“意外”.我发现了一些类似的情况,但仍然无法解决这个问题.我是shell脚本的初学者,但据我了解: >我使用的shebang是正确的并选择了bash shell,因此进程替换语法应该有效>我从命令行尝试相同,它的工作原理.我使用echo $0进行检查,它给了我“bash”,那么在命令行和调用相同shell的脚本中运行命令有什么不同? 也许这很简单,但我找不到解释或解...

linux – 如何从Bash中对包含公共前缀和后缀的字符串进行数字排序?【代码】

这是一个文件列表:some.string_100_with_numbers.in-it.txt some.string_101_with_numbers.in-it.txt some.string_102_with_numbers.in-it.txt some.string_23_with_numbers.in-it.txt some.string_24_with_numbers.in-it.txt some.string_25_with_numbers.in-it.txt现在我想用数字排序.以* 23 *开头,以* 102 *结尾. 我试过-n和-g. -t对这些凌乱的字符串没有帮助. 我可以忽略带有选项的数字的前导字符串,还是我必须聪明和脚本?解...

linux – 在Bash中将文本文件作为命令运行【代码】

如果我有一个文本文件,每行都有一个单独的命令,我如何使终端作为命令运行每一行?我只是不想一次复制和粘贴1行.它不必是一个文本文件……它可以是任何类型的文件. example.txt文件:sudo command 1 sudo command 2 sudo command 3解决方法:你可以使用这些命令创建一个shell脚本,然后chmod x< scriptname.sh>,然后运行它./scriptname.sh写一个bash脚本非常简单 样机sh文件:#!/bin/sh sudo command1 sudo command2 . . . sudo comm...

linux – 向路径添加bash脚本【代码】

我想在Linux PATH中添加一个小脚本,所以我不必在它实际放置在磁盘上的地方运行它. 脚本非常简单,就是通过代理提供apt-get访问,我就是这样做的:#!/bin/bash array=( $@ ) len=${#array[@]} _args=${array[@]:1:$len} sudo http_proxy="http://user:password@server:port" apt-get $_args然后我将其保存为apt-proxy.sh,将其设置为x(chmod),当我在放置此文件的目录中时,一切正常. 我的问题是:如何将这个apt-proxy添加到PATH,所以我实...

linux – 如何比较两个DateTime字符串并以小时为单位返回差异? (bash shell)【代码】

我可以使用以下代码在php中执行此操作:$dt1 = '2011-11-11 11:11:11'; $t1 = strtotime($dt1);$dt2 = date('Y-m-d H:00:00'); $t2 = strtotime($dt2);$tDiff = $t2 - $t1;$hDiff = round($tDiff/3600);$hDiff会在几小时内给我结果. 如何在bash shell中实现上述功能?解决方法:您可以使用date命令来实现此目的. man date将为您提供更多详细信息.一个bash脚本可能是这些行上的东西(似乎在Ubuntu 10.04 bash 4.1.5上工作正常):#!/bi...

linux – Bash中的脚本参数【代码】

我正在尝试制作一个应该像这样使用的shell脚本:ocrscript.sh -from /home/kristoffer/test.png -to /home/kristoffer/test.txt然后该脚本将图像文件转换为文本文件.这是我到目前为止提出的:#!/bin/bash export HOME=/home/kristoffer /usr/local/bin/abbyyocr9 -rl Swedish -if ???fromvalue??? -of ???tovalue??? 2>&1但我不知道如何获得-from和-to值.关于如何做的任何想法?解决方法:您提供给bashscript的参数将出现在变量$1和...

linux – “#!/usr/bin/env bash”和“#!/usr/bin/bash”有什么区别?【代码】

在bash脚本的标题中,这两个语句之间的区别是什么? >#!/usr/bin/env bash>#!/usr/bin/bash 当我试图看到env手册页时,我得到了这个定义:env - run a program in a modified environment这是什么意思?解决方法:通过/usr/bin/env运行命令的好处是可以查找当前环境中程序的默认版本. 这样,您不必在系统上的特定位置查找它,因为这些路径可能位于不同系统上的不同位置.只要它在你的道路上,它就会找到它. 一个缺点是如果你想支持Linux...

linux – 在bash中提取没有路径和扩展名的文件basename【代码】

参见英文答案 > Extract filename and extension in Bash 37个给定这样的文件名:/the/path/foo.txt bar.txt我希望得到:foo bar为什么这不起作用?#!/bin/bashfullfile=$1 fname=$(basename $fullfile) fbname=${fname%.*} echo $fbname什么是正确的方法呢?解决方法:您不必调用外部basename命令.相反,您可以使用以下命令:$s=/the/path/foo.txt $echo ${s##*/} foo.txt $s=${s##*/} $echo ${...

【Linux】【8】切换JDK版本时报错,bash: ./java: cannot execute binary file

原因:安装jdk的版本和linux系统版本对不上,把64位的jdk版本移到32位上面安装了,所以会出现上面的问题。 解决方案:建议都调整为64位版本的,资源前面的博客有 参考博客: linux出现bash: ./java: cannot execute binary file 问题的解决办法 - 人生设计师 - 博客园https://www.cnblogs.com/longshiyVip/p/4802339.html?tdsourcetag=s_pcqq_aiomsg 如何看linux是32位还是64位-百度经验https://jingyan.baidu.com/article/3a2f7c2...

linux – 在Bash脚本中管道进出剪贴板【代码】

是否可以在Bash中管道进出剪贴板? 无论是与设备手柄之间的管道连接还是使用辅助应用程序,我找不到任何东西. 例如,如果/ dev / clip是链接到剪贴板的设备,我们可以这样做:cat /dev/clip # Dump the contents of the clipboard cat foo > /dev/clip # Dump the contents of "foo" into the clipboard解决方法:你可以处理很多剪贴板.我希望你可能是一个想要把东西放在X Windows主剪贴板中的Linux用户.通常,您要与之交谈的剪...

linux – 使用Bash自动将最后一个命令的输出捕获到变量中?【代码】

我希望能够在后续命令中使用上次执行的命令的结果.例如,$find . -name foo.txt ./home/user/some/directory/foo.txt现在让我们说我希望能够在编辑器中打开文件,或删除它,或者用它做其他事情,例如mv <some-variable-that-contains-the-result> /some/new/location我该怎么做?也许使用一些bash变量? 更新: 为了澄清,我不想手动分配东西.我所追求的是内置的bash变量,例如:ls /tmp cd $_$_保存上一个命令的最后一个参数.我想要类似...

linux bash环境变量简单总结

来源链接:http://www.178linux.com/8005 原创文章,如有转载,请注明原文地址 一.环境变量简介 Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都 是相同的,这个默认环境实际上就是一组环境变量的定义。 环境变量是全局的,设置好的环境变量可以被所有当前用户所运行的程序所使用。 用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。 常见的环境变量:...

linux – 如何在Bash中给定超时后杀死子进程?【代码】

我有一个bash脚本启动一个子进程,它不时崩溃(实际上,挂起)并没有明显的原因(闭源,所以我无能为力).因此,我希望能够在给定的时间内启动此过程,如果在给定的时间后没有成功返回,则将其终止. 有没有一种简单而强大的方法来实现使用bash? P.S.:告诉我这个问题是否更适合服务器故障或超级用户.解决方法:(如下所示:BASH FAQ entry #68: “How do I run a command, and have it abort (timeout) after N seconds?”) 如果您不介意下载某...

linux – 如何在Bash中测试变量是否为数字?【代码】

我无法弄清楚如何确保传递给我的脚本的参数是否为数字. 我想做的就是这样:test *isnumber* $1 && VAR=$1 || echo "need a number"有帮助吗?解决方法:一种方法是使用正则表达式,如下所示:re='^[0-9]+$' if ! [[ $yournumber =~ $re ]] ; thenecho "error: Not a number" >&2; exit 1 fi如果该值不一定是整数,请考虑适当修改正则表达式;例如:^[0-9]+([.][0-9]+)?$…或者,处理带有符号的数字:^[+-]?[0-9]+([.][0-9]+)?$

linux – 在Bash中循环浏览文件的内容【代码】

如何使用Bash遍历文本文件的每一行? 使用此脚本:echo "Start!" for p in (peptides.txt) doecho "${p}" done我在屏幕上看到这个输出:Start! ./runPep.sh: line 3: syntax error near unexpected token `(' ./runPep.sh: line 3: `for p in (peptides.txt)'(后来我想用$p做一些更复杂的事情,而不仅仅是输出到屏幕上.) 环境变量SHELL是(来自env):SHELL=/bin/bash/ bin / bash –version输出:GNU bash, version 3.1.17(1)-releas...