Để chép một file Linux topic1 txt vào thư mục Linux topic1 ta phải làm lệnh nào sau đây

Để chép một file Linux topic1 txt vào thư mục Linux topic1 ta phải làm lệnh nào sau đây

Bài viết hôm nay Bizfly Cloud sẽ hướng dẫn các bạn cách sử dụng lệnh CP nhằm mục đích sao chép nội dung một file hoặc thư mục trên Linux. Đây là kiến thức cơ bản về sử dụng lệnh trên Linux bạn cần phải hiểu rõ. Hãy cùng tìm hiểu nhé!

1. Lệnh CP trên Linux là gì?

Chương trình lệnh CP trên hệ điều hành Linux được sử dụng để copy một tệp hoặc một thư mục từ vị trí này đến vị trí khác. Đây gần như là chương trình lệnh cực kì cơ bản của các dòng Linux phân phối khác.

>> Tìm hiểu thêm : Hướng dẫn hiển thị các File và thư mục bị ẩn trên Linux

Cấu trúc lệnh coppy trong linux như sau: 

cp [option] [option2] source1 source2 destination

2. Các ví dụ về sử dụng lệnh CP trên Linux

(1) Copy file A thành B

Ở ví dụ này, bạn chỉ đơn giản là copy một file A và sao chép A tạo thành file B giống y hệt.

# touch A.txt

# cp A.txt B.txt

# ls

0 -rw-r--r-- 1 root root 0 Oct 15 17:47 A.txt

0 -rw-r--r-- 1 root root 0 Oct 15 17:47 B.txt

(2) Copy nhiều file cùng lúc vào thư mục

Ta có thể copy nhiều file cùng một lúc vào trong một thư mục đích đến trên Linux. Bạn chỉ cần lưu ý rằng, tham số cuối cùng của dòng lệnh phải là một thư mục thực sự. Còn trước đó, bạn có thể để rất nhiều tên file khác nhau.

– Tạo nhiều file text rỗng.

# touch ./{A,B,C}.txt

# touch ./{D,E}.exe

# ll

total 8.0K

4.0K drwxr-xr-x 2 root root 4.0K Oct 15 17:50 .

4.0K drwxr-xr-x. 15 root root 4.0K Oct 15 17:49 ..

0 -rw-r--r-- 1 root root 0 Oct 15 17:50 A.txt

0 -rw-r--r-- 1 root root 0 Oct 15 17:50 B.txt

0 -rw-r--r-- 1 root root 0 Oct 15 17:50 C.txt

0 -rw-r--r-- 1 root root 0 Oct 15 17:50 D.exe

0 -rw-r--r-- 1 root root 0 Oct 15 17:50 E.exe

– Tạo một thư mục rỗng trên Linux rồi copy file vào thư mục rỗng để test.

# mkdir -p ./lab/

# cp A.txt B.txt C.txt D.exe E.exe ./lab/

(3) Sử dụng option ‘-v’ hiển thị quá trình copy

Với option -v, bạn sẽ có thêm một sự lựa chọn để hiển thị quá trình copy file hoặc thư mục.

# cp -v A.txt B.txt C.txt D.txt E.txt lab/

`A.txt' -> `lab/A.txt'

`B.txt' -> `lab/B.txt'

`C.txt' -> `lab/C.txt'

`D.txt' -> `lab/D.txt'

`E.txt' -> `lab/E.txt'

(4) Copy file từ một nguồn khác sang một nguồn đích khác

Bạn cũng có thể sao chép một file nằm ở một thư mục khác sang một thư mục khác trên Linux.

# cp /usr/report/hr_team/report.xlsx /home/sale_team/

(5) Copy file nhưng giữ lại toàn bộ thuộc tính file

Bạn sẽ sử dụng option -p để giữ lại các thuộc tính thông tin của file được copy như sau:

# cp -p ./*.txt ./lab/

Bảy thuộc tính giữ lại, bao gồm:

- Access time

- Modification date

- User ID

- Group ID

- File flags

- File mode

- Access Control Lists

(6) Lệnh copy thư mục trong Linux

Bạn sẽ sử dụng option "-r" hoặc "-a" để thực hiện copy thư mục trên hệ thống.

# cp -av Devops/ /home/john/

`Devops/Files/file.a' -> `/home/john/Devops/Files/file.a'

`Devops/Files/file.b' -> `/home/john/Devops/Files/file.b'

`Devops/Report/file.a' -> `/home/john/Devops/Report/file.a'

`Devops/Report/file.b' -> `/home/john/Devops/Report/file.b'

`Devops/Report/sa_team' -> `/home/john/Devops/Report/sa_team'

`Devops/file.a' -> `/home/john/Devops/file.a'

`Devops/file.b' -> `/home/john/Devops/file.b'

`Devops/latestreport/file.a' -> `/home/john/Devops/latestreport/file.a'

`Devops/latestreport/file.b' -> `/home/john/Devops/latestreport/file.b'

`Devops/latestreport/sales_team' -> `/home/john/Devops/latestreport/sales_team'

Chú thích:

-r: copy toàn bộ thư mục hoặc file cấp con của thư mục được copy.

-a: bao gồm option -r và thực hiện việc duy trì các thuộc tính của file hoặc thư mục như file mode, ownership, timestamps …

(7) Không cho phép lệnh "CP" ghi đè file đang có

Giả sử thư mục đích của bạn đã có file name cùng tên file name bạn đang muốn copy. Thì bạn có thể sử dụng option -n để ép buộc lệnh copy CP không được ghi đè nếu file nguồn và file đích cùng tên. Khi bạn sử dụng option -n sẽ không xuất hiện prompt xác nhận copy, mà là ép lệnh luôn.

# cp -n A.txt ./lab/

(8) Copy file ghi đè không hỏi xác nhận

Bạn sử dụng option -f (force) để ép buộc lệnh CP copy file ghi đè lên file đang tồn tại ở thư mục đích nếu nó cùng tên file nguồn copy.

# cp -f A.txt /tmp/

(9) Trợ giúp thông tin về lệnh copy

Bạn có thể sử dụng lệnh manual man để xem thông tin hỗ trợ về lệnh CP trên hệ thống Linux. Hoặc xem manual online tại link sau: https://linux.die.net/man/1/cp

# man cp

Vậy là đã kết thúc hướng dẫn về chương trình lệnh CP trên Linux, bạn hãy áp dụng thuần thục lệnh trên bằng cách sử dụng và thực hành thật nhiều. Chúc các bạn thành công!

Theo Bizfly Cloud chia sẻ

>> Có thể bạn quan tâm: Hướng dẫn mở và khóa đăng nhập mật khẩu của tài khoản user trên Linux

Để chép một file Linux topic1 txt vào thư mục Linux topic1 ta phải làm lệnh nào sau đây

Lời mở đầu

Text - một cái tên không còn xa lạ gì trong giới lập trình viên. Text mang nghĩa là bản văn, một tập hợp của nhiều câu, mỗi câu lại gồm nhiều từ, mỗi từ gồm nhiều ký tự. Tùy theo từng ngôn ngữ mà các ký tự được thể hiện khác nhau. Việc xử lý những dữ liệu dạng text này luôn có trong hầu hết các ngôn ngữ lập trình, và nổi lên nhất là trong các ngôn ngữ thông dịch như Perl, Python, Ruby ....

Tuy nhiên, trong một hệ thống Linux, để đơn giản hóa quá trình xử lý dữ liệu văn bản, các nhà phát triển đã tạo ra các công cụ cơ bản để xử lý dữ liệu text trên tiêu chí một chương trình chỉ làm một việc nhưng sẽ làm việc đó một cách tốt nhất có thể. Và trên hết là các chương trình này đều không yêu cầu kỹ năng lập trình nhưng vẫn có thể dễ dàng sử dụng được. Sau đây mình xin phép được trình bày về một số chương trình(lệnh) giúp cho việc xử lý dữ liệu văn bản được thuận tiện hơn trong hệ thống Linux.

Lệnh "cat"

Là một trong những lệnh cơ bản nhất của một hệ thống Linux. Lệnh này có thể dùng để tạo, chèn, hiển thị và ghép nội dung của file.

  • Để tạo file dùng cú pháp như sau:

$ cat > simple.txt << "EOF"

This is the first line

This is the second line

EOF

EOF là ký tự được khai báo và dùng để kết thúc việc nhập liệu, có thể sử dụng một chuỗi bất kỳ thay thế. Trong trường hợp file simple không tồn tại thì một file mới sẽ được tạo với nội dung nhập vào như trên. Nếu không thì file simple.txt sẽ bị ghi đè với nội dung mới. Để tránh việc ghi đè dữ liệu có thể dùng cat >> thay cho cat > để dữ liệu tự động được chèn vào cuối file.

$ cat >> simple.txt << "EOF"

This is the third line

EOF

  • Nếu dùng cú pháp cat filename thì nội dung file filename sẽ được hiển thị.

$ cat simple.txt

This is the first line

This is the second line

This is the third line

  • Ngoài ra có thể dùng phối hợp việc hiển thị và chèn để ghép nội dung của 1 file vào cuối 1 file khác. VD:

$ cat simple1.txt >> simple2.txt

Lệnh "wc"

  • wc có nghĩa là wordcount, lệnh này đơn giản chỉ dùng để thống kê lượng dữ liệu có trong file
  • Cú pháp đơn giản nhất là wc filename VD:

wc simple.txt

3 15 70 simple.txt

Giá trị thứ nhất là số dòng (line), giá trị thứ 2 là số từ (word), giá trị thứ 3 là số ký tự (character) và cuối cùng là tên file.

Lệnh "grep"

  • Dùng để hiện thị những dòng có một phần nội dung nào đó VD:

$ grep "line" simple.txt

This is the first line

This is the second line

This is the third line

  • Hoặc có thể dùng tùy chọn -c để đếm số lần xuất hiện thay vì in hết ra VD:

$ grep -c "line" simple.txt

3

  • Một số tùy chọn khác -i không phân biệt hoa thường -l chỉ hiển thị tên file chứa nội dung cần tìm -n kèm theo số thứ tự của dòng xuất hiện
  • Hai lệnh head và tail có cách sử dụng tương tự nhau, đều là lấy ra một phần bản văn của file. Chỉ khác là lệnh head lấy phần bản văn ở đầu file còn tail lấy phần cuối bản văn. VD: head -n4 filename sẽ lấy ra 4 dòng đầu tiên của file filename tail -n8 filename sẽ lấy ra 8 dòng cuối của file filename
  • Ngoài ra có thể sử dụng -c thay cho -n để lấy dữ liệu tính theo ký tự thay vì tính theo dòng.
  • Dùng để sắp xếp các dòng dữ liệu bản văn trong file VD:

$ sort simple.txt

This is the first line

This is the second line

This is the third line

  • Ngoài ra có thể dùng thêm các tùy chọn sau -u bỏ qua các giá trị trùng lặp -r sắp xếp theo thứ tự giảm dần (mặc định sẽ là tăng dần) -f không phân biệt hoa thường

Trên đây chỉ là một số lệnh cơ bản nhất dùng để thao tác với dữ liệu text trên Linux. Vẫn còn rất nhiều lệnh hữu ích khác như cut, sed, awk ... nhưng do khả năng của mình có hạn nên mình sẽ tìm hiểu và bổ sung các lệnh này trong các bài viết tiếp theo. Xin cảm ơn mọi người đã theo dõi bài viết.

References