Unisci parti di due file insieme in Bash


0

Spero di attingere alla conoscenza di coloro che sanno molto di più sullo scripting di me. Ho due file, F1 e F2, dove F2 si trova in una sottodirectory di F1. Ho bisogno di produrre un nuovo file, F3, che ha l'intero contenuto di F1, seguito dal contenuto di F2 ma escludendo la prima riga di F2 (il contenuto ottenuto facendo 'tail +2 subdir / F2'). I miei tentativi finora sono stati infruttuosi, quindi qualsiasi aiuto sarebbe stato accolto con gratitudine.

Risposte:


1
cat "F1" > "F3"
tail +2 "subdir/F2" >> "F3"

Questo scriverà F1 in F3e quindi aggiungere il tail produzione. È chiamato reindirizzamento dell'output .


C'è qualche ragione per non usarlo cp F1 F3 per il primo passo?
Dennis Williamson

@DennisWilliamson Non sono sicuro di quali attributi di file cp conserva per impostazione predefinita. Ma hai ragione, cp "F1" "F3" funzionerebbe anche
Daniel Beck

2

È inoltre possibile utilizzare il raggruppamento dei comandi per ottenere un unico supporto:

{ cat F1; sed 1d dir/F2; } > F3
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.