в командной строке rsync
*.file
обозначает исходный файл (, например. ваш локальный диск)user@path_to_hpc(...):/scratch/your_username/folder...
обозначает пункт назначения. user
имя пользователя path_to_hpc(...)
IP-адрес или имя хоста /scratch/your_username/folder...
пути назначения (напр. /скретч/fi1d18)лучший способ продолжить
cd /where/r/myfile
/where/r/myfile
— локальный путь к вашему диску. , затем
rsync..options.. *.bam user@remote:/scratch/fi1d18
Иди на авк:
awk 'NR==FNR{a[$1]=$NF;next}{split($1,arr,/\./);$NF=a[arr[1]]}1' get_data.txt resultant.txt > tmpfile
mv tmpfile resultant.txt
Выход:
ald900.google.com #N/A US
ald978.vci.google.com #N/A JAPAN
ald9024.google.com #N/A SRI-LANKA
Что делает awk?
awk '
NR==FNR{
a[$1]=$NF #Array `a` stores last fields of get_data.txt using the 1st fields as keys
next
}
{
split($1,arr,/\./) #Split 1st field of resultant.txt on the dots
$NF=a[arr[1]] #Retrieve the corresponding element in a and replace the last field with it
}
1 #Print the resulting line
' get_data.txt resultant.txt
Примечание. :Если вы хотите, чтобы выходной файл был разделен табуляцией, добавьте -v OFS='\t'
к awk(awk -v OFS='\t' '...' get_data.txt resultant.txt > tmpfile
).