这是我要加入这两个文件的两个文件(其中一个是.txt,另一个是.tsv)
文件1(.txt文件):有两列
string_1 abc...
string_2 bcd...
string_3 cde...
文件2(.tsv文件):有两列
string_1 X...
string_2 Y...
string_3 Z...
我使用以下linux语句从命令行连接文件:
join -j 2 -o 1.1, 1.2, 1.3, 2.1 file.txt file.tsv
但是我在执行时收到此错误消息:
join: invalid file number in field spec: ‘’
答案 0 :(得分:0)
这里似乎有几个问题。
首先,您要求使用字段2(class App extends Component {
constructor() {
super();
this.state = {
term: 'write a number',
value: ''
};
}
handleChange = event => {
this.setState({
value: event.target.value
});
};
validate = () => {
this.setState({
term:
parseInt(this.state.value) >= 18
? 'You are old enough!'
: 'You are not old enough!'
});
};
render() {
return (
<div style={{ textAlign: 'center' }}>
<input
type="text"
onChange={this.handleChange}
value={this.state.value}
/>
<br />
<p>Result</p>
<br />
<p>{this.state.term}</p>
<button type="submit" onClick={this.validate}>
Submit
</button>
</div>
);
}
}
)进行联接以加入文件,但是从您的输入数据来看,好像您实际上是想在字段1上联接。如果我使用示例输入并运行:
class Attendance(BaseModel):
stu = models.ForeignKey(Students, verbose_name=_("Student"))
我没有任何输出,因为没有可连接的行。将其与运行的输出进行比较:
-j 2
这将导致:
join -j 2 file1.txt file2.txt
接下来,您对join file1.txt file2.txt
的论点看起来是错误的。 string_1 abc... X...
string_2 bcd... Y...
string_3 cde... Z...
选项需要一个不带空格的参数,例如:
-o
如果使用它,我们将得到:
-o
但是该参数 still 看起来是错误的,因为仅输入文件
有两列,而您尝试引用的是第三列
第一个文件(-o 1.1,1.2,1.3,2,1
)。由于字段1是
两个输入,将列$ join -o '1.1,1.2,1.3,2.1' file1.txt file2.txt
string_1 abc... string_1
string_2 bcd... string_2
string_3 cde... string_3
包含在
输出(因为它将与1.3
相同)。这使我们:
2.1
仅通过运行不带参数的1.1
就能得到什么。