小编tha*_*isp的帖子

在bash中提取包含数字的路径的一部分

在 bash 中,给定一个路径,例如:

mypath='my/path/to/version/5e/is/7/here'
Run Code Online (Sandbox Code Playgroud)

我想提取包含数字的第一部分。例如,我想提取:5e

有没有比使用 while 循环遍历各个部分并检查每个部分的数字更好的方法?

while IFS=/ read part
do
   if [[ $part =~ *[0-9]* ]]; then
      echo "$part"
   fi
done <<< "$mypath"
Run Code Online (Sandbox Code Playgroud)

regex bash awk

9
推荐指数
1
解决办法
176
查看次数

我们如何根据unix中的给定日期获得工作日

从给定的日期 %m-%d-%Y格式中我们应该确定它是哪一天。

示例:对于日期09-01-2017输出应该是Friday

unix bash shell datetime unix-timestamp

7
推荐指数
2
解决办法
2万
查看次数

避免 patch 命令询问“要修补的文件:”

我正在尝试修补一个文件。

补丁文件位于要打补丁的文件列表所在的目录中。

当我运行赞扬时

patch < file.patch

它提示我

File to patch:

如何避免这种情况?我应该在补丁文件中添加什么来自动检测它应该修补的文件名

bash diff patch

6
推荐指数
1
解决办法
7455
查看次数

Linux:如何在别名中添加 $ 符号?

好吧,我使用“csh”shell。我有一个sed如下命令将数据从 String1 获取到下一个emptyNewLine。

sed -n '/startString/,/^$/p' myLog.log  # ==> works fine
Run Code Online (Sandbox Code Playgroud)

但是当我在“别名”中使用上述sed命令时,出现以下错误:

<48 sne-70 [sunil_c85see] :/home1/sunil_c85see>alias check "sed -n '/startString/,/^$/p' myLog.log"
**Illegal variable name.**
Run Code Online (Sandbox Code Playgroud)

任何建议如何解决这个问题。

linux shell alias csh sed

4
推荐指数
1
解决办法
1678
查看次数

在 awk 中赋值前的变量评估

在以下 awk 语句中:

awk '$2 > maxrate {maxrate = $2; maxemp = $1} 
     END {print "highest hourly rate:", maxrate, "for", maxemp}' pay.data
Run Code Online (Sandbox Code Playgroud)

在以下数据上运行:

Beth 4.00 0
Dan 3.75 0
Kathy 4.00 10
Mark 5.00 20
Mary 5.50 22
Susie 4.25 18
Run Code Online (Sandbox Code Playgroud)

$2 > maxrate由于它在分配给 之前被评估,它是如何工作的$2

awk

4
推荐指数
1
解决办法
78
查看次数

标签 统计

bash ×3

awk ×2

shell ×2

alias ×1

csh ×1

datetime ×1

diff ×1

linux ×1

patch ×1

regex ×1

sed ×1

unix ×1

unix-timestamp ×1