草庐IT

bash-trap

全部标签

linux - bash:将列表文件放入变量中,但数组的大小为 1

我正在列出一个目录中的文件并循环遍历它们,但我还需要知道有多少文件。${#dirlist[@]}始终为1,但for循环有效吗?#!/bin/bashprefix="xxx";#asexamplelen=${#prefix};#stringlengthdirlist=`ls${prefix}*.text`;qty=${#dirlist[@]};#sizeofarrayisalways1forfilelistin$dirlistdosubstring="${filelist:$len:-5}";echo"${substring}/${qty}";done我有文件xxx001.text到xx

linux - 从 Bash shell 脚本中打开 Vim

我想编写一个执行以下操作的Bashshell脚本:使用Vim打开一个文件;往文件里写东西;保存文件并退出。echo'Abouttoopenafile'vimfile.txt#Ineedtousevimapplicationtoopenafile#Nowwritesomethingintofile.txt...#Thenclosethefile....echo'Done'这可能吗?我找到了一个叫做Vimscript的东西,但不确定如何使用它。还是可以使用此处文档之类的东西?更新:我需要验证Vim是否在我们的文件上正常工作系统。所以我需要编写调用Vim的脚本,执行一些命令,然后关闭它。我的

linux - 从 Bash shell 脚本中打开 Vim

我想编写一个执行以下操作的Bashshell脚本:使用Vim打开一个文件;往文件里写东西;保存文件并退出。echo'Abouttoopenafile'vimfile.txt#Ineedtousevimapplicationtoopenafile#Nowwritesomethingintofile.txt...#Thenclosethefile....echo'Done'这可能吗?我找到了一个叫做Vimscript的东西,但不确定如何使用它。还是可以使用此处文档之类的东西?更新:我需要验证Vim是否在我们的文件上正常工作系统。所以我需要编写调用Vim的脚本,执行一些命令,然后关闭它。我的

linux - bash 猫多个文件

我正在尝试cat三个文件并获取并插入换行符\n在每个文件之后,我想到了使用类似的东西:catf1f2f3|tr"\EOF""\n"没有成功。实现该目标的最简单方法是什么? 最佳答案 catf1或perl-pe'eof&&s/$/\n/'abc 关于linux-bash猫多个文件,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/12037634/

linux - bash 猫多个文件

我正在尝试cat三个文件并获取并插入换行符\n在每个文件之后,我想到了使用类似的东西:catf1f2f3|tr"\EOF""\n"没有成功。实现该目标的最简单方法是什么? 最佳答案 catf1或perl-pe'eof&&s/$/\n/'abc 关于linux-bash猫多个文件,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/12037634/

linux - Bash 输出重定向的问题

这个问题在这里已经有了答案:Whydoesnt"tail"worktotruncatelogfiles?(6个答案)关闭去年。我试图删除文件中除最后一行以外的所有行,但以下命令不起作用,尽管file.txt不为空。$catfile.txt|tail-1>file.txt$catfile.txt为什么会这样?

linux - Bash 输出重定向的问题

这个问题在这里已经有了答案:Whydoesnt"tail"worktotruncatelogfiles?(6个答案)关闭去年。我试图删除文件中除最后一行以外的所有行,但以下命令不起作用,尽管file.txt不为空。$catfile.txt|tail-1>file.txt$catfile.txt为什么会这样?

linux - 为什么这个 bash expr 命令不起作用?

这个问题在这里已经有了答案:CommandnotfounderrorinBashvariableassignment(5个答案)关闭6年前。我试图在bash脚本中增加一个变量,但它不起作用。这是我的代码:#!/bin/bashCOUNTER=0while[$COUNTER-lt5]doecho"iwilladdthislinetofilemycreation">>./myfileCOUNTER=`expr$COUNTER+1`doneCOUNTER赋值周围的引号是反引号。我尝试用$COUNTER替换COUNTER,如下所示:$COUNTER=`expr$COUNTER+1`但这并没有解

linux - 为什么这个 bash expr 命令不起作用?

这个问题在这里已经有了答案:CommandnotfounderrorinBashvariableassignment(5个答案)关闭6年前。我试图在bash脚本中增加一个变量,但它不起作用。这是我的代码:#!/bin/bashCOUNTER=0while[$COUNTER-lt5]doecho"iwilladdthislinetofilemycreation">>./myfileCOUNTER=`expr$COUNTER+1`doneCOUNTER赋值周围的引号是反引号。我尝试用$COUNTER替换COUNTER,如下所示:$COUNTER=`expr$COUNTER+1`但这并没有解

linux - Bash 脚本 : difference in minutes between two times

我有两个时间字符串;例如。“09:11”和“17:22”在同一天(格式为hh:mm)。如何计算这两者之间的时差(以分钟为单位)?标准的date库可以做到这一点吗?例子:#!/bin/bashMPHR=60#Minutesperhour.CURRENT=$(date-u-d'2007-09-0117:30:24''+%F%T.%N%Z')TARGET=$(date-u-d'2007-12-2512:30:00''+%F%T.%N%Z')MINUTES=$(($(diff)/$MPHR))给定hh:mm中的小时和分钟,是否有更简单的方法来执行此操作 最佳答案