Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.

Announcement

Collapse
No announcement yet.

6 thủ thuật sử dụng lệnh trong linux

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 6 thủ thuật sử dụng lệnh trong linux

    Các lệnh Linux cung cung cấp tính linh hoạt khá cao. Tôi sẽ trình bày chi tiết một số cách để làm cho chúng thuận tiện hơn khi sử dụng bằng cách sử dụng một số thủ thuật thông minh.

    Sử dụng tab để hoàn thành file-name
    Bạn có thể tránh việc nhập đầy đủ tên file bằng cách nhập phần đầu của tên file và nhấn phím tab. Nếu chuỗi chỉ xác định duy nhất một file, thực hiện điều này sẽ hoàn thành tên file. Nếu vẫn không được, bạn có thể nhập thêm một ký tự khác có trong tên và nhấn lại tab. Ngoài ra, bạn cũng có thể nhận được danh sách tất cả các file bắt đầu bằng một chuỗi cụ thể bằng cách nhập một vài chữ và sau đó nhấn phím tab 2 lần. Trong ví dụ này, chúng tôi thực hiện cả hai trường hợp:
    $ ls di<tab><tab>
    diff-commands dig.1 directory
    dig.2 dimensions disk-usage-commands
    $ cd dir<tab>
    $pwd
    directory

    Tái sử dụng các lệnh và thay đổi chúng
    Việc phát hành lại các lệnh vừa gõ rất dễ dàng trong bash. Để chạy lại lệnh trước đó, tất cả những gì bạn phải làm là nhập !! trên command line. Bạn cũng có thể phát hành lại một lệnh với các thay đổi. Nếu bạn chạy câu lệnh đầu tiên được hiển thị bên dưới bên dưới thì cũng thấy rằng sshd không chạy, bạn có thể đưa ra lệnh thứ hai để bắt đầu nó. Nó chỉ đơn giản là thay thế “stasus” bằng “start”.
    $ sudo systemctl status sshd
    !!:s/status/start/

    Sử dụng lại các đối số lệnh
    Bạn cũng có thể tái sử dụng các đối số được cung cấp cho lệnh trước đó thay vì phải nhập chúng lại, bằng cách sử dụng chuỗi !* như được hiển thị trong ví dụ sau:
    $ mkdir dir1 dir2 dir3
    $ chmod 770 !*
    chmod 770 dir1 dir2 dir3
    Lưu ý rằng lệnh được hiển thị đầy đủ sau khi bạn nhập lệnh bằng “!*”.
    Hãy nhớ rằng “tất cả đối số” thực sự có nghĩa là “tất cả đối số”. Nếu như sau khi nhập các lệnh hiển thị ở trên, sau đó bạn muốn liệt kê các thư mục vừa tạo bằng thủ thuật !*, bạn sẽ gặp phải một vấn đề nho nhỏ.
    $ ls -ld !*
    ls -ld 770 dir1 dir2 dir3
    ls: cannot access '770' : No such file or directory <===oops!
    drwxrwx---. 2 shs shs 4096 Jun 6 2018 dir1
    drwxrwx---. 2 shs shs 4096 Jun 6 2018 dir2
    drwxrwx---. 2 shs shs 4096 May 11 09:20 dir3

    Xem các lệnh đã nhập vào gần đây
    Lệnh history giúp bạn dễ dàng xem lại các lệnh đã nhập trước đó, nhưng thường được hiển thị 1000 (cụ thể là tất cả) lệnh có trong bộ đệm lịch sử của bạn. Nếu bạn chỉ muốn xem các lệnh đã nhập gần đây, cách dễ dàng nhất đó là cung cấp số lượng lệnh cụ thể mà bạn muốn xem để làm đối số cho lệnh history. Danh sách sau đây hiển thị năm lệnh gần nhất đã được nhập.
    $ history 5
    1162 11/05/21 13:10:54 shopt | wc -l
    1163 11/05/21 13:19:42 sudo systemctl status
    1164 11/05/21 13:20:01 sudo systemctl status sshd
    1165 11/05/21 13:23:37 man history
    1166 11/05/21 13:23:50 history 5
    Bạn cũng có thể sử dụng một lệnh khác như là “history | tail -5”, nhưng lệnh vừa được hiển thị ở trên thì dễ dàng hơn và không yêu cầu gửi 1000 dòng của output đến lệnh tail.

    Tìm kiếm thông qua lịch sử cho các lệnh cụ thể và chạy lại chúng
    Để xem lại các lệnh được được sử dụng gần đây nhất( lệnh đầu tiên gần nhất) để mà có thể chạy lại một số lệnh, hãy nhập ^r (giữ phím ctrl và nhấn “r”). Sau đó nhập một phần của lệnh.Nếu như chưa phải lệnh mong muốn, tiếp tục nhấn ^r cho đến khi thấy được lệnh mà bạn muốn sử dụng lại và sau đó return nó.
    (reverse-i-search)`opt' : shopt | wc - l
    $ shopt | wc - l
    53
    Kết quả hiển thị cho chúng ta biết rằng lệnh shopt có 53 cài đặt.

    Tạo ra file backups siêu dễ dàng
    Một cách rất thuận tiện để back up một file là sử dụng một lệnh như sau và thêm phần đuôi “.backup” vào file backup:
    $ cp mylife{,.backup}
    Kỹ thuật tương tự cũng hoạt động đối với lệnh mv khi bạn muốn đổi tên file.
    $ mv mylife{,.backup}
    Nếu bạn muốn sao lưu một loạt các file, bạn có thể tiết kiệm một chút thời gian và rắc rối bằng cách sử dụng một tập lệnh như sau:
    #!/bin/bash
    for file in $*
    do
    cp $file{,.backup}
    ls -l $file.backup
    done
    Tập lệnh sau đây sẽ lấy danh sách các file bạn cung cấp làm đối số và copy từng file vào form *.backup của nó
    $ backup thisfile thatfile otherfile
    -rw-r--r--. 1 shs shs 1234 May 11 13:37 thisfile.backup
    -rw-r--r--. 1 shs shs 2012 May 11 13:37 thatfile.backup
    -rw-r--r--. 1 shs shs 876 May 11 13:37 otherfile.backup
    Tùy thuộc vào tên file của các file bạn đang sao lưu, bạn cũng có thể sử dụng wild card( kí tự đại diện). Chẳng hạn như:
    $ backup project*
    -rwxrwxr-x. 1 shs shs 16800 Jan 5 18:10 project.log
    -rwxrwxr-x. 1 shs shs 16840 Jan 5 18:44 project.plan
    -rw-rw-r--. 1 shs shs 324 Jan 5 17:51 project.staff
    Trên đây là một số câu lệnh cơ bản, để giúp chúng ta có thể sử dụng dòng lệnh Linux một cách nhanh chóng và hiệu quả.
Working...
X