It’s join -t '|' file1 file2 -a1
Options used:
t: Delimiter.
a: Decides the file number from which the unpaired lines have to be printed.
join -t '|' file1 file2 -a2
would do a right outer join.
Sample Run
[aman@aman test]$ cat f1
01|a|jack|d
02|b|ron|c
03|d|tom|e
[aman@aman test]$ cat f2
01|a|nemesis|f
02|b|brave|d
04|d|gorr|h
[aman@aman test]$ join -t '|' f1 f2 -a1
01|a|jack|d|a|nemesis|f
02|b|ron|c|b|brave|d
03|d|tom|e