Bash Tips, Tricks – Trong bài viết này mình xin chia sẻ một vài mẹo và thủ thuật sử dụng các lệnh bash mà mình thường xuyên sử dụng.
Toán tử –
Nếu bạn thường xuyên chuyển đổi qua lại giữa hai thư mục, bạn có thể sử dụng cd – để thay đổi về thư mục cuối cùng mà bạn đã ở như ví dụ sau:
[shell]
~ $ cd directory1
~/directory1 $ cd directory2
~/directory2 $ cd –
~/directory1 $
[/shell]
Điều này cũng tương tự với git khi bạn chuyển đổi giữa các nhánh (branch)
[shell]
~/my-project(main)$ git checkout feature-branch
~/my-project(feature-branch)$ git checkout –
~/my-project(main)$
[/shell]
Toán tử !!
Trường hợp này cũng xảy ra rất nhiều.
Khi bạn sử dụng một số câu lệnh và bị “Từ chối quyền” (“Permission denied“) nên bạn phải gõ lại lệnh và sử dụng sudo.
Dấu !! là toán tử lặp lại lệnh cuối cùng bạn đã sử dụng. Ví dụ như sau:
[shell]
$ some-dangerous-script.sh
=> Error: Permission Denied
$ sudo !!
=> Enter password for some-dangerous-script.sh:
[/shell]
Toán tử {}
Nếu bạn cần chạy một loạt các câu lệnh khá giống nhau chỉ khác nhau một vài ký tự (chẳng hạn bạn muốn tạo các file khác nhau một chút về tên file) bạn có thể dùng các ký tự đó giữa hai dấu ngoặc nhọn và lệnh này sẽ chạy một lần. Ví dụ:
[shell]
$ touch file-{1,2,3}.md
$ ls
=> file-1.md file-2.md file-3.md
[/shell]
Bạn cũng có thể làm điều tương tự nhưng trong một khoảng.
[shell]
$ touch file-{1..3}.md
$ ls
=> file-1.md file-2.md file-3.md
[/shell]
Tìm kiếm sử dụng Ctrl+R
Bạn có thể gõ Ctrl + R (Cmd + R trên máy mac), sau đó bạn nhập vài ký tự trong câu lệnh bạn cần sử dụng, nó sẽ hiển thị các lệnh bạn đã sử dụng trong lịch sử dùng bash.
Aliases
Aliases là một các hữu hiệu và tiết kiệm thời gian cũng như công sức gõ bàn phím của bạn. Nếu có một vài câu lệnh bạn sử dụng nó thường xuyên và nó quá dài dòng thì việc tạo ra một aliases sẽ rất là hữu ích.
Đầu tiên bạn mở file ~/.bash_aliases hoặc tạo file nếu chưa tồn tại file này và thêm vào câu aliases của bạn. Ví dụ:
[shell]
alias plz=”sudo “
alias yeet=”rm -rf”
[/shell]
Sau khi đã thêm câu lệnh aliases mới xong bạn cần khởi động lại terminal và sử dụng nó.
Xem thêm: