hocvietcode.com
  • Trang chủ
  • Học lập trình
    • Lập trình C/C++
    • Lập trình HTML
    • Lập trình Javascript
      • Javascript cơ bản
      • ReactJS framework
      • AngularJS framework
      • Typescript cơ bản
      • Angular
    • Lập trình Mobile
      • Lập Trình Dart Cơ Bản
        • Dart Flutter Framework
    • Cơ sở dữ liệu
      • MySQL – MariaDB
      • Micrsoft SQL Server
      • Extensible Markup Language (XML)
      • JSON
    • Lập trình PHP
      • Lập trình PHP cơ bản
      • Laravel Framework
    • Lập trình Java
      • Java Cơ bản
    • Cấu trúc dữ liệu và giải thuật
    • Lập Trình C# Cơ Bản
    • Machine Learning
  • WORDPRESS
    • WordPress cơ bản
    • WordPress nâng cao
    • Chia sẻ WordPress
  • Kiến thức hệ thống
    • Microsoft Azure
    • Docker
    • Linux
  • Chia sẻ IT
    • Tin học văn phòng
      • Microsoft Word
      • Microsoft Excel
    • Marketing
      • Google Adwords
      • Facebook Ads
      • Kiến thức khác
    • Chia sẻ phần mềm
    • Review công nghệ
    • Công cụ – tiện ích
      • Kiểm tra bàn phím online
      • Kiểm tra webcam online
Đăng nhập
  • Đăng nhập / Đăng ký

Please enter key search to display results.

Home
  • centos 7
  • Linux
  • Ubuntu
Làm việc với tệp tin (file) trong Linux

Làm việc với tệp tin (file) trong Linux

  • 05-09-2024
  • Toanngo92
  • 0 Comments

Mục lục

  • Tổ chức file
      • Các kiểu file
      • Tổ chức của các file
  • Di chuyển giữa các thư mục
  • Các thao tác cơ bản với thư mục
      • Xem nội dung thư mục
      • Tạo thư mục
      • Xóa thư mục
    • Các thao tác cơ bản với file thường
      • Nhận biết một file thường
      • Xem nội dung một file thường ASCII
      • Tạo một file thường ASCII
    • Xoá một file thường
  • Sao chép và Di chuyển Tệp tin và Thư mục
  • Kiểm tra Loại Tệp

Tổ chức file

Các kiểu file

UNIX có 3 kiểu file:

  1. File bình thường (ordinary file): Là một tập hợp thông tin (ASCII text hoặc binary).
  2. File thư mục (directory file): Chứa danh sách các file hoặc các thư mục con.
  3. File đặc biệt (special file): Là các file liên quan tới các thiết bị ngoại vi cứng và/hoặc cơ chế truyền tin.

Thí dụ:

  • Bàn phím là một file đầu vào (input file).
  • Màn hình là một file đầu ra (output file).
  • Máy in là một file đầu ra.

Tổ chức của các file

Các file của UNIX được tổ chức theo dạng cây (tree). Thư mục gốc (root) của cây được biểu diễn bằng ký tự /.

Cấu trúc cây cơ sở của hệ UNIX được bố trí như sau:

Cấu trúc cây cơ sở của UNIX

Di chuyển giữa các thư mục

Để di chuyển giữa các thư mục trong cây của UNIX, ta dùng 2 lệnh sau đây:

  • cd: chuyển đến thư mục cần đến (change directory).
  • pwd: hiển thị tên thư mục đang làm việc (print working directory).

Ví dụ: Nếu user1 có thư mục tiếp nhận là /users/user1, sau khi gõ lệnh

 $ pwd

Output:

 /users/user1

Để đi chuyển giữa các thư mục, ta dùng lệnh cd với tên thư mục cần chuyển đến:

$ cd /usr/bin
$ pwd
/usr/bin

Để về thư mục tiếp nhận khi ta đang ở bất kỳ đâu, gõ:

$ cd
$ pwd
/users/user1

Các thao tác cơ bản với thư mục

Xem nội dung thư mục

  • Xem nội dung (danh sách tệp) thư mục hiện đang làm việc:
  $ ls
  • Xem nội dung thư mục xác định chẳng hạn thư mục /bin:
  $ ls /bin
  • Xem thêm thông tin của các file trong thư mục:
  $ ls -l
  • Xem tên các file trong thư mục theo cột:
  $ ls -C

Khi dùng lệnh ls -l ta có thể phân biệt các kiểu file bằng cách xem ký tự đầu dòng hiển thị:

  • d : file thư mục.
  • - : file bình thường.
  • c hoặc b : file đặc biệt.

Tạo thư mục

Để tạo một thư mục mới, ta dùng lệnh mkdir (make directory):

$ mkdir mydirectory
$ cd mydirectory

Lệnh mkdir tạo một thư mục với 2 đầu vào (entry):

  • bản thân thư mục có tên đã cho.
  • thư mục liên hệ với thư mục được tạo ở trên.

Xóa thư mục

Để xóa một thư mục, ta dùng lệnh rmdir (remove directory):

$ rmdir index

Nếu muốn xóa thư mục không rỗng, phải dùng lệnh rm với tùy chọn -r:

$rm -ri thumuc

Trong đó tùy chọn -ri trong lệnh rm là sự kết hợp của hai tùy chọn -r và -i:

  1. -r (recursive): Tùy chọn này yêu cầu lệnh rm xóa thư mục và tất cả các tệp hoặc thư mục con bên trong nó. Nó được sử dụng khi bạn muốn xóa toàn bộ một thư mục bao gồm cả những gì chứa bên trong.
  2. -i (interactive): Tùy chọn này yêu cầu lệnh rm hỏi xác nhận trước khi xóa từng tệp hoặc thư mục. Khi dùng tùy chọn này, hệ thống sẽ yêu cầu bạn xác nhận (“yes” hoặc “no”) trước khi xóa từng mục trong thư mục.

Khi kết hợp -ri, lệnh rm -ri thumuc sẽ thực hiện việc xóa thư mục thumuc và tất cả các nội dung bên trong nó, nhưng sẽ hỏi bạn xác nhận trước khi xóa từng tệp hoặc thư mục con. Điều này giúp tránh việc vô tình xóa các tệp hoặc thư mục mà bạn không thực sự muốn xóa.

Các thao tác cơ bản với file thường

Nhận biết một file thường

Lệnh file phân tích nội dung của một file và hiển thị tính chất của thông tin chứa trong file:

$ file /etc/passwd
/etc/passwd: ascii text

Xem nội dung một file thường ASCII

Có thể dùng một trong các lệnh sau:

  • cat dùng để xem nội dung các file nhỏ.
  • pg hoặc more xem nội dung các file lớn theo trang.
$cat file_name
$pg file_name
$more file_name

Tạo một file thường ASCII

Tại Shell của UNIX, ta có thể dễ dàng tạo một file thường ASCII text bằng cách dùng lệnh cat:

$cat > text_file
abcdef
123456
<Ctrl + D>
$

Ký tự ‘>’ là ký tự đổi hướng (redirect operator), thay vì đến đầu ra chuẩn (standard output), đầu ra sẽ đến file được quy định ngay sau ‘>’.

Ở đây các ký tự gõ vào được ghi vào file ‘text_file’.

Lệnh cat, nếu không có đối số (argument), sẽ coi bàn phím là đầu vào chuẩn.

Gõ <Ctrl + D> tại dòng trống cuối cùng kết thúc việc vào số liệu.

Đổi hướng đầu vào đầu ra chuẩn

Cách viết tên file khi tạo file:

Độ dài:

  • Tên file của UNIX sys V dài tối đa 14 ký tự
  • Tên file của BERKELEY, bắt đầu từ version BSD 4.2. có thể dài đến 256 ký tự.

Không có sự hạn chế dùng ký tự nào khi viết tên file, song ta cần chú ý vài điểm sau:

  • Không dùng các ký tự đặc biệt (trừ dấu chấm . hoặc dấu gạch dưới ‘- ’) vì phần lớn các ký tự đó được dùng trong cú pháp của lệnh Shell.
  • Tệp có tên bắt đầu bằng dấu chấm ‘.’ là file ẩn (hidden).
  • Ký tự viết thường khác với viết hoa.

Viết tên file bằng cách dùng các metacharacter (? Và *)

  • ký tự * thay thế một xâu ký tự
  • ký tự “? thay thế một ký tự

Ví dụ:

$ll /bin/c* 
$ll /bin/c?
#ll is alias of $ ls -l

Xoá một file thường

Lệnh: rm

Có thể dùng lệnh rm với các tuỳ chọn sau:

-i có hỏi đáp để khẳng định

-f không có hỏi đáp. Tuỳ chọn này rất nguy hiểm, chỉ những người sử dụng có kinh nghiệm và cẩn thận mới nên dùng.

Ví dụ:

$rm text_file 
$rm -i text_file

Sao chép và Di chuyển Tệp tin và Thư mục

  • Mô tả: Hướng dẫn lệnh cp để sao chép và mv để di chuyển, đổi tên tệp và thư mục.
  • Nội dung:
    • Lệnh cp [nguồn] [đích] để sao chép, với tuỳ chọn -r sao chép cả thư mục con.
    • Lệnh mv để di chuyển và đổi tên tệp hoặc thư mục.
    • Cách sử dụng mv để đổi tên thư mục và ví dụ chi tiết.

Kiểm tra Loại Tệp

  • Mô tả: Hướng dẫn sử dụng lệnh file để xác định loại tệp tin trong hệ thống UNIX.
  • Nội dung:
    • Cú pháp file [tên tệp] để nhận diện loại tệp như ASCII, nhị phân.
    • Ví dụ sử dụng file để kiểm tra loại của nhiều tệp khác nhau.

Cú pháp:

   file [tên_tệp]

Lệnh file giúp xác định loại tệp trong hệ thống, ví dụ như tệp văn bản ASCII, tệp thực thi nhị phân, tệp hình ảnh, v.v.

Ví dụ sử dụng:
Giả sử bạn có các tệp tin sau:

    • document.txt (tệp văn bản)
    • image.png (tệp hình ảnh)
    • script.sh (tệp shell script)
    • binaryfile (tệp thực thi nhị phân) Chạy lệnh file để kiểm tra loại của từng tệp:
       file document.txt

    Kết quả:

       document.txt: ASCII text
       file image.png

    Kết quả:

       image.png: PNG image data, 800 x 600, 8-bit/color RGBA, non-interlaced
       file script.sh

    Kết quả:

       script.sh: Bourne-Again shell script, ASCII text executable
       file binaryfile

    Kết quả:

       binaryfile: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked

    Giải thích:

      • ASCII text: Đây là một tệp văn bản dạng ASCII.
      • PNG image data: Tệp là một hình ảnh định dạng PNG với thông tin về kích thước và độ sâu màu.
      • Bourne-Again shell script, ASCII text executable: Đây là tệp shell script có thể thực thi.
      • ELF 64-bit LSB executable: Đây là tệp thực thi nhị phân dạng ELF dành cho hệ thống 64-bit.

      Lệnh file là công cụ hữu ích để nhận diện loại tệp, đặc biệt khi cần xác minh nội dung của các tệp không rõ định dạng.

      Bài tập

      • Mô tả: Các bài tập thực hành để áp dụng các lệnh đã học trong quản lý tệp và thư mục UNIX.
      • Nội dung:
        • Bài tập kiểm tra thư mục hiện tại (pwd), tạo thư mục (mkdir), xóa thư mục (rm -r).
        • Thực hành sao chép, di chuyển, đổi tên tệp tin.
        • Thực hành với lệnh file để xác định loại tệp.

      Bài viết liên quan:

      Khái niệm Disk Inode và cách xem Inode, sử dụng Inode trong ubuntu
      Giới thiệu về Shell Script và lập trình C cơ bản trong UNIX
      Giới thiệu về bảo mật và phân quyền trong unix/linux
      Hướng dẫn mount (gắn kết) ổ cứng trong ubuntu
      Giới thiệu cấu trúc thư mục và bắt đầu phiên làm việc với Linux
      Hướng dẫn cài đặt thủ công LEMP Stack (Linux,Nginx,MariaDB,PHP) trên Ubuntu
      Giới Thiệu về Hệ Điều Hành Linux
      Fix lỗi initramfs (fsck) khi khởi động ubuntu: BusyBox v1.22.1 (Ubuntu 1:1.30.0-4ubuntu6.4)
      Hướng dẫn sử dụng Rclone backup VPS lên google drive
      Hướng dẫn backup linux server bằng Rsync
      Fix lỗi GDBus Error org freedesktop PolicyKit1 Error Failed trên CentOS 7
      Hướng dẫn mở rộng phân cùng ổ cứng CentOS

      THÊM BÌNH LUẬN Cancel reply

      Dịch vụ thiết kế Wesbite

      NỘI DUNG MỚI CẬP NHẬT

      4. KIỂM THỬ VÀ TRIỂN KHAI HỆ THỐNG

      2. PHÂN TÍCH VÀ ĐẶC TẢ HỆ THỐNG

      3. THIẾT KẾ HỆ THỐNG

      1. TỔNG QUAN KIẾN THỨC THỰC HÀNH TRIỂN KHAI DỰ ÁN CÔNG NGHỆ THÔNG TIN

      Hướng dẫn tự cài đặt n8n comunity trên CyberPanel, trỏ tên miền

      Giới thiệu

      hocvietcode.com là website chia sẻ và cập nhật tin tức công nghệ, chia sẻ kiến thức, kỹ năng. Chúng tôi rất cảm ơn và mong muốn nhận được nhiều phản hồi để có thể phục vụ quý bạn đọc tốt hơn !

      Liên hệ quảng cáo: [email protected]

      Kết nối với HỌC VIẾT CODE

      © hocvietcode.com - Tech888 Co .Ltd since 2019

      Đăng nhập

      Trở thành một phần của cộng đồng của chúng tôi!
      Registration complete. Please check your email.
      Đăng nhập bằng google
      Đăng kýBạn quên mật khẩu?

      Create an account

      Welcome! Register for an account
      The user name or email address is not correct.
      Registration confirmation will be emailed to you.
      Log in Lost your password?

      Reset password

      Recover your password
      Password reset email has been sent.
      The email could not be sent. Possible reason: your host may have disabled the mail function.
      A password will be e-mailed to you.
      Log in Register
      ×