Kopiowanie plików, w odniesieniu do komputerów, to proces tworzenia dokładnego duplikatu informacji zawartych w pliku komputerowym. W zależności od używanego systemu operacyjnego lub oprogramowania skopiowany plik może również zawierać identyczne metadane, takie jak data utworzenia, chociaż informacje te czasami nie są duplikowane, aby odróżnić kopię od oryginału pod pewnymi względami. Prawie wszystkie systemy operacyjne obsługują jakąś formę kopiowania plików, a niektóre systemy zawierają mechanizmy umożliwiające kopiowanie plików z dowolnej lokalizacji, nawet przez sieć. Podczas kopiowania plików mogą wystąpić pewne komplikacje, w tym kolizja nazw, w której dwa pliki mają tę samą nazwę, oraz awaria kopiowania, w której żaden plik nie jest kopiowany, czasami z powodu ograniczeń bezpieczeństwa, a innym razem z powodu czynników sprzętowych, takich jak brak wolnego miejsca na dysku.
Istnieją dwa główne sposoby kopiowania plików przez użytkownika. Pierwszym z nich jest zainicjowanie polecenia kopiowania z interfejsu wiersza poleceń. Zwykle polega to na wpisaniu polecenia, po którym następuje nazwa pliku źródłowego, a następnie nazwa i lokalizacja pliku docelowego. Alternatywnie, kopiowanie plików częściej odbywa się za pomocą graficznego interfejsu użytkownika (GUI), który umożliwia użytkownikom interakcję z plikami i oglądanie ich w bardziej naturalny, graficzny sposób. Podczas używania GUI do kopiowania plików, plik często jest reprezentowany przez ikonę na ekranie, którą można przeciągnąć myszą i upuścić w nowe miejsce.
Chociaż systemy operacyjne natywnie obsługują kopiowanie plików, czasami do pomocy w zarządzaniu tym procesem używane są oddzielne aplikacje. Jest to szczególnie ważne w przypadkach, w których należy zduplikować dużą liczbę plików, co może zająć zasoby systemowe i uniemożliwić korzystanie z komputera do momentu skopiowania wszystkich plików. W takich przypadkach niektóre programy są zaprojektowane do działania w tle z niskim priorytetem lub mają specjalne wbudowane funkcje, takie jak przyspieszone kopiowanie lub funkcja pauzy.
Z perspektywy programowania kopiowanie plików może być dość łatwym procesem. Plik źródłowy jest otwierany i tworzony jest pusty plik docelowy. Każdy bajt pliku źródłowego jest wczytywany do programu, a następnie zapisywany w pliku docelowym. Nowy plik będzie miał dokładną zawartość pliku źródłowego, ale może zawierać inne metadane. Najczęściej oznacza to, że data utworzenia pliku będzie zgodna z datą skopiowania pliku i może różnić się od daty faktycznego utworzenia pliku źródłowego.