草庐IT

BASH_SOURCE

全部标签

linux - 在 BASH 中截断输出

如何在BASH中截断输出?例如,如果我“dufile.name”我如何只得到数值而不是其他?后期补充:所有解决方案都完美无缺。我选择接受最有启发性的“剪切”答案,因为我更喜欢其他人应该能够阅读的bash文件中最简单的方法。 最佳答案 如果你知道分隔符是什么,那么cut就是你的frienddu|cut-f1剪切默认为制表符分隔符,因此在这种情况下您选择第一个字段。您可以更改分隔符:cut-d''将使用空格作为分隔符。(来自Tomalak)您还可以选择单个字符位置或范围:ls|cut-c1-2

linux - 在 BASH 中截断输出

如何在BASH中截断输出?例如,如果我“dufile.name”我如何只得到数值而不是其他?后期补充:所有解决方案都完美无缺。我选择接受最有启发性的“剪切”答案,因为我更喜欢其他人应该能够阅读的bash文件中最简单的方法。 最佳答案 如果你知道分隔符是什么,那么cut就是你的frienddu|cut-f1剪切默认为制表符分隔符,因此在这种情况下您选择第一个字段。您可以更改分隔符:cut-d''将使用空格作为分隔符。(来自Tomalak)您还可以选择单个字符位置或范围:ls|cut-c1-2

linux - bash:从频率表中获取百分比

我制作了一个小的bash脚本,以获取文件特定列中项目的频率。输出会是这样的A30B25C20D15E10我在脚本中使用的命令是这样的cut-f$1$2|sort|uniq-c|sort-r-k1,1-n|awk'{printf"%-20s%-15d\n",$2,$1}'我如何修改它以显示每个案例的相对百分比。所以它就像A3030%B2525%C2020%D1515%E1010% 最佳答案 试试这个(把排序移到最后:cut-f$1$2|sort|uniq-c|awk'{array[$2]=$1;sum+=$1}END{for(iina

linux - bash:从频率表中获取百分比

我制作了一个小的bash脚本,以获取文件特定列中项目的频率。输出会是这样的A30B25C20D15E10我在脚本中使用的命令是这样的cut-f$1$2|sort|uniq-c|sort-r-k1,1-n|awk'{printf"%-20s%-15d\n",$2,$1}'我如何修改它以显示每个案例的相对百分比。所以它就像A3030%B2525%C2020%D1515%E1010% 最佳答案 试试这个(把排序移到最后:cut-f$1$2|sort|uniq-c|awk'{array[$2]=$1;sum+=$1}END{for(iina

linux - bash 脚本中的 Standard_in 错误

我有两个几乎相同的bash脚本。一个有效,一个无效,我不知道发生了什么。以下是脚本:这个很好用:#!/bin/bashCURDIR=$HOME/Documents/Development/road/EarthmovingTOL=0.05echo-e"\nRunningUnitTests"echo-e"------------------\n"forinfilein$CURDIR/utest/*.csvdofile=$(basename$infile.csv)echo-n"Test$file"value=`$CURDIR/Release/earthmove-f$infile`res=`c

linux - bash 脚本中的 Standard_in 错误

我有两个几乎相同的bash脚本。一个有效,一个无效,我不知道发生了什么。以下是脚本:这个很好用:#!/bin/bashCURDIR=$HOME/Documents/Development/road/EarthmovingTOL=0.05echo-e"\nRunningUnitTests"echo-e"------------------\n"forinfilein$CURDIR/utest/*.csvdofile=$(basename$infile.csv)echo-n"Test$file"value=`$CURDIR/Release/earthmove-f$infile`res=`c

linux - 这是 bash 中的错误吗?(向上箭头)

众所周知,按向上箭头键可以显示历史命令,但我发现以空格开头的命令不会显示在“向上箭头”的历史记录中:$ls$(按向上箭头键)bash将显示:$ls但是:$ps$ls(注意这个命令以空格开头)现在我按向上箭头键,它会显示'ps'而不是'ls':$ps这是bash中的错误还是特定功能?:) 最佳答案 来自bash(1):HISTCONTROLAcolon-separatedlistofvaluescontrollinghowcommandsaresavedonthehistorylist.Ifthelistofvaluesinclude

linux - 这是 bash 中的错误吗?(向上箭头)

众所周知,按向上箭头键可以显示历史命令,但我发现以空格开头的命令不会显示在“向上箭头”的历史记录中:$ls$(按向上箭头键)bash将显示:$ls但是:$ps$ls(注意这个命令以空格开头)现在我按向上箭头键,它会显示'ps'而不是'ls':$ps这是bash中的错误还是特定功能?:) 最佳答案 来自bash(1):HISTCONTROLAcolon-separatedlistofvaluescontrollinghowcommandsaresavedonthehistorylist.Ifthelistofvaluesinclude

linux - 如何让 bash 将 undefined variable 视为错误?

请注意:本站有很多关于如何测试单个shell变量的问题。这个问题是关于测试任何undefinedvariable的脚本。您可以在bash中使用undefinedvariable而不会在执行时看到任何错误:#!/bin/bashecho${UNDEF_FILE}ls-l${UNDEF_FILE}exit0我发现这很容易出错。如果我想在大型脚本中更改变量的名称,或删除该变量,所有以前的陈旧引用都会导致脚本出错。有时这对调试来说并不明显,或者您发现时为时已晚。为什么允许这样做?有什么方法可以标记undefinedvariable吗? 最佳答案

linux - 如何让 bash 将 undefined variable 视为错误?

请注意:本站有很多关于如何测试单个shell变量的问题。这个问题是关于测试任何undefinedvariable的脚本。您可以在bash中使用undefinedvariable而不会在执行时看到任何错误:#!/bin/bashecho${UNDEF_FILE}ls-l${UNDEF_FILE}exit0我发现这很容易出错。如果我想在大型脚本中更改变量的名称,或删除该变量,所有以前的陈旧引用都会导致脚本出错。有时这对调试来说并不明显,或者您发现时为时已晚。为什么允许这样做?有什么方法可以标记undefinedvariable吗? 最佳答案