我尝试使用bash
在第二个_
之后提取并将其存储在变量pref
中。我使用的是loop
,因此以下内容并不完全准确,但文件结构/格式为。
我可以使用_
_`在第一个pref=${bname%%_*}, but can't seem to change it to the second
之前提取evertything。谢谢你:)。
从
中提取的文件00-0000_Last-First_base_counts_FBN1.txt
所需的输出
00-0000_Last-First
的bash
pref=${bname%%_}; pref=${bname%%_*.txt}
答案 0 :(得分:3)
将$.ajax({
type: "POST",
url: "https://vq3rsgkd94.execute-api.us-east-1.amazonaws.com/deploy",
data: JSON.stringify({
"stage": "search",
"fields": ["first_name", "last_name", "graduation_year"],
"query": {
"first_name": "Bob"
}
}),
success: function(response) {
response = JSON.parse(response);
console.log(response);
}
});
与cut
一起作为分隔符获取第1和第2个字段:
_
存储在变量中:
s='00-0000_Last-First_base_counts_FBN1.txt'
cut -d_ -f1-2 <<< "$s"
00-0000_Last-First
答案 1 :(得分:1)
$ sed -r 's/([^_]+_[^_]*).*/\1/' <<<"00-0000_Last-First_base_counts_FBN1.txt"
00-0000_Last-First
$ sed 's/_[^_]*//2g' <<< "00-0000_Last-First_base_counts_FBN1.txt"
00-0000_Last-First
$ grep -o "^[^_]*_\?[^_]*" <<<"00-0000_Last-First_base_counts_FBN1.txt"
00-0000_Last-First
存储在变量
中somevar="00-0000_Last-First_base_counts_FBN1.txt";
pref=$(sed 's/_[^_]*//2g' <<< "$somevar")
答案 2 :(得分:1)
与sed
,awk
和cut
一样,您可以使用expr
实现此目的:
$ filename=00-0000_Last-First_base_counts_FBN1.txt
$ echo $(expr match "$filename" '^\([^_]*_[^_]*\)')
00-0000_Last-First
这是在正则表达式的\(
和\)
中回显捕获组。